Skip to content

csskit_derives: Add peek(skip) attribute - #1266

Merged
keithamus merged 1 commit into
mainfrom
csskit-derives-add-peek-skip-attribute
Jul 5, 2026
Merged

csskit_derives: Add peek(skip) attribute#1266
keithamus merged 1 commit into
mainfrom
csskit-derives-add-peek-skip-attribute

Conversation

@keithamus

Copy link
Copy Markdown
Member

Some derive(Peek) calls end up peeking duplicate effective tokens, for example a
generic which also wraps a container generic, e.g.
Foo<T> { One(T), Many(CommaSeparated<T>) } would peek T || CommaSeparated<T>
which is effectively the same as peeking just T (as CommaSeparated just
peeks T also). This makes derive(Peek) leaky, as if we want to optimise a
peek we have to manually implement instead.

This change introduces peek(skip) as a variant/field attribute, allowing
derive(Peek) to ignore certain fields, this allows us to optimise without
having to drop to a manual impl.

Some derive(Peek) calls end up peeking duplicate effective tokens, for example a
generic which also wraps a container generic, e.g.
`Foo<T> { One(T), Many(CommaSeparated<T>) }` would peek `T || CommaSeparated<T>`
which is effectively the same as peeking just `T` (as `CommaSeparated` just
peeks `T` also). This makes `derive(Peek)` leaky, as if we want to optimise a
peek we have to manually implement instead.

This change introduces `peek(skip)` as a variant/field attribute, allowing
`derive(Peek)` to ignore certain fields, this allows us to optimise without
having to drop to a manual impl.
@keithamus
keithamus enabled auto-merge (squash) July 5, 2026 15:37
@github-actions

github-actions Bot commented Jul 5, 2026

Copy link
Copy Markdown

✅ CI passed

Job Result
Build & Test (win32-x64, win32-arm64, linux-x64, linux-arm64, darwin-x64, darwin-arm64) ✅ success
Build & Test (default features) ✅ success
Build & Test (nightly) ✅ success
Build each library ✅ success
Build benches ✅ success
Acceptance Tests ✅ success
Fuzz Corpus Replay ✅ success

@keithamus
keithamus merged commit 989e458 into main Jul 5, 2026
19 checks passed
@keithamus
keithamus deleted the csskit-derives-add-peek-skip-attribute branch July 5, 2026 15:45
github-actions Bot pushed a commit that referenced this pull request Jul 5, 2026
## [0.0.28] - 2026-07-05

### Css_ast
- csskit_derives: Add peek(skip) attribute (#1266) ([#1266](#1266))

### Css_lexer
- css_lexer/csskit: Implement LineIndex, precomputing line offsets (#1264) ([#1264](#1264))

[forcebuild]
@keithamus keithamus mentioned this pull request Jul 5, 2026
github-actions Bot pushed a commit that referenced this pull request Jul 5, 2026
## [0.0.28] - 2026-07-05

### Css_ast
- csskit_derives: Add peek(skip) attribute (#1266) ([#1266](#1266))

### Css_lexer
- css_lexer/csskit: Implement LineIndex, precomputing line offsets (#1264) ([#1264](#1264))
github-actions Bot pushed a commit that referenced this pull request Jul 6, 2026
## [0.0.28] - 2026-07-06

### Css_ast
- csskit_derives: Add peek(skip) attribute (#1266) ([#1266](#1266))
- Regenerate css_ast/src/values from csswg drafts (#1267) ([#1267](#1267))

### Css_lexer
- css_lexer/csskit: Implement LineIndex, precomputing line offsets (#1264) ([#1264](#1264))

[forcebuild]
github-actions Bot pushed a commit that referenced this pull request Jul 6, 2026
## [0.0.28] - 2026-07-06

### Css_ast
- csskit_derives: Add peek(skip) attribute (#1266) ([#1266](#1266))
- Regenerate css_ast/src/values from csswg drafts (#1267) ([#1267](#1267))

### Css_lexer
- css_lexer/csskit: Implement LineIndex, precomputing line offsets (#1264) ([#1264](#1264))
github-actions Bot pushed a commit that referenced this pull request Jul 6, 2026
## [0.0.28] - 2026-07-06

### Css_ast
- csskit_derives: Add peek(skip) attribute (#1266) ([#1266](#1266))
- Regenerate css_ast/src/values from csswg drafts (#1267) ([#1267](#1267))

### Css_lexer
- css_lexer/csskit: Implement LineIndex, precomputing line offsets (#1264) ([#1264](#1264))

### Csskit
- chore(deps): update dependencies (patch) (#1268) ([#1268](#1268))

### Csskit_vscode
- chore(deps): update dependency @types/node to v24.13.2 (#1269) ([#1269](#1269))
- chore(deps): update dependency @types/vscode to v1.125.0 (#1270) ([#1270](#1270))

[forcebuild]
github-actions Bot pushed a commit that referenced this pull request Jul 6, 2026
## [0.0.28] - 2026-07-06

### Css_ast
- csskit_derives: Add peek(skip) attribute (#1266) ([#1266](#1266))
- Regenerate css_ast/src/values from csswg drafts (#1267) ([#1267](#1267))

### Css_lexer
- css_lexer/csskit: Implement LineIndex, precomputing line offsets (#1264) ([#1264](#1264))

### Csskit
- chore(deps): update dependencies (patch) (#1268) ([#1268](#1268))

### Csskit_vscode
- chore(deps): update dependency @types/node to v24.13.2 (#1269) ([#1269](#1269))
- chore(deps): update dependency @types/vscode to v1.125.0 (#1270) ([#1270](#1270))
keithamus added a commit that referenced this pull request Jul 7, 2026
Some fields carry no semantic content of their own (e.g. a trailing `)` or `;`),
especially as they need to exist to be parsed. Much like
#1266 we need to introduce a new `skip`
attribute to allow fields to be skipped from codegen.

This change does just that: it adds `#[semantic_eq(skip)]` as a new attribute
that elides the codegen for that field. This change also adds this annotation in
a whole bunch of places. Lastly, in this process, I discovered that semantic_eq
wasn't actually correct for some fields (e.g. delims with specific whitespace
flags) and so that has also been fixed.
keithamus added a commit that referenced this pull request Jul 7, 2026
Some fields carry no semantic content of their own (e.g. a trailing `)` or `;`),
especially as they need to exist to be parsed. Much like
#1266 we need to introduce a new `skip`
attribute to allow fields to be skipped from codegen.

This change does just that: it adds `#[semantic_eq(skip)]` as a new attribute
that elides the codegen for that field. This change also adds this annotation in
a whole bunch of places. Lastly, in this process, I discovered that semantic_eq
wasn't actually correct for some fields (e.g. delims with specific whitespace
flags) and so that has also been fixed.
keithamus added a commit that referenced this pull request Jul 7, 2026
…#1272)

Some fields carry no semantic content of their own (e.g. a trailing `)`
or `;`),
especially as they need to exist to be parsed. Much like
#1266 we need to introduce a new
`skip`
attribute to allow fields to be skipped from codegen.

This change does just that: it adds `#[semantic_eq(skip)]` as a new
attribute
that elides the codegen for that field. This change also adds this
annotation in
a whole bunch of places. Lastly, in this process, I discovered that
semantic_eq
wasn't actually correct for some fields (e.g. delims with specific
whitespace
flags) and so that has also been fixed.
github-actions Bot pushed a commit that referenced this pull request Jul 7, 2026
## [0.0.28] - 2026-07-07

### Css_ast
- csskit_derives: Add peek(skip) attribute (#1266) ([#1266](#1266))
- Regenerate css_ast/src/values from csswg drafts (#1267) ([#1267](#1267))
- css_parse/csskit_derives: Add semantic_eq(skip) to derive(SemanticEq) (#1272) ([#1272](#1272))

### Css_lexer
- css_lexer/csskit: Implement LineIndex, precomputing line offsets (#1264) ([#1264](#1264))

### Csskit
- chore(deps): update dependencies (patch) (#1268) ([#1268](#1268))

### Csskit_vscode
- chore(deps): update dependency @types/node to v24.13.2 (#1269) ([#1269](#1269))
- chore(deps): update dependency @types/vscode to v1.125.0 (#1270) ([#1270](#1270))

[forcebuild]
github-actions Bot pushed a commit that referenced this pull request Jul 7, 2026
## [0.0.28] - 2026-07-07

### Css_ast
- csskit_derives: Add peek(skip) attribute (#1266) ([#1266](#1266))
- Regenerate css_ast/src/values from csswg drafts (#1267) ([#1267](#1267))
- css_parse/csskit_derives: Add semantic_eq(skip) to derive(SemanticEq) (#1272) ([#1272](#1272))

### Css_lexer
- css_lexer/csskit: Implement LineIndex, precomputing line offsets (#1264) ([#1264](#1264))

### Csskit
- chore(deps): update dependencies (patch) (#1268) ([#1268](#1268))

### Csskit_vscode
- chore(deps): update dependency @types/node to v24.13.2 (#1269) ([#1269](#1269))
- chore(deps): update dependency @types/vscode to v1.125.0 (#1270) ([#1270](#1270))
github-actions Bot pushed a commit that referenced this pull request Jul 8, 2026
## [0.0.28] - 2026-07-08

### Css_ast
- csskit_derives: Add peek(skip) attribute (#1266) ([#1266](#1266))
- Regenerate css_ast/src/values from csswg drafts (#1267) ([#1267](#1267))
- css_parse/csskit_derives: Add semantic_eq(skip) to derive(SemanticEq) (#1272) ([#1272](#1272))

### Css_lexer
- css_lexer/csskit: Implement LineIndex, precomputing line offsets (#1264) ([#1264](#1264))

### Csskit
- chore(deps): update dependencies (patch) (#1268) ([#1268](#1268))

### Csskit_vscode
- chore(deps): update dependency @types/node to v24.13.2 (#1269) ([#1269](#1269))
- chore(deps): update dependency @types/vscode to v1.125.0 (#1270) ([#1270](#1270))
- chore(deps): update dependency typescript to v7 (#1273) ([#1273](#1273))

[forcebuild]
github-actions Bot pushed a commit that referenced this pull request Jul 8, 2026
## [0.0.28] - 2026-07-08

### Css_ast
- csskit_derives: Add peek(skip) attribute (#1266) ([#1266](#1266))
- Regenerate css_ast/src/values from csswg drafts (#1267) ([#1267](#1267))
- css_parse/csskit_derives: Add semantic_eq(skip) to derive(SemanticEq) (#1272) ([#1272](#1272))

### Css_lexer
- css_lexer/csskit: Implement LineIndex, precomputing line offsets (#1264) ([#1264](#1264))

### Csskit
- chore(deps): update dependencies (patch) (#1268) ([#1268](#1268))

### Csskit_vscode
- chore(deps): update dependency @types/node to v24.13.2 (#1269) ([#1269](#1269))
- chore(deps): update dependency @types/vscode to v1.125.0 (#1270) ([#1270](#1270))
- chore(deps): update dependency typescript to v7 (#1273) ([#1273](#1273))
github-actions Bot pushed a commit that referenced this pull request Jul 9, 2026
## [0.0.28] - 2026-07-09

### Css_ast
- csskit_derives: Add peek(skip) attribute (#1266) ([#1266](#1266))
- Regenerate css_ast/src/values from csswg drafts (#1267) ([#1267](#1267))
- css_parse/csskit_derives: Add semantic_eq(skip) to derive(SemanticEq) (#1272) ([#1272](#1272))
- css_ast: Implement various shape functions for clip-path, etc (#1275) ([#1275](#1275))
- css_ast: Use blocks for Container & Style at rules (#1276) ([#1276](#1276))

### Css_lexer
- css_lexer/csskit: Implement LineIndex, precomputing line offsets (#1264) ([#1264](#1264))

### Csskit
- chore(deps): update dependencies (patch) (#1268) ([#1268](#1268))

### Csskit_vscode
- chore(deps): update dependency @types/node to v24.13.2 (#1269) ([#1269](#1269))
- chore(deps): update dependency @types/vscode to v1.125.0 (#1270) ([#1270](#1270))
- chore(deps): update dependency typescript to v7 (#1273) ([#1273](#1273))

[forcebuild]
github-actions Bot pushed a commit that referenced this pull request Jul 9, 2026
## [0.0.28] - 2026-07-09

### Css_ast
- csskit_derives: Add peek(skip) attribute (#1266) ([#1266](#1266))
- Regenerate css_ast/src/values from csswg drafts (#1267) ([#1267](#1267))
- css_parse/csskit_derives: Add semantic_eq(skip) to derive(SemanticEq) (#1272) ([#1272](#1272))
- css_ast: Implement various shape functions for clip-path, etc (#1275) ([#1275](#1275))
- css_ast: Use blocks for Container & Style at rules (#1276) ([#1276](#1276))

### Css_lexer
- css_lexer/csskit: Implement LineIndex, precomputing line offsets (#1264) ([#1264](#1264))

### Csskit
- chore(deps): update dependencies (patch) (#1268) ([#1268](#1268))

### Csskit_vscode
- chore(deps): update dependency @types/node to v24.13.2 (#1269) ([#1269](#1269))
- chore(deps): update dependency @types/vscode to v1.125.0 (#1270) ([#1270](#1270))
- chore(deps): update dependency typescript to v7 (#1273) ([#1273](#1273))
github-actions Bot pushed a commit that referenced this pull request Jul 10, 2026
## [0.0.28] - 2026-07-10

### Css_ast
- csskit_derives: Add peek(skip) attribute (#1266) ([#1266](#1266))
- Regenerate css_ast/src/values from csswg drafts (#1267) ([#1267](#1267))
- css_parse/csskit_derives: Add semantic_eq(skip) to derive(SemanticEq) (#1272) ([#1272](#1272))
- css_ast: Implement various shape functions for clip-path, etc (#1275) ([#1275](#1275))
- css_ast: Use blocks for Container & Style at rules (#1276) ([#1276](#1276))
- css_ast: Add more -moz-meter-* pseudo elements/classes (#1277) ([#1277](#1277))
- css_ast: Refactor and improve `@supports` parsing (#1278) ([#1278](#1278))
- css_ast: Implement fill & stroke (#1279) ([#1279](#1279))
- css_ast: Implement webkit-text-stroek (#1280) ([#1280](#1280))

### Css_lexer
- css_lexer/csskit: Implement LineIndex, precomputing line offsets (#1264) ([#1264](#1264))

### Csskit
- chore(deps): update dependencies (patch) (#1268) ([#1268](#1268))

### Csskit_vscode
- chore(deps): update dependency @types/node to v24.13.2 (#1269) ([#1269](#1269))
- chore(deps): update dependency @types/vscode to v1.125.0 (#1270) ([#1270](#1270))
- chore(deps): update dependency typescript to v7 (#1273) ([#1273](#1273))

[forcebuild]
github-actions Bot pushed a commit that referenced this pull request Jul 10, 2026
## [0.0.28] - 2026-07-10

### Css_ast
- csskit_derives: Add peek(skip) attribute (#1266) ([#1266](#1266))
- Regenerate css_ast/src/values from csswg drafts (#1267) ([#1267](#1267))
- css_parse/csskit_derives: Add semantic_eq(skip) to derive(SemanticEq) (#1272) ([#1272](#1272))
- css_ast: Implement various shape functions for clip-path, etc (#1275) ([#1275](#1275))
- css_ast: Use blocks for Container & Style at rules (#1276) ([#1276](#1276))
- css_ast: Add more -moz-meter-* pseudo elements/classes (#1277) ([#1277](#1277))
- css_ast: Refactor and improve `@supports` parsing (#1278) ([#1278](#1278))
- css_ast: Implement fill & stroke (#1279) ([#1279](#1279))
- css_ast: Implement webkit-text-stroek (#1280) ([#1280](#1280))

### Css_lexer
- css_lexer/csskit: Implement LineIndex, precomputing line offsets (#1264) ([#1264](#1264))

### Csskit
- chore(deps): update dependencies (patch) (#1268) ([#1268](#1268))

### Csskit_vscode
- chore(deps): update dependency @types/node to v24.13.2 (#1269) ([#1269](#1269))
- chore(deps): update dependency @types/vscode to v1.125.0 (#1270) ([#1270](#1270))
- chore(deps): update dependency typescript to v7 (#1273) ([#1273](#1273))
github-actions Bot pushed a commit that referenced this pull request Jul 25, 2026
## [0.0.28] - 2026-07-25

### Other Changes
- Chore(deps): update dependencies (patch) (#1300) ([#1300](#1300))

### Css_ast
- csskit_derives: Add peek(skip) attribute (#1266) ([#1266](#1266))
- Regenerate css_ast/src/values from csswg drafts (#1267) ([#1267](#1267))
- css_parse/csskit_derives: Add semantic_eq(skip) to derive(SemanticEq) (#1272) ([#1272](#1272))
- css_ast: Implement various shape functions for clip-path, etc (#1275) ([#1275](#1275))
- css_ast: Use blocks for Container & Style at rules (#1276) ([#1276](#1276))
- css_ast: Add more -moz-meter-* pseudo elements/classes (#1277) ([#1277](#1277))
- css_ast: Refactor and improve `@supports` parsing (#1278) ([#1278](#1278))
- css_ast: Implement fill & stroke (#1279) ([#1279](#1279))
- css_ast: Implement webkit-text-stroek (#1280) ([#1280](#1280))
- css_ast Implement grid functions, track, line, etc (#1281) ([#1281](#1281))
- css_ast/css_parse: Implement ToNormalisedValue trait (#1284) ([#1284](#1284))
- Regenerate css_ast/src/values from csswg drafts (#1285) ([#1285](#1285))
- Regenerate css_ast/src/values from csswg drafts (#1294) ([#1294](#1294))
- csskit_derives: Allow multiple fields to delegate metadata (#1295) ([#1295](#1295))
- css_parse: Reimplement computed value declaration peeking/parsing in DeclarationValue (#1298) ([#1298](#1298))
- css_parse: Refactor BumpBox into generic Arena allocating Box. (#1304) ([#1304](#1304))
- css_parse: Implement an Arena allocated Vec. (#1306) ([#1306](#1306))
- css_ast: Build out substitution function architecture (#1308) ([#1308](#1308))
- css_ast: Use Value/CalcableValue in most manual types (#1309) ([#1309](#1309))

### Css_feature_data
- Regenerate css_ast/src/values from csswg drafts (#1299) ([#1299](#1299))

### Css_lexer
- css_lexer/csskit: Implement LineIndex, precomputing line offsets (#1264) ([#1264](#1264))
- css_lexer: Use a boxed slice in LineIndex, dropping Bumpalo's Vec. (#1305) ([#1305](#1305))
- css_lexer: Implement fearless_simd paths for scanning (#1307) ([#1307](#1307))

### Css_parse
- fuzz: new parser findings 2026-07-13 (#1288) ([#1288](#1288))
- css_parse: Drop CursorSource trait (#1296) ([#1296](#1296))
- css_parse: Drop PreludeList, DeclarationRuleList (#1297) ([#1297](#1297))

### Csskit
- chore(deps): update dependencies (patch) (#1268) ([#1268](#1268))

### Csskit_derives
- csskit_derives: Ensure atom checks properly peek (#1282) ([#1282](#1282))

### Csskit_spec_generator
- csskit_spec_generator: Ensure property atoms includes the extra properties (#1283) ([#1283](#1283))

### Csskit_vscode
- chore(deps): update dependency @types/node to v24.13.2 (#1269) ([#1269](#1269))
- chore(deps): update dependency @types/vscode to v1.125.0 (#1270) ([#1270](#1270))
- chore(deps): update dependency typescript to v7 (#1273) ([#1273](#1273))
- chore(deps): update dependencies (patch) (#1286) ([#1286](#1286))
- chore(deps): update dependency oxlint to v1.69.0 (#1303) ([#1303](#1303))

[forcebuild]
github-actions Bot pushed a commit that referenced this pull request Jul 25, 2026
## [0.0.28] - 2026-07-25

### Other Changes
- Chore(deps): update dependencies (patch) (#1300) ([#1300](#1300))

### Css_ast
- csskit_derives: Add peek(skip) attribute (#1266) ([#1266](#1266))
- Regenerate css_ast/src/values from csswg drafts (#1267) ([#1267](#1267))
- css_parse/csskit_derives: Add semantic_eq(skip) to derive(SemanticEq) (#1272) ([#1272](#1272))
- css_ast: Implement various shape functions for clip-path, etc (#1275) ([#1275](#1275))
- css_ast: Use blocks for Container & Style at rules (#1276) ([#1276](#1276))
- css_ast: Add more -moz-meter-* pseudo elements/classes (#1277) ([#1277](#1277))
- css_ast: Refactor and improve `@supports` parsing (#1278) ([#1278](#1278))
- css_ast: Implement fill & stroke (#1279) ([#1279](#1279))
- css_ast: Implement webkit-text-stroek (#1280) ([#1280](#1280))
- css_ast Implement grid functions, track, line, etc (#1281) ([#1281](#1281))
- css_ast/css_parse: Implement ToNormalisedValue trait (#1284) ([#1284](#1284))
- Regenerate css_ast/src/values from csswg drafts (#1285) ([#1285](#1285))
- Regenerate css_ast/src/values from csswg drafts (#1294) ([#1294](#1294))
- csskit_derives: Allow multiple fields to delegate metadata (#1295) ([#1295](#1295))
- css_parse: Reimplement computed value declaration peeking/parsing in DeclarationValue (#1298) ([#1298](#1298))
- css_parse: Refactor BumpBox into generic Arena allocating Box. (#1304) ([#1304](#1304))
- css_parse: Implement an Arena allocated Vec. (#1306) ([#1306](#1306))
- css_ast: Build out substitution function architecture (#1308) ([#1308](#1308))
- css_ast: Use Value/CalcableValue in most manual types (#1309) ([#1309](#1309))

### Css_feature_data
- Regenerate css_ast/src/values from csswg drafts (#1299) ([#1299](#1299))

### Css_lexer
- css_lexer/csskit: Implement LineIndex, precomputing line offsets (#1264) ([#1264](#1264))
- css_lexer: Use a boxed slice in LineIndex, dropping Bumpalo's Vec. (#1305) ([#1305](#1305))
- css_lexer: Implement fearless_simd paths for scanning (#1307) ([#1307](#1307))

### Css_parse
- fuzz: new parser findings 2026-07-13 (#1288) ([#1288](#1288))
- css_parse: Drop CursorSource trait (#1296) ([#1296](#1296))
- css_parse: Drop PreludeList, DeclarationRuleList (#1297) ([#1297](#1297))

### Csskit
- chore(deps): update dependencies (patch) (#1268) ([#1268](#1268))

### Csskit_derives
- csskit_derives: Ensure atom checks properly peek (#1282) ([#1282](#1282))

### Csskit_spec_generator
- csskit_spec_generator: Ensure property atoms includes the extra properties (#1283) ([#1283](#1283))

### Csskit_vscode
- chore(deps): update dependency @types/node to v24.13.2 (#1269) ([#1269](#1269))
- chore(deps): update dependency @types/vscode to v1.125.0 (#1270) ([#1270](#1270))
- chore(deps): update dependency typescript to v7 (#1273) ([#1273](#1273))
- chore(deps): update dependencies (patch) (#1286) ([#1286](#1286))
- chore(deps): update dependency oxlint to v1.69.0 (#1303) ([#1303](#1303))
keithamus added a commit that referenced this pull request Jul 25, 2026
## [0.0.28] - 2026-07-25

### Other Changes
- Chore(deps): update dependencies (patch) (#1300)
([#1300](#1300))


### Css_ast
- csskit_derives: Add peek(skip) attribute (#1266)
([#1266](#1266))
- Regenerate css_ast/src/values from csswg drafts (#1267)
([#1267](#1267))
- css_parse/csskit_derives: Add semantic_eq(skip) to derive(SemanticEq)
(#1272) ([#1272](#1272))
- css_ast: Implement various shape functions for clip-path, etc (#1275)
([#1275](#1275))
- css_ast: Use blocks for Container & Style at rules (#1276)
([#1276](#1276))
- css_ast: Add more -moz-meter-* pseudo elements/classes (#1277)
([#1277](#1277))
- css_ast: Refactor and improve `@supports` parsing (#1278)
([#1278](#1278))
- css_ast: Implement fill & stroke (#1279)
([#1279](#1279))
- css_ast: Implement webkit-text-stroek (#1280)
([#1280](#1280))
- css_ast Implement grid functions, track, line, etc (#1281)
([#1281](#1281))
- css_ast/css_parse: Implement ToNormalisedValue trait (#1284)
([#1284](#1284))
- Regenerate css_ast/src/values from csswg drafts (#1285)
([#1285](#1285))
- Regenerate css_ast/src/values from csswg drafts (#1294)
([#1294](#1294))
- csskit_derives: Allow multiple fields to delegate metadata (#1295)
([#1295](#1295))
- css_parse: Reimplement computed value declaration peeking/parsing in
DeclarationValue (#1298)
([#1298](#1298))
- css_parse: Refactor BumpBox into generic Arena allocating Box. (#1304)
([#1304](#1304))
- css_parse: Implement an Arena allocated Vec. (#1306)
([#1306](#1306))
- css_ast: Build out substitution function architecture (#1308)
([#1308](#1308))
- css_ast: Use Value/CalcableValue in most manual types (#1309)
([#1309](#1309))


### Css_feature_data
- Regenerate css_ast/src/values from csswg drafts (#1299)
([#1299](#1299))


### Css_lexer
- css_lexer/csskit: Implement LineIndex, precomputing line offsets
(#1264) ([#1264](#1264))
- css_lexer: Use a boxed slice in LineIndex, dropping Bumpalo's Vec.
(#1305) ([#1305](#1305))
- css_lexer: Implement fearless_simd paths for scanning (#1307)
([#1307](#1307))


### Css_parse
- fuzz: new parser findings 2026-07-13 (#1288)
([#1288](#1288))
- css_parse: Drop CursorSource trait (#1296)
([#1296](#1296))
- css_parse: Drop PreludeList, DeclarationRuleList (#1297)
([#1297](#1297))


### Csskit
- chore(deps): update dependencies (patch) (#1268)
([#1268](#1268))


### Csskit_derives
- csskit_derives: Ensure atom checks properly peek (#1282)
([#1282](#1282))


### Csskit_spec_generator
- csskit_spec_generator: Ensure property atoms includes the extra
properties (#1283) ([#1283](#1283))


### Csskit_vscode
- chore(deps): update dependency @types/node to v24.13.2 (#1269)
([#1269](#1269))
- chore(deps): update dependency @types/vscode to v1.125.0 (#1270)
([#1270](#1270))
- chore(deps): update dependency typescript to v7 (#1273)
([#1273](#1273))
- chore(deps): update dependencies (patch) (#1286)
([#1286](#1286))
- chore(deps): update dependency oxlint to v1.69.0 (#1303)
([#1303](#1303))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant