Skip to content

Commit b135792

Browse files
digest: add issues for 2026-06-07
1 parent b1d9f56 commit b135792

11 files changed

Lines changed: 259 additions & 0 deletions
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
---
2+
date: 2026-06-06
3+
repo: biomejs/biome
4+
size: L
5+
title: "SCSS formatter and export lint get smarter"
6+
excerpt: "Adds a `useExportType` style option, fixes SCSS bracketed and grid formatting, and tightens a11y/ignore diagnostics."
7+
commits: 8
8+
authors: [denbezrukov, Conaclos, harsha-cpp, dfedoryshchev]
9+
commit_authors: {"4167475": denbezrukov, "3634a3f": denbezrukov, "eb1ed0e": harsha-cpp, "6022c19": denbezrukov, "2ceb4fe": Conaclos, "961f41c": Conaclos, "78075b7": Conaclos, "777bdbf": dfedoryshchev}
10+
---
11+
12+
### **Add `useExportType` style enforcement** (78075b7)
13+
Biome now supports a new `style` option for `useExportType`, letting users choose between `inlineType`, `separatedType`, or `auto`. The rule was expanded to split mixed exports into type-only and value exports, and the config/schema/backend were updated to expose the option.
14+
15+
### **Fix SCSS bracketed expression parsing** (6022c19)
16+
SCSS bracketed expression lists are now parsed as first-class syntax instead of recovering as errors. This unlocks correct formatting for bracketed values and removes a parser hole that previously dropped valid cases in tests.
17+
18+
### **Preserve SCSS string concatenation indentation** (4167475)
19+
The SCSS formatter now indents broken string concatenations more consistently, especially in grouped or parenthesized expressions. This improves readability for multi-line concatenations and aligns output with expected SCSS formatting behavior.
20+
21+
### **Fix grid-template handling in CSS/SCSS formatting** (3634a3f)
22+
Biome now recognizes SCSS grid-template rows correctly and avoids treating unrelated `grid-template-*` properties as grid-area declarations. This prevents malformed formatting around grid values and fixes a correctness bug in the grid-area linter.
23+
24+
### **Stop `useAriaPropsForRole` false positives on Vue bindings** (eb1ed0e)
25+
The a11y rule now treats Vue `v-bind` shorthand attributes like `:aria-checked` and `:aria-level` as satisfying required ARIA props. That removes noisy diagnostics for valid Vue templates without changing the rule’s intent.
26+
27+
### **Improve `noTsIgnore` diagnostic ranges** (2ceb4fe)
28+
`noTsIgnore` now highlights only the `@ts-ignore` directive instead of a broader chunk of the comment. The rule’s message is unchanged, but the fix range is more precise and easier to act on.
29+
30+
### Other misc changes
31+
- `useExportType` docs and internal refactorings (961f41c)
32+
- SCSS formatter/parser follow-up tests and cleanup (6022c19, 4167475, 3634a3f)
33+
- Comment wording cleanup across formatter crates (777bdbf)
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
---
2+
date: 2026-06-06
3+
repo: denoland/deno
4+
size: L
5+
title: "Deno adds WebCrypto, Node, and CLI fixes"
6+
excerpt: "Major updates across WebCrypto, BroadcastChannel, child_process, and bundling, plus several bug fixes and new APIs."
7+
commits: 33
8+
authors: [bartlomieju, divybot, fibibot, nathanwhitbot, ry, littledivy]
9+
commit_authors: {"9839d3a": bartlomieju, "a5b709e": bartlomieju, "591ff87": bartlomieju, "84b80f0": bartlomieju, "181c8e5": bartlomieju, "0e8fe8c": divybot, "e867d08": divybot, "0e6757e": littledivy, "25cfe2b": divybot}
10+
---
11+
12+
### **WebCrypto now tracks modern algorithms and detached buffers** (0e6757e)
13+
Deno’s WebCrypto implementation was brought closer to the modern-algorithms spec, with support and validation updates across post-quantum and newer digest/encapsulation paths. The patch also fixes buffer-copy behavior around detached inputs so algorithms observe mutations correctly, which matters for spec conformance and hard-to-debug edge cases.
14+
15+
### **BroadcastChannel now supports SharedArrayBuffer payloads** (0e8fe8c)
16+
BroadcastChannel can now serialize, transmit, and deserialize `SharedArrayBuffer`-backed messages instead of failing with clone errors for additional receivers. This closes a real interoperability gap and makes Node worker-thread style messaging work more reliably.
17+
18+
### **Node child_process IPC handles now work with net.Server and net.Socket variants** (25cfe2b)
19+
`ChildProcess.send()` now handles unlistened servers and socket/server wraps more like Node, including pipe-backed handles and the null-handle case. That unlocks more IPC patterns, especially for server and socket passing across processes.
20+
21+
### **`deno compile --bundle` can now resolve worker npm imports outside package scope** (591ff87)
22+
Bundling worker sources now falls back to npm snapshot resolution for bare specifiers that originate outside the entrypoint’s package tree. This fixes a class of compile failures in dual-tree layouts where worker code lives beside, rather than under, the main package scope.
23+
24+
### **`deno clean` keeps going on locked caches and explains who holds them** (a5b709e)
25+
On Windows, `deno clean` no longer aborts as soon as it hits a cache database held open by another process. Instead it reports the locked files and, when possible, identifies the process holding them so users can unblock cleanup.
26+
27+
### **`deno serve --watch` now applies import maps to the main module** (9839d3a)
28+
Watch mode now resolves the entrypoint through the same import-map-aware path as non-watch mode. This fixes bare-specifier entrypoints that previously failed only under `--watch`.
29+
30+
### **`deno add` now accepts npm-style version ranges** (84b80f0)
31+
The CLI now accepts comparator, range, and OR-range syntax like npm does, instead of rejecting them with specifier-grammar errors. That makes `deno add` usable with a much wider set of package version constraints.
32+
33+
### **`deno bump-version -c` chooses the manifest that actually has a version** (e867d08)
34+
When `deno.json` and `package.json` live side by side, the bump-version command now prefers the file that contains real version metadata. This fixes the common dual-publish workflow where `deno.json` is only tooling config.
35+
36+
### **`deno bundle` now preserves Node-style CJS interop on browser targets** (181c8e5)
37+
Browser-targeted bundles now handle dual CJS/ESM packages the same way Node does, avoiding init-time crashes from default-import interop mismatches. This unblocks packages like `tslib` that rely on Node’s CJS semantics.
38+
39+
### **Other misc changes**
40+
- Fixed interactive `deno update` to show the version requirement instead of the resolved version.
41+
- Hidden invalid Windows env keys from `Deno.env.toObject()`.
42+
- Fixed redundant slashes in file specifiers causing runaway import cycles.
43+
- Added support for `priority` in `RequestInit`.
44+
- Surfaced unresolved imports in `.d.ts` entrypoints during `deno check`.
45+
- Stripped trailing `\r` from CLI args so CRLF shebangs work.
46+
- Improved JSR manifest verification errors.
47+
- Clearer error when a closed resource-backed stream is still being consumed.
48+
- Collected re-exported names for `deno test --doc` injection.
49+
- Fixed UTF-8 replacement behavior in Node `Buffer` decoding.
50+
- Suppressed peer dependency warnings for overridden packages.
51+
- Various smaller install, resolver, fs performance, TLS, and test/compatibility fixes.
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
---
2+
date: 2026-06-06
3+
repo: denoland/std
4+
size: N
5+
title: "No changes"
6+
excerpt: ""
7+
commits: 0
8+
---
9+
10+

src/posts/2026-06-06_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-06
3+
repo: jsr-io/jsr
4+
size: N
5+
title: "No changes"
6+
excerpt: ""
7+
commits: 0
8+
---
9+
10+
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
---
2+
date: 2026-06-06
3+
repo: microsoft/typescript-go
4+
size: M
5+
title: "Unicode suggestions and JSDoc constructor fix"
6+
excerpt: "Improved spelling suggestions for Unicode identifiers and fixed JSDoc modifiers being misparsed on constructors."
7+
commits: 2
8+
authors: [ahejlsberg]
9+
commit_authors: {"3e477ab": ahejlsberg, "f3c4190": ahejlsberg}
10+
---
11+
12+
### **Unicode spelling suggestions now handle Unicode characters** (3e477ab)
13+
The suggestion matcher now measures name length in runes instead of bytes, so identifiers with accented or other multi-byte characters get more accurate “Did you mean” results. This fixes incorrect spelling suggestions for Unicode-heavy names without changing the public API.
14+
15+
### **Fix reparsing of JSDoc modifiers on constructors** (f3c4190)
16+
Constructor declarations are now included in the parser’s JSDoc modifier reparse path, and AST modifier storage gained a setter to support the fix. This resolves cases where tags like `@private` or `@readonly` were being applied or reported incorrectly on constructors.
17+
18+
### Other misc changes
19+
- Updated test baselines for the new Unicode spelling suggestion cases.
20+
- Updated test baselines for JSDoc constructor/private and readonly conformance cases.
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
---
2+
date: 2026-06-06
3+
repo: nodejs/node
4+
size: S
5+
title: "Brotli test now waits for backpressure"
6+
excerpt: "A flaky Brotli 16GB test now waits for the readable buffer to fill before asserting, avoiding a race with libuv worker scheduling."
7+
commits: 1
8+
authors: [trivikr]
9+
commit_authors: {"2adaeee": trivikr}
10+
---
11+
12+
### Other misc changes
13+
- Test reliability fix: `test-zlib-brotli-16GB.js` now polls until the Brotli decoder reaches its expected buffered chunk count before checking backpressure, removing a race with the fixed timeout (2adaeee).
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
---
2+
date: 2026-06-06
3+
repo: oven-sh/bun
4+
size: L
5+
title: "REPL UTF-8, CSS hangs, and crash fixes"
6+
excerpt: "Fixes REPL multi-byte input, two CSS parser/minifier DoS bugs, a dev-server CSS crash, and several runtime/refactor issues."
7+
commits: 8
8+
authors: [robobun, Jarred-Sumner]
9+
commit_authors: {"a988615": robobun, "1293ef4": robobun, "0342abb": robobun, "90589f9": robobun, "300b148": Jarred-Sumner, "27d5181": robobun, "73ab3dd": robobun, "a7034f2": robobun}
10+
---
11+
12+
### **REPL now preserves multi-byte UTF-8 input** (a988615)
13+
The interactive `bun repl` line editor now handles full UTF-8 codepoints instead of dropping non-ASCII bytes. That means pasted or typed Korean and other multi-byte text is preserved, moved, and transposed correctly in the editor.
14+
15+
### **CSS minifier now merges duplicate rules in linear time** (1293ef4)
16+
This fixes a fuzzer-found hang where adjacent rules with equivalent selectors could trigger superlinear work during duplicate-rule merging. The change makes the merge path incremental and adds regression coverage for the affected CSS families.
17+
18+
### **Auto-install no longer panics on unreadable top-level directories** (0342abb)
19+
Package-manager initialization now returns a sticky error instead of crashing when the root directory cannot be read at runtime. This turns a Windows-heavy panic path into a recoverable failure for `bun <script>` and `bun -e` when the cwd is deleted or unreadable.
20+
21+
### **Dev server CSS rebuild failures stop crashing** (90589f9)
22+
A CSS file that parses but fails import resolution during hot reload now fails cleanly instead of tripping a bundler assertion. The fix also stops parking failed CSS on the graph as if it were valid, which avoids misclassifying broken files as successful CSS chunks.
23+
24+
### **Markdown rendering avoids quadratic nested-label work** (27d5181)
25+
Nested link/image label rendering was refactored to avoid repeated rescans and quadratic behavior on deeply nested inputs. This also changes the renderer’s internal flow to keep label traversal bounded by heap-backed state rather than repeated recursive slice rebuilds.
26+
27+
### **CSS parser stops exponential backtracking on nested color token lists** (73ab3dd)
28+
Token-list parsing now tracks failures and propagates them early when an alternative has already failed inside a nested token-list argument. That closes an OOM/DoS class in nested color-function handling, including `light-dark()` and related token-list paths.
29+
30+
### **Decorator lowering now evaluates private-call receivers once** (a7034f2)
31+
Private method call lowering now captures complex receivers into temporaries so side effects run once instead of being duplicated across nested private-call chains. The temp declarations are hoisted into the owning function body, fixing both a receiver double-evaluation bug and the fuzzed memory blow-up.
32+
33+
### Other misc changes
34+
- Test runner scanner raw-pointer refactor and UB cleanup (300b148)
35+
- Panic/error-handling plumbing around package-manager init and resolver auto-install (0342abb)
36+
- CSS minifier state/merge refactor and regression tests (1293ef4)
37+
- Markdown parser/rendering internals refactor and tests (27d5181)
38+
- REPL key handling/editor refactor plus tests (a988615)
39+
- CSS parser/custom property internal parsing refactors and tests (73ab3dd)

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

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
---
2+
date: 2026-06-06
3+
repo: pnpm/pnpm
4+
size: L
5+
title: "pnpr goes resolve-only; big perf pass lands"
6+
excerpt: "pnpr switches to resolve-only streaming while tarball and linker work get parallelized and race-fixed for faster installs."
7+
commits: 14
8+
authors: [zkochan, KSXGitHub]
9+
commit_authors: {"75bf4bf": KSXGitHub, "51839cd": zkochan, "d276a78": zkochan, "7db1e75": zkochan, "bea64b2": zkochan, "de32f83": zkochan, "5f7f747": zkochan, "da4c80c": zkochan, "089484a": zkochan}
10+
---
11+
12+
### **pnpr now resolves only, with streamed NDJSON** (089484a)
13+
The pnpr accelerator no longer serves file contents inline with install results; it resolves server-side and then the client fetches tarballs normally from registries. That moves pnpr closer to a resolve offload model, restoring the client’s existing parallel fetch/integrity paths and simplifying the server-side accelerator.
14+
15+
### **pnpr client now parses streamed `/v1/resolve` frames** (de32f83)
16+
The TypeScript client was updated to read `/v1/resolve` as NDJSON instead of a single buffered JSON blob, matching the server’s streaming protocol. It now skips `package` frames and reacts to the terminal `done`, `error`, or `violations` frame, which fixes the previous parse failure on streaming responses.
17+
18+
### **pnpr install stops re-downloading prefetched tarballs** (5f7f747)
19+
The frozen-install path now consults the shared in-flight tarball cache so it can reuse prefetch downloads instead of fetching the same registry tarball twice. That removes a real race between prefetching and materialization, especially on pnpr-backed installs.
20+
21+
### **Fresh-install prefetches now reuse in-flight downloads** (d276a78)
22+
The cold fresh-resolve path now threads the shared tarball cache through to the virtual-store install step, so the cold batch can observe and reuse downloads kicked off earlier by resolution. This closes the duplicate-download race on fresh installs and aligns the fresh path with the existing pnpr prefetch flow.
23+
24+
### **Tarball extraction now writes CAS entries in parallel** (bea64b2)
25+
Tarball extraction was split into a serial tar-walk phase and a parallel CAS-write phase, so large archives no longer pin one thread while hashing and writing thousands of files. This should materially improve extraction throughput on file-heavy packages and reduce tail latency during installs.
26+
27+
### **CAS writes now use a dedicated rayon pool** (7db1e75)
28+
The parallel CAS-write phase was moved off rayon’s global pool onto a dedicated pool. That prevents tarball extraction bursts from starving the linker’s own rayon work, which should smooth out installs when downloads finish in waves.
29+
30+
### **Cold-batch slot linking is now parallelized** (51839cd)
31+
The cold batch no longer serializes slot-link work inside each install future; it defers linking and then runs the slot materialization in a parallel pass once downloads are complete. That removes a throughput bottleneck on fresh installs with many packages.
32+
33+
### **Fresh-install reporting now matches what users actually see** (da4c80c)
34+
Fresh installs now report prefetched packages as `fetched` instead of `found_in_store`, so progress output reflects that the tarball was actually downloaded during resolution. The change also deduplicates progress events so resolve-time prefetching and warm-batch materialization don’t double-count the same package.
35+
36+
### **Commit hooks now reject bare `#NNN` issue refs** (75bf4bf)
37+
A new commit-msg hook blocks bare `#123` references because GitHub can silently turn them into repo-local issue/PR links, which is easy to misuse in AI-generated messages. The rule is now documented for contributors and agents, making commit metadata safer and less ambiguous.
38+
39+
### Other misc changes
40+
- Dependency bumps: tabled, serde-saphyr, dashmap, reqwest
41+
- Integrated benchmark workflow tweaks and scenario additions
42+
- Test updates for pnpr streaming, caching, and install reporting
43+
- Misc docs/config changes for agent and benchmark guidance
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
---
2+
date: 2026-06-06
3+
repo: tc39/ecma262
4+
size: N
5+
title: "No changes"
6+
excerpt: ""
7+
commits: 0
8+
---
9+
10+
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
---
2+
date: 2026-06-06
3+
repo: tc39/proposals
4+
size: N
5+
title: "No changes"
6+
excerpt: ""
7+
commits: 0
8+
---
9+
10+

0 commit comments

Comments
 (0)