Untangling GraphQL and other Adventures in Nodeland - Issue #51





Subscribe to our newsletter

By subscribing, you agree with Revue’s Terms of Service and Privacy Policy and understand that Adventures in Nodeland will receive your email address.

Matteo Collina
Matteo Collina
Hi Everyone! It’s time for another edition of Adventures in Nodeland, telling the latest stories of the Fastify & Node.js communities. Today we have quite a bit of news and articles, a new event we are launching, and a “fun” experiment with TypeScript targets. As usual, let me know what you think!

We are launching a new event on GraphQL! Check it out:
Untangling GraphQL
Last week I released v3.27.3 and v3.27.4 to fix all compatibilities problems between Fastify v3 and the (upcoming) Node.js v18. Fixes were required in the the test suite - false positives started to show up due to changes in the runtime and they started to show up in Node.js CITGM.
Meanwhile in another branch the development of Fastify v4.0.0 is progressing steadily. This includes a deprecation of the variadic .listen() implementation. Check out the PR and the discussion at:
Deprecate variadic listen method (closes #3652) by jsumners · Pull Request #3712 · fastify/fastify · GitHub
v4.0.0-alpha.2 is out including that fix and many others:
Release v4.0.0-alpha.2 · fastify/fastify · GitHub
We have found (another) bad bug in the Gateway implementation of Mercurius. Jonny promptly fixed it!
The fix was released as v9.3.4 and v8.12.1.
Release v7.8.1 · pinojs/pino · GitHub
There are quite a few moments that you noticed you made a mistake: Dave and myself developed 0x to help build performant libraries for Node.js. The first of those libraries was pino, our JSON logger. Anyway the latest release of pino was not compatible with 0x, because of a bug inside 0x - that Rafael promptly fixed!
Release v5.2.1 · davidmarkclements/0x · GitHub
Last week I have done quite a bit of research to verify that using async/await with TypeScript could lead to massive overhead… unless it’s configured correctly. Specifically, you’ll need to target at least es2017 to avoid any additional overhead. This unfortunately applies also to some of yours dependencies (be careful in what you chose to use!):
GitHub - mcollina/typescript-async-await-target-cost
The complexity behind modern authentication system is unique. while the technology might be simple to use, understanding what is actually happening is fundamental for a safe implementation of every solution. Check out this illustrated guide to know more:
An Illustrated Guide to OAuth and OpenID Connect
What is Open Policy Agent? How could you leverage it to implement a Cloud Governance solution using AWS CDK? Check out NearForm latest blog:
Cloud Governance with CDK using Aspects - NearForm
A new proposal hit TC39, the standard body that govern JavaScript, to standardize how we we can augment JavaScript with types.. just by using comments. Hopefully this will get standardized soon.
GitHub - giltayar/proposal-types-as-comments: ECMAScript proposal for type syntax that is erased - Stage 0
What happen when you enable your customers to run code inside your infra? They can easily sniff each other secrets if you are not careful. Last week a “fun” vulnerability was released targeting Azure. Read up:
At the beginning there was HTTP/2 push. However that did not really work out as planned. Then 103 Early Hints came for the rescue. I have been watching the advancement of this new feature of the Web with interest: currently it is at origin trial status in Chrome:
How much should you rely on services of your Cloud provider? How much should you tie your business to one single vendor? Those are the fundamental question of every software architect in 2022. Here is the opinion of ThoughWorks:
Don't get locked up into avoiding lock-in
Do you know what are the key metrics to measure your team performance? If you don’t, you are missing out. Read up at:
I’m so happy to announce that Isaacs finally shipped the new version of tap that removed quite a few deprecations at install time:
Did you enjoy this issue? Yes No
Matteo Collina
Matteo Collina @matteocollina

I write about my journey as a core contributor of Node.js, as an author and a maintainer of many modules - including Fastify and Pino. In addition, I speak at conferences, and I will add links to all my talks in case you missed one.

In order to unsubscribe, click here.
If you were forwarded this newsletter and you like it, you can subscribe here.
Created with Revue by Twitter.