For reference, here's a PR adding the new gts.
Async iterator usage?
As part of TS 3.7 upgrade: optional chaining, nullish coalescing
http2 now supports ORIGIN frames to enable cross-origin connection reuse, do the GCP servers-side APIs support this optimization?
And for a list of new things, relevant breaking changes or things to watch out for as part of any node 8.x -> 10.x uplift as it relates to googleapis node.js code:
assert.fail only has 1 arg: https://github.com/nodejs/node/commit/70dcacd710assert.ifError only allows undefined and null, previously truthy was allowed: https://github.com/nodejs/node/commit/e65a6e81efassert.rejects and assert.doesNotReject: https://github.com/nodejs/node/commit/599337f43enet now does an explicit close after end, if workarounds were implemented, this will reveal potential race conditions under load: https://github.com/nodejs/node/commit/9b7a6914a7http2 streams fixed the destroy/end bug: https://github.com/nodejs/node/pull/24926stream.pipeline where/if applicable_read calls when using resume and read, this memory bug has been fixed: https://github.com/nodejs/node/pull/26965Are we using matrix builds against 8.x and 10.x at the same time? If so, most of this stuff should've already been noticed.
@zamnuts we have had Node 10 in the build matrix for close to a year I think, and I'd bet over 50% of our users are already on Node 10 :+1:
With regards to improvements, like having optional chaining at our disposal, I think we should use these language features going forward to cleanup our codebases, but a large sweeping refactor shouldn't be part of dropping Node 8 from the testing matrix.
Async iterator usage?
@feywind, @xiaozhenliu-gg5 came up with a design document which should allow us to add async iterators to Node 10, without it being a breaking change, as soon as 8 is dropped.
So, we're going to use async iterators, which I'm very excited about, but we don't need to get this refactor done for dropping Node 8 (I don't believe).
I think we're ready to call this party a wrap :) Firestore is the only one left, and they're working independently to get things sorted out.
Most helpful comment
Async iterator usage?