Skip to content

Commit 293bf2d

Browse files
digest: add issues for 2026-06-13
1 parent 0ef1c39 commit 293bf2d

12 files changed

Lines changed: 285 additions & 0 deletions
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
---
2+
date: 2026-06-12
3+
repo: biomejs/biome
4+
size: L
5+
title: "Biome adds React lint rule and CSS/parser work"
6+
excerpt: "New React function-component rule, SCSS `supports()` interpolation parsing, CSS formatter fixes, and a formatter perf boost."
7+
commits: 8
8+
authors: [denbezrukov, ematipico, dfedoryshchev, citadelgrad]
9+
commit_authors: {"c1dfb43": ematipico, "76671f3": dfedoryshchev, "e06eaad": ematipico, "995c1ff": citadelgrad, "2be0264": denbezrukov, "174b21b": denbezrukov, "c8cf440": denbezrukov}
10+
---
11+
12+
### **New React rule enforces function component definitions** (995c1ff)
13+
Biome adds the nursery `useReactFunctionComponentDefinition` lint rule for React components, with config and migration support wired through the CLI and rule registry. This gives teams a new way to standardize component declarations and keep React codebases consistent.
14+
15+
### **SCSS `@supports` interpolation is now parsed and formatted** (c8cf440)
16+
The CSS parser gained support for interpolated SCSS conditions inside `@supports`, along with new syntax nodes, factories, formatter hooks, and test coverage. This expands Biome’s SCSS support for real-world stylesheets that generate conditions dynamically.
17+
18+
### **Formatter now preserves CSS grid row alignment around comments** (174b21b)
19+
Biome fixes `grid-template-areas` formatting when comments appear before multiline values, avoiding an extra indent at the declaration boundary. This keeps grid rows aligned as expected and prevents churn in formatted CSS/SCSS.
20+
21+
### **Formatter performance improved in some cases** (2be0264)
22+
A formatter refactor landed with a noted speedup of up to ~20% on some files. The change also updates the internal source-position handling used across formatter backends, which should reduce overhead in formatting pipelines.
23+
24+
### **Added `biome_languages` crate and shifted source-file types** (c1dfb43)
25+
The repo introduces a new `biome_languages` crate and moves several file-source imports in the CLI and tests to it. This looks like an internal consolidation step toward shared language/file abstractions across Biome’s tooling.
26+
27+
### **Other misc changes**
28+
- Release housekeeping removed accumulated changeset files (c0b9832)
29+
- TOML CI now uses the installed tombi from the toolchain (e06eaad)
30+
- Fixed a duplicated word in CLI test comments (76671f3)
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
---
2+
date: 2026-06-12
3+
repo: denoland/deno
4+
size: L
5+
title: "Deno fixes crypto, permissions, and npm types"
6+
excerpt: "Major correctness fixes landed for X448, Windows path permissions, npm .d.ts resolution, and node:test run-only behavior."
7+
commits: 8
8+
authors: [divybot, a-skua, avocet-bot, nathanwhit]
9+
commit_authors: {"9f066b8": a-skua, "16aa900": divybot, "d535582": divybot, "ee9e5c7": divybot, "943e317": divybot}
10+
---
11+
12+
### **npm .d.ts resolution now follows package.json again** (16aa900)
13+
`deno check` was misclassifying some npm `.d.ts` files as ESM based on broad `exports` heuristics, which broke valid imports like `import playwright from "playwright"`. The resolver now treats `.d.ts` files by package.json-based mode only, restoring correct CJS vs ESM typing for npm packages.
14+
15+
### **Fix X448 scalar clamping to match RFC 7748** (ee9e5c7)
16+
Deno was deriving the wrong X448 public key because the private scalar was being reduced mod the Ed448 group order instead of being clamped verbatim. This aligns `crypto.subtle` with RFC 7748 and fixes key derivation for PKCS#8 and private JWK inputs.
17+
18+
### **Windows `\\?\` verbatim paths now share permission grants** (d535582)
19+
Permission checks now normalize losslessly simplifiable verbatim paths so `\\?\C:\foo` and `C:\foo` are treated as the same target. That removes surprise reprompts on Windows for paths that refer to the same file.
20+
21+
### **Implement `node:test` context `runOnly(true)`** (943e317)
22+
`TestContext.runOnly` now works instead of throwing, and only direct subtests marked `only: true` are executed while the rest are filtered out. This matches Node's behavior and unblocks nested `node:test` suites that rely on run-only mode.
23+
24+
### **Accept U+30FB in identifiers** (9f066b8)
25+
Deno now accepts KATAKANA MIDDLE DOT in identifiers, matching Unicode 15.1. The new regression test covers both `deno run` and `deno check` for the character in variable names and property access.
26+
27+
### **Other misc changes**
28+
- CI now guards against release binaries embedding eager snapshot parsing flags, and scopes Rust builds to the intended packages.
29+
- Benchmark publishing now also writes JSONL outputs alongside the existing JSON files.
30+
- Added a regression test for the first `node:http` proxy request under `deno test`.
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
---
2+
date: 2026-06-12
3+
repo: denoland/std
4+
size: N
5+
title: "No changes"
6+
excerpt: ""
7+
commits: 0
8+
---
9+
10+

src/posts/2026-06-12_jsr-io-jsr.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
---
2+
date: 2026-06-12
3+
repo: jsr-io/jsr
4+
size: N
5+
title: "No changes"
6+
excerpt: ""
7+
commits: 0
8+
---
9+
10+
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
---
2+
date: 2026-06-12
3+
repo: leanprover/lean4
4+
size: L
5+
title: "Lean 4 gets faster snapshots and smarter grind"
6+
excerpt: "Parallel snapshot loading, new grind disambiguation, and a handful of performance and bug-fix upgrades landed today."
7+
commits: 13
8+
authors: [Kha, leodemoura, sgraf812, kim-em, wkrozowski]
9+
commit_authors: {"8536263": Kha, "548f78b": sgraf812, "6271d8f": leodemoura, "b118504": wkrozowski, "75ece25": Kha, "36dc822": leodemoura, "60967a7": Kha, "75745ff": sgraf812, "f9f071a": Kha, "693e86e": Kha, "c2b551f": kim-em, "a450d91": kim-em, "64438dd": leodemoura}
10+
---
11+
12+
### **Parallel incremental snapshot loading speeds up imports** (693e86e, 60967a7)
13+
Lean now loads `--incr-load` snapshot dependencies in parallel, grouped by module, instead of serially walking every `.olean*` region. This cuts cold and warm load times dramatically for large snapshots like `import Mathlib`, and the loader now writes/reads a JSON `.deps` manifest that encodes module artifacts rather than plain file paths.
14+
15+
### **`grind?`/`cases` can now disambiguate duplicate anchors** (64438dd)
16+
`grind?` now generates ordinal-qualified `cases` references like `#a56e/2` when multiple split candidates share the same anchor, avoiding replay failures caused by inaccessible-variable collisions. The tactic implementation also learned to select the Nth matching candidate directly, which should make suggestions reliable again in ambiguous goals.
17+
18+
### **`SymM` gains ground simprocs for bit-vector conversions** (6271d8f)
19+
The symbolic simplifier can now reduce several bit-vector ground forms, including `Int{8,16,32,64}.toBitVec`, `UInt{8,16,32,64}.toBitVec`, `BitVec.ofNat`, `BitVec.toNat`, and `BitVec.setWidth`. That gives `SymM` a much better chance of normalizing concrete bit-vector expressions without falling back to general rewriting.
20+
21+
### **Task pool worker threads now expire after 5 seconds** (75ece25)
22+
The runtime task manager no longer keeps idle standard workers alive forever: they detach on creation, time out after 5 seconds of inactivity, and exit to reclaim their stack memory. This is especially important now that worker stacks default to 1 GB, and the shutdown path was reworked to track worker counts and wake the right condition variables instead of joining stored thread objects.
23+
24+
### **`Sym.dsimp` fixes ill-typed binder telescope expansion** (36dc822)
25+
`Sym.dsimp` now instantiates binder types and values before creating local declarations for ``, `λ`, and `let` telescopes. This fixes a kernel-rejection bug where loose bound variables could survive in the elaborated term and later get misinterpreted during zeta expansion.
26+
27+
### **`cbv`/`sym =>` no longer rewrites hypotheses, and projection transparency is fixed** (b118504)
28+
The `cbv at`-style hypothesis rewriting path was removed from `sym =>` mode, simplifying its behavior and avoiding the old rewriting semantics there. The commit also adjusts the transparency level used when `cbv` encounters projections, which should make projection reduction behave correctly again.
29+
30+
### **Other misc changes**
31+
- Do elaborator docs and parser comments cleaned up (548f78b)
32+
- `DoElem`/`DoSeq` syntax abbreviations added and threaded through `do` elaboration (75745ff)
33+
- Fix snapshot cleanup / `.deps` handling internals (f9f071a)
34+
- Fix module loading to ignore stray file existence when choosing olean parts (8536263)
35+
- Add `Nat.or_two_pow_eq_add_of_lt` lemma (c2b551f)
36+
- Add `Array`/`Vector` `set!` convenience lemmas (a450d91)
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
---
2+
date: 2026-06-12
3+
repo: microsoft/typescript-go
4+
size: L
5+
title: "Watchers, checker stability, and LS timeouts"
6+
excerpt: "Major LSP/watch infrastructure changes plus several crash fixes in the checker and module helper handling."
7+
commits: 6
8+
authors: [ahejlsberg, jakebailey, andrewbranch, johnfav03]
9+
commit_authors: {"7ce96c8": jakebailey, "3e6ed73": andrewbranch, "bb2240e": johnfav03, "4cf361f": ahejlsberg, "52a0fe6": ahejlsberg}
10+
---
11+
12+
### **LS checkers now time out when idle** (7ce96c8)
13+
The language service now tags checker work with a lifetime and uses that to let idle checkers expire after being unused. This should reduce stale checker retention and make diagnostics/API requests behave more predictably under load.
14+
15+
### **LSP server can use native watchers on Windows and macOS** (3e6ed73)
16+
A new LSP watcher backend was added, with the server able to prefer built-in recursive watching on platforms that support it efficiently. That’s a big reliability and performance win for file watching, especially for large trees.
17+
18+
### **CLI watch mode was rebuilt on top of the new fswatch layer** (bb2240e)
19+
The command-line watcher was reworked around the new filesystem watch package, and watch loops now honor cancellation instead of sleeping in a fixed loop. This is a substantial plumbing change that should make watch mode more robust and easier to integrate with interrupts/signals.
20+
21+
### **Fixed an external helper crash after module-status updates** (b1e0c7e)
22+
Program updates now re-evaluate whether a file needs an importHelpers specifier, instead of assuming that property stays stable across edits. This prevents a crash when a script becomes a decorated module and external helper resolution is forced after the change.
23+
24+
### **Fixed stack overflows in recursive type resolution** (4cf361f, 52a0fe6)
25+
Two separate checker crashes were fixed: one in base constraint resolution and one in simplification of recursive indexed access types. Both are important correctness fixes for pathological or highly recursive types that previously could blow the stack.
26+
27+
### Other misc changes
28+
- Checker determinism fix around instantiated symbols and target-symbol unwrapping.
29+
- Small public API addition: `Program.GetCheckerPool()`.
30+
- New/updated tests and baselines for watcher behavior and recursive-type regressions.
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
---
2+
date: 2026-06-12
3+
repo: nodejs/node
4+
size: L
5+
title: "Package maps land; Buffer.copy gets faster"
6+
excerpt: "Node adds experimental package-map resolution and speeds up Buffer.copy via new V8 byte-copy APIs."
7+
commits: 7
8+
authors: [ronag, watilde, arcanis, legendecas, aduh95]
9+
commit_authors: {"4383f67": ronag, "d66c3a6": ronag, "20fda56": watilde, "8c43981": watilde, "2f2b810": arcanis, "11390b5": legendecas, "144f795": aduh95}
10+
---
11+
12+
**Experimental package maps for module resolution** (2f2b810)
13+
Node now supports `--experimental-package-map`, letting bare specifier resolution consult a JSON package map to control which packages may import which dependencies. The change adds new docs, error codes, CLI flag plumbing, resolver logic, and extensive tests, so it’s a significant new module-resolution feature.
14+
15+
**Buffer.prototype.copy now uses V8 byte-copy APIs** (4383f67)
16+
Buffer copies are routed through V8’s new `CopyArrayBufferBytes` APIs instead of manually materializing views and `memmove`-ing bytes in Node. This should improve partial-copy performance and also makes copies correctly return 0 when the target backing store is detached or immutable.
17+
18+
### Other misc changes
19+
- Added V8 `CopyArrayBufferBytes` APIs and bumped the embedder patch version (d66c3a6).
20+
- Removed a redundant AIX shared-library intermediate target from the build (11390b5).
21+
- Hardened a few GitHub Actions shell invocations and PR-url linting (144f795).
22+
- Fixed two documentation typos (20fda56, 8c43981).
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
---
2+
date: 2026-06-12
3+
repo: oven-sh/bun
4+
size: M
5+
title: "Bun fixes SQL, bundler, fetch, and HMR edge cases"
6+
excerpt: "Notable bug fixes span SQL refactors, sourcemap output, fetch aborts, Windows lchown, and dev-server module flipping."
7+
commits: 12
8+
authors: [robobun, alii]
9+
commit_authors: {"a0e221e": alii, "80d92d4": alii, "ac312f0": alii, "f2821a2": alii, "5d8b292": alii, "885c44f": robobun, "541ea3a": robobun, "fc79577": robobun, "6b001fe": robobun, "6128f8e": robobun, "bcad9b2": robobun, "fd99f8b": robobun}
10+
---
11+
12+
### **SQL internals shed dead code and core plumbing is centralized** (a0e221e, 5d8b292)
13+
Bun removed a chunk of unused `sql_jsc` helpers and refactored the JS SQL adapters around a shared `BasePooledConnection` hierarchy. This trims duplication across Postgres/MySQL/SQLite and changes the internal SQL implementation shape without altering the public surface.
14+
15+
### **Standalone browser builds now emit sourcemaps correctly** (6128f8e)
16+
`bun build --compile --target=browser --sourcemap=linked` now writes sourcemaps for standalone HTML builds instead of silently dropping them. The fix also updates output-file handling so linked maps point at the right relative location for HTML entrypoints.
17+
18+
### **Fetch aborts now settle buffered body promises** (bcad9b2)
19+
Aborting a request with an in-flight streaming request body could leave `arrayBuffer()`/`text()` hanging forever on the response side. The tasklet now ensures the buffered response settles before canceling the request-body sink, closing a deadlock-like promise leak.
20+
21+
### **Windows `fs.lchown` now works like Node** (541ea3a)
22+
`fs.lchown`, `fs.lchownSync`, and the promise API now succeed on Windows instead of throwing a TODO error. This brings Bun in line with Node’s no-op success behavior for ownership changes on Windows.
23+
24+
### **Dev-server HMR keeps importer tracking when modules flip formats** (fc79577)
25+
When a module hot-updated from ESM to CJS, its replacement `require` binding was attached with the wrong `this`, breaking importer bookkeeping. The fix preserves dependency edges so updates continue to propagate instead of falling back to full reloads.
26+
27+
### **macOS spawn file-action errors are surfaced instead of being ignored** (6b001fe)
28+
`posix_spawn` on macOS now returns real errno values from file-action setup instead of collapsing them into generic failures. That fixes cases like too many open fds, where Bun could previously spawn a child with broken stdio and lose output.
29+
30+
### **Bun build no longer panics on lazy-export modules** (885c44f)
31+
`internal_bake_dev` now handles lazy-export modules by forcing the CJS print path during bundling, avoiding printer crashes for JSON/TOML/CSS-style lazy exports. The printer and linker both now agree on the generated module shape.
32+
33+
### **SQL test fixtures no longer leave orphaned subprocesses** (80d92d4)
34+
Tests that time out while using spawned SQL fixtures now clean up more reliably, preventing runaway orphan processes from sticking around after failures. This is a test-harness safety fix aimed at avoiding machine-wide load spikes during SQL regressions.
35+
36+
### **Bun.plugin target coercion now checks for exceptions** (fd99f8b)
37+
A debug assertion could fire when `Bun.plugin` coerced a non-string `target` and user code threw during `Symbol.toPrimitive`. The fix restores proper exception handling so the API throws normally instead of aborting in debug builds.
38+
39+
### Other misc changes
40+
- CI: bumped Darwin test timeout from 40 to 45 minutes (ac312f0)
41+
- Test harness: added `BUN_TEST_SERVICE_<name>` service overrides and docker-start tracking (f2821a2)
42+
- SQL tests updated for shared pool/connection refactor and fixture lifetime fixes (5d8b292, 80d92d4)
43+
- Additional bundler/dev-server test coverage for sourcemaps and lazy exports (6128f8e, 885c44f)
44+
- Added fetch abort regression tests and fs lchown coverage (bcad9b2, 541ea3a)
45+
- Minor internal SQL dead-code cleanup across `sql_jsc` (a0e221e)

src/posts/2026-06-12_pnpm-pnpm.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
---
2+
date: 2026-06-12
3+
repo: pnpm/pnpm
4+
size: L
5+
title: "pnpm lands determinism, perf, and security fixes"
6+
excerpt: "Major resolver and install performance work, plus read-only-store and alias-containment security hardening."
7+
commits: 21
8+
authors: [zkochan, KSXGitHub, kairosci, kalvenschraut, vsumner]
9+
commit_authors: {"1310ab5": zkochan, "6648b53": zkochan, "d2b42c2": zkochan, "9b35a60": zkochan, "43b5bf7": zkochan, "a9d2ec8": kairosci, "ce9c096": zkochan, "a751c7f": zkochan, "dfa91df": kalvenschraut, "f648e9b": zkochan, "c16eb0a": zkochan, "66a9078": zkochan, "612a2e6": zkochan, "61810aa": vsumner}
10+
---
11+
12+
**Resolver behavior is now more deterministic and parity-aligned** (9b35a60, d2b42c2, a751c7f, 6648b53, ce9c096)
13+
Shared children resolution no longer depends on async timing, and pacquet’s resolver got several lockfile-parity fixes around preferred-version folding, peer context reuse, owner-generation records, and peer/engine handling. These changes reduce lockfile churn and make repeated installs more byte-stable.
14+
15+
**Custom resolvers and frozen-lockfile verification got sharper concurrency** (a9d2ec8, c16eb0a)
16+
Pacquet now supports `.pnpmfile.cjs` custom resolver hooks end-to-end, including `shouldRefreshResolution` forcing re-resolution past frozen-path shortcuts. Separately, lockfile verification runs alongside fetch/link work instead of blocking the whole install, which should noticeably improve frozen-lockfile installs without weakening the verification gate.
17+
18+
**Repeat installs and metadata caching are faster** (1310ab5, 43b5bf7)
19+
The install fast path now avoids eagerly parsing the lockfile when pnpm can decide “already up to date” from manifest mtimes, and cached registry metadata renews freshness on `304 Not Modified` responses. Together these trim no-op install latency and prevent stale packument cache entries from being revalidated forever.
20+
21+
**pnpm can now install against read-only stores** (61810aa)
22+
A new `--frozen-store` option lets installs run with a package store on a read-only filesystem by switching store access to immutable mode and avoiding write paths that would otherwise fail. This is especially useful for Nix-style stores, RO bind mounts, and OCI layers.
23+
24+
**Security hardening closes alias and patch-remove escape paths** (f648e9b, 612a2e6)
25+
Hoisted installs now validate lockfile-derived dependency aliases before joining them into `node_modules`, blocking traversal and reserved-name escapes. Patch removal also got containment checks so deletion can’t escape the intended patched subtree.
26+
27+
**Scoped registries and musl binary resolution are fixed** (66a9078, dfa91df)
28+
Pacquet now routes scoped packages through the correct scoped registry, and musl-based systems no longer look for the glibc binary package. These are practical install-failure fixes for real-world environments.
29+
30+
### Other misc changes
31+
- Dependency bumps (2 commits)
32+
- Clippy lint enablements and related comment/test cleanup (1 commit)
33+
- Git-wt PR agent selection tweak for contributing workflows (1 commit)
34+
- Audit/compliance test fixture refactor (1 commit)
35+
- Misc benchmark/test adjustments and small internal refactors
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
---
2+
date: 2026-06-12
3+
repo: tc39/ecma262
4+
size: N
5+
title: "No changes"
6+
excerpt: ""
7+
commits: 0
8+
---
9+
10+

0 commit comments

Comments
 (0)