Not the author of that new code, but the typescript code in lib/nodets is not actually a library implementation, just a suite of tests. The original JS compiler implementation with TypeScript support did not support the nodejs compiler switch, which mean generated thrift code in TypeScript would only work as a thrift client in the browser.
As for why there are now two "libraries" in the lib directory (which are just typescript @types or tests), I believe it's due to the fact that requiring libraries in browsers vs in nodejs is different (ie: it's a pain to include a lot of libraries with many files when in the browser). It's the same reason why there is both a js library and a nodejs library. On 12/30/18, 8:25 AM, "Allen George" <allen.geo...@gmail.com> wrote: Could we ask the committee of the nodets code why the regular ts support wasn’t good enough? ________________________________ From: James E. King III <jk...@apache.org> Sent: Sunday, December 30, 2018 9:59 AM To: dev@thrift.apache.org Subject: lib/nodets and lib/ts It looks like we have two typescript implementations. lib/nodets is new; lib/ts hasn't been updated since early 2016. Do we need both? - Jim