TypeScript 6.0 is a transition release bridging 5.9 and the forthcoming 7.0 (a native Go port). Most changes are new defaults and deprecations preparing for 7.0. Here is what you need to do:
Most projects need these tsconfig changes:
TypeScript 6.0 is a transition release bridging 5.9 and the forthcoming 7.0 (a native Go port). Most changes are new defaults and deprecations preparing for 7.0. Here is what you need to do:
Most projects need these tsconfig changes:
These are some notes on the performance work that went into alien-signals. I'm sharing them not as a definitive guide, but as a log of a few key discoveries. The hope is that some of these findings might be useful to others tackling similar problems in high-performance JavaScript.
My journey into the depths of reactivity performance began with Vue. I was trying to solve a specific problem in Vue 3.4: even if a computed's value didn't change, it would still trigger downstream computations and effects. This seemed inefficient. My attempt to fix this resulted in a pull request (vuejs/core#5912) that, after a year of discussions, was eventually merged. This PR introduced the Push-Pull-Push model to Vue 3.4, a model also adopted by libraries like reactivity.
For a time, I thought this was near-perfect. Then I saw the plans for Vue 3.5, which adopted a doubly-linked list but also moved to a pure pull-based model. I was still convinced
Enterprise software often has more non-functional requirements to fulfill because of the nature of the business of large companies. Think about it! Large companies often buy smaller ones. When that happens, some integration work of the two companies is imminent. Very often the case is that there is a mismatch between the acquiring and the acquired company's software stack. For example:
| // 3D Dom viewer, copy-paste this into your console to visualise the DOM as a stack of solid blocks. | |
| // You can also minify and save it as a bookmarklet (https://www.freecodecamp.org/news/what-are-bookmarklets/) | |
| (() => { | |
| const SHOW_SIDES = false; // color sides of DOM nodes? | |
| const COLOR_SURFACE = true; // color tops of DOM nodes? | |
| const COLOR_RANDOM = false; // randomise color? | |
| const COLOR_HUE = 190; // hue in HSL (https://hslpicker.com) | |
| const MAX_ROTATION = 180; // set to 360 to rotate all the way round | |
| const THICKNESS = 20; // thickness of layers | |
| const DISTANCE = 10000; // ¯\\_(ツ)_/¯ |
As of August 28th, 2025, Expert LSP has been released: https://github.com/elixir-lang/expert
Although still a work in progress, the plan is for the other three LS implementations to be archived. I may try to come up with a new way to track Expert's featureset, but I would probably contribute that back to Expert as documentation.
As of August 15, 2024, it's been announced that the three projects bein compared here will soon merge! See the official Elixir blog post for more details: https://elixir-lang.org/blog/2024/08/15/welcome-elixir-language-server-team/
| # Bun is now officially supported and these environments variables are no longer needed. Keeping this gist for legacy purposes. | |
| # SKIP_DEPENDENCY_INSTALL=true | |
| # UNSTABLE_PRE_BUILD=asdf install bun latest && asdf global bun latest && bun i |
| { | |
| "workbench.colorCustomizations": { | |
| "editor.background": "#0f172a", | |
| "menu.background": "#0f172a", | |
| "sideBar.background": "#0b111e", | |
| "banner.background": "#0f172a", | |
| "tab.inactiveBackground": "#0b111e", | |
| "tab.activeBackground": "#0f172a", | |
| "titleBar.activeBackground": "#0b111e", | |
| "editor.lineHighlightBorder": "#ff000000" |
| # Change these variables as necessary. | |
| main_package_path = ./cmd/example | |
| binary_name = example | |
| # ==================================================================================== # | |
| # HELPERS | |
| # ==================================================================================== # | |
| ## help: print this help message | |
| .PHONY: help |
| import { z } from "zod"; | |
| import { zodToTs, printNode } from "zod-to-ts"; | |
| // Replace with your `openai` thing | |
| import { openai } from "../openai.server"; | |
| import endent from "endent"; | |
| function createJSONCompletion<T extends z.ZodType>({ | |
| prompt, | |
| schema_name, |
So you want to write a sync system for a web app with offline and realtime support? Good luck. You might find the following resources useful.
Database in a browser, a spec (Stepan Parunashvili)
What problem are we trying to solve with a sync system?
The web of tomorrow (Nikita Prokopov)
{ "compilerOptions": { "types": ["node"], // @types are no longer auto-discovered (see §1.6)