New post released! π
Iβm breaking down everything Iβve learned about the push-pull algorithm in Signals.
It's an important publication for me, this article required more research and creativity than my previous posts. Enjoy!
β willybrauner.com/journal/sign...
#signals #frontend #article
Posts by Cyrille Tuzi
TypeScript 6.0 is now available!
This release brings better type-checking for methods, new standard library features, new module features for Node.js, and more!
But most important, this release brings us one step closer to the upcoming native-speed 7.0!
devblogs.microsoft.com/typescript/a...
Just published angular-rx-submit, for RxJS interoperability in Angular signal forms, with the rxSubmit() function, an Observable-based equivalent of the Promise-based submit(). For cancellation, consistency and simplicity. github.com/cyrilletuzi/...
In case the maintainers read this, just 2 notes: the only rule missing to achieve strict typing is "prefer-arrow-callback"; and I think there should be a `typeAware` setting in the configuration file to enable it once and for all (it is easy to forget to add the flag when launching the CLI command)
I also added support for Oxlint in v3.25 of my related tool to automate this configuration: github.com/cyrilletuzi/...
Impressed by the work done by @boshen.github.io and other contributors on Oxlint. I added the Oxlint rules and configuration to my posts about TypeScript strictly typed: dev.to/cyrilletuzi/...
TypeScript 6.0 beta is now published!
This release brings
- inference improvements for functions
- updates to package.json 'imports'
- the Temporal APIs
- alignments for the upcoming TypeScript 7.0
- & more!
Try it today!
devblogs.microsoft.com/typescript/a...
Weβre planning to make OnPush the new default Change Detection Strategy in v22.
Also, ChangeDetectionStrategy.Default would be renamed to Eager.
Check out the RFC and let us know what you think: github.com/angular/angu...
The Node.js package configuration guide is now live! π
Whether you're creating your first package or migrating to ESM, this guide walks you through it with examples.
https://nodejs.github.io/package-examples
A day in the life of an individual open source contributor: it is only January 2, and the good resolution for the new year of some guy is to post yet another bad review about one of my tool, again based on false statements. π Let us hope I do not take the resolution to delete everything. π
You take extra care to make this option documented and very visible everywhere. A lazy guy posts an agressive 1 star review about your tool because he thinks he cannot switch back. You reply it is absolutely possible. He does not care and leaves his negative review. You are welcome. π
but actually you are left alone despite being the author of a tool with 1,5 million installations. You do a tedious work on your free time and for free to align to the change. You do extra work to allow users to revert to the previous behavior in one click.
A day in the life of an individual open source contributor: a GAFAM framework decides to do a big change with major consequences for the tooling ecosystem. Does a RFC about it (while actually all is already decided), saying they will "coordinate with community supported tool owners"...
We've got some updates on TypeScript 7! The new native port
- can type-check any project
- supports --build and --incremental
- has rich editor features implemented
- is still 10x faster
and is ready for you to try today!
devblogs.microsoft.com/typescript/p...
Strict enabled by default, finally! π
angular-async-local-storage v21 release for #Angular 21. On day one, as usual. You are welcome. github.com/cyrilletuzi/...
π° The v21 version is out now. Get all the details on the latest features in one place.
πgoo.gle/angular-v21-blog
What part are you most excited to try first? π
On Cloud 9.0 πΆβπ«οΈ
Release details β£
Rust 1.91.0 has been released! π π¦
This version brings you tier 1 support for aarch64-pc-windows-msvc, warnings for dangling pointers to locals, new methods on AtomicPtr, array::repeat, BTreeMap::extract_if, const TypeId::of, and more!
Check out the announcement: blog.rust-lang.org/2025/10/30/R...
Unrelated, but for the fun: the npm website login page is amazing, the store blind closing when you enter your password so the animal (not sure what it is?) cannot see it, it is genius.
Just published v7 of my #Angular schematics extension for #VSCode with support for the new naming conventions (also known as the 2025 style guide). You can switch back to the previous naming conventions if desired. github.com/cyrilletuzi/...
...and add the "()" yourself in the template file name as showed in my previous message. It implies you will have to create 2 schematics (one for "()" and one for "[]"), but it feels like a better design choice, as the details of your templates will probably be different in these 2 scenarios.
{{name}} is the raw user input, and all helpers ({{className}}, {{fileName}}...) are derived from that. So if you expect the user to type "(blog)", it is normal that {{name}} results in "(blog)". I would suggest to reverse the logic and just to expect "blog" from the user...
So {{fileName}} is an helper for the standard Angular naming convention. As you want a custom naming, just use {{name}}. For example, for your template file name: ({{name}}).ts.hbs and you are good to go. Do not forget to update the mainFile property in the schematic.json accordingly.
For special characters, I did not designed the system with that kind of filenames in mind, as it is not classic / standard Angular. But it should be achievable, let me check and I will come back to you with an example.
pathsWithPredefinedSchematic is very simple: you associate a schematic to a path so it is preselected when you right click inside this path. Full documentation and exemples inside VS Code or here: github.com/cyrilletuzi/...
There are a lot of options, but for most cases you do not need most of them. All the documentation is directly inside VS Code in the "walkthrough" feature, and also duplicated here: github.com/cyrilletuzi/... But if you still need help I can assist you further for sure.
For many reasons, the VS Code extension does not rely on the Angular CLI, it has its own generation system using native VS Code APIs, and so it also has its own custom schematics system/format (simpler, as it is purely declarative: just a template and a config file).
Hi, can you explain your use case and/or what you want to achieve exactly? I am not familiar with Analog and the documentation you linked is not very helpful to understand what feels "wrong" for you.
Just migrated my npm packages to trusted publishing via OpenID Connect (OIDC). It was easy thanks to this guide: docs.npmjs.com/trusted-publ... (minor enhancements: using the latest GitHub actions versions, and using Node v24 which directly includes npm v11.6.1 to avoid the npm version update)