Skip to content

csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation#734

Merged
keithamus merged 1 commit intomainfrom
csskit-ast-simplify-propertygroup-and-vendorprefixes-lookups-during-parse-meta-creation
Dec 22, 2025
Merged

csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation#734
keithamus merged 1 commit intomainfrom
csskit-ast-simplify-propertygroup-and-vendorprefixes-lookups-during-parse-meta-creation

Conversation

@keithamus
Copy link
Copy Markdown
Member

No description provided.

@keithamus keithamus enabled auto-merge (squash) December 22, 2025 11:26
Copy link
Copy Markdown

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All CI jobs have passed. Approving.

@keithamus keithamus merged commit 06e8d93 into main Dec 22, 2025
15 of 16 checks passed
@keithamus keithamus deleted the csskit-ast-simplify-propertygroup-and-vendorprefixes-lookups-during-parse-meta-creation branch December 22, 2025 11:32
@keithamus keithamus mentioned this pull request Dec 22, 2025
github-actions bot pushed a commit that referenced this pull request Dec 22, 2025
## [0.0.9] - 2025-12-22

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 22, 2025
## [0.0.9] - 2025-12-22

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 22, 2025
## [0.0.9] - 2025-12-22

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 22, 2025
## [0.0.9] - 2025-12-22

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 22, 2025
## [0.0.9] - 2025-12-22

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 22, 2025
## [0.0.9] - 2025-12-22

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 22, 2025
## [0.0.9] - 2025-12-22

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 22, 2025
## [0.0.9] - 2025-12-22

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 22, 2025
## [0.0.9] - 2025-12-22

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 22, 2025
## [0.0.9] - 2025-12-22

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 23, 2025
## [0.0.9] - 2025-12-23

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 23, 2025
## [0.0.9] - 2025-12-23

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 23, 2025
## [0.0.9] - 2025-12-23

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 23, 2025
## [0.0.9] - 2025-12-23

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 23, 2025
## [0.0.9] - 2025-12-23

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 23, 2025
## [0.0.9] - 2025-12-23

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 24, 2025
## [0.0.9] - 2025-12-24

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))
- csskit_ast: Significantly rework the selector engine. (#745) ([#745](#745))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 24, 2025
## [0.0.9] - 2025-12-24

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))
- csskit_ast: Significantly rework the selector engine. (#745) ([#745](#745))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 24, 2025
## [0.0.9] - 2025-12-24

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))
- csskit_ast: Significantly rework the selector engine. (#745) ([#745](#745))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))
- csskit_ast: Implement `:has()` (#746) ([#746](#746))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 24, 2025
## [0.0.9] - 2025-12-24

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))
- csskit_ast: Significantly rework the selector engine. (#745) ([#745](#745))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))
- csskit_ast: Implement `:has()` (#746) ([#746](#746))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 25, 2025
## [0.0.9] - 2025-12-25

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))
- csskit_ast: Significantly rework the selector engine. (#745) ([#745](#745))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))
- csskit_ast: Implement `:has()` (#746) ([#746](#746))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 25, 2025
## [0.0.9] - 2025-12-25

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))
- csskit_ast: Significantly rework the selector engine. (#745) ([#745](#745))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))
- csskit_ast: Implement `:has()` (#746) ([#746](#746))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 25, 2025
## [0.0.9] - 2025-12-25

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))
- csskit_ast: Significantly rework the selector engine. (#745) ([#745](#745))
- csskit_ast: Implement :size() pseudo (#748) ([#748](#748))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))
- csskit_ast: Implement `:has()` (#746) ([#746](#746))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 25, 2025
## [0.0.9] - 2025-12-25

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))
- csskit_ast: Significantly rework the selector engine. (#745) ([#745](#745))
- csskit_ast: Implement :size() pseudo (#748) ([#748](#748))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))
- csskit_ast: Implement `:has()` (#746) ([#746](#746))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 25, 2025
## [0.0.9] - 2025-12-25

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))
- csskit_ast: Significantly rework the selector engine. (#745) ([#745](#745))
- csskit_ast: Implement :size() pseudo (#748) ([#748](#748))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))
- csskit_ast: Implement `:has()` (#746) ([#746](#746))
- csskit_ast: Move CsskitAtomSet to own file (#749) ([#749](#749))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 25, 2025
## [0.0.9] - 2025-12-25

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))
- csskit_ast: Significantly rework the selector engine. (#745) ([#745](#745))
- csskit_ast: Implement :size() pseudo (#748) ([#748](#748))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))
- csskit_ast: Implement `:has()` (#746) ([#746](#746))
- csskit_ast: Move CsskitAtomSet to own file (#749) ([#749](#749))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 25, 2025
## [0.0.9] - 2025-12-25

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))
- csskit_ast: Significantly rework the selector engine. (#745) ([#745](#745))
- csskit_ast: Implement :size() pseudo (#748) ([#748](#748))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))
- csskit: Add a `tree` command which shows selector tree (#750) ([#750](#750))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))
- csskit_ast: Implement `:has()` (#746) ([#746](#746))
- csskit_ast: Move CsskitAtomSet to own file (#749) ([#749](#749))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 25, 2025
## [0.0.9] - 2025-12-25

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))
- csskit_ast: Significantly rework the selector engine. (#745) ([#745](#745))
- csskit_ast: Implement :size() pseudo (#748) ([#748](#748))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))
- csskit: Add a `tree` command which shows selector tree (#750) ([#750](#750))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))
- csskit_ast: Implement `:has()` (#746) ([#746](#746))
- csskit_ast: Move CsskitAtomSet to own file (#749) ([#749](#749))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 27, 2025
## [0.0.9] - 2025-12-27

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))
- csskit_ast: Significantly rework the selector engine. (#745) ([#745](#745))
- csskit_ast: Implement :size() pseudo (#748) ([#748](#748))
- css_lexer: Add DynAtomRegistry (#751) ([#751](#751))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))
- csskit: Add a `tree` command which shows selector tree (#750) ([#750](#750))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))
- csskit_ast: Implement `:has()` (#746) ([#746](#746))
- csskit_ast: Move CsskitAtomSet to own file (#749) ([#749](#749))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 27, 2025
## [0.0.9] - 2025-12-27

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))
- csskit_ast: Significantly rework the selector engine. (#745) ([#745](#745))
- csskit_ast: Implement :size() pseudo (#748) ([#748](#748))
- css_lexer: Add DynAtomRegistry (#751) ([#751](#751))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))
- csskit: Add a `tree` command which shows selector tree (#750) ([#750](#750))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))
- csskit_ast: Implement `:has()` (#746) ([#746](#746))
- csskit_ast: Move CsskitAtomSet to own file (#749) ([#749](#749))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 27, 2025
## [0.0.9] - 2025-12-27

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))
- csskit_ast: Significantly rework the selector engine. (#745) ([#745](#745))
- csskit_ast: Implement :size() pseudo (#748) ([#748](#748))
- css_lexer: Add DynAtomRegistry (#751) ([#751](#751))
- css_ast/csskit_spec_generator: Expand longhands in generator, not at runtime (#752) ([#752](#752))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))
- csskit: Add a `tree` command which shows selector tree (#750) ([#750](#750))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))
- csskit_ast: Implement `:has()` (#746) ([#746](#746))
- csskit_ast: Move CsskitAtomSet to own file (#749) ([#749](#749))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 27, 2025
## [0.0.9] - 2025-12-27

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))
- csskit_ast: Significantly rework the selector engine. (#745) ([#745](#745))
- csskit_ast: Implement :size() pseudo (#748) ([#748](#748))
- css_lexer: Add DynAtomRegistry (#751) ([#751](#751))
- css_ast/csskit_spec_generator: Expand longhands in generator, not at runtime (#752) ([#752](#752))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))
- csskit: Add a `tree` command which shows selector tree (#750) ([#750](#750))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))
- csskit_ast: Implement `:has()` (#746) ([#746](#746))
- csskit_ast: Move CsskitAtomSet to own file (#749) ([#749](#749))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 27, 2025
## [0.0.9] - 2025-12-27

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))
- csskit_ast: Significantly rework the selector engine. (#745) ([#745](#745))
- csskit_ast: Implement :size() pseudo (#748) ([#748](#748))
- css_lexer: Add DynAtomRegistry (#751) ([#751](#751))
- css_ast/csskit_spec_generator: Expand longhands in generator, not at runtime (#752) ([#752](#752))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))
- csskit: Add a `tree` command which shows selector tree (#750) ([#750](#750))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))
- csskit_ast: Implement `:has()` (#746) ([#746](#746))
- csskit_ast: Move CsskitAtomSet to own file (#749) ([#749](#749))
- csskit_ast: Ensure invalid selectors never match (#753) ([#753](#753))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 27, 2025
## [0.0.9] - 2025-12-27

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))
- csskit_ast: Significantly rework the selector engine. (#745) ([#745](#745))
- csskit_ast: Implement :size() pseudo (#748) ([#748](#748))
- css_lexer: Add DynAtomRegistry (#751) ([#751](#751))
- css_ast/csskit_spec_generator: Expand longhands in generator, not at runtime (#752) ([#752](#752))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))
- csskit: Add a `tree` command which shows selector tree (#750) ([#750](#750))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))
- csskit_ast: Implement `:has()` (#746) ([#746](#746))
- csskit_ast: Move CsskitAtomSet to own file (#749) ([#749](#749))
- csskit_ast: Ensure invalid selectors never match (#753) ([#753](#753))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 28, 2025
## [0.0.9] - 2025-12-28

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))
- csskit_ast: Significantly rework the selector engine. (#745) ([#745](#745))
- csskit_ast: Implement :size() pseudo (#748) ([#748](#748))
- css_lexer: Add DynAtomRegistry (#751) ([#751](#751))
- css_ast/csskit_spec_generator: Expand longhands in generator, not at runtime (#752) ([#752](#752))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))
- csskit: Add a `tree` command which shows selector tree (#750) ([#750](#750))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))
- csskit_ast: Implement `:has()` (#746) ([#746](#746))
- csskit_ast: Move CsskitAtomSet to own file (#749) ([#749](#749))
- csskit_ast: Ensure invalid selectors never match (#753) ([#753](#753))
- csskit_ast: build.rs to generate NodeId atoms in csskit_atom_set (#754) ([#754](#754))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 28, 2025
## [0.0.9] - 2025-12-28

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))
- csskit_ast: Significantly rework the selector engine. (#745) ([#745](#745))
- csskit_ast: Implement :size() pseudo (#748) ([#748](#748))
- css_lexer: Add DynAtomRegistry (#751) ([#751](#751))
- css_ast/csskit_spec_generator: Expand longhands in generator, not at runtime (#752) ([#752](#752))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))
- csskit: Add a `tree` command which shows selector tree (#750) ([#750](#750))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))
- csskit_ast: Implement `:has()` (#746) ([#746](#746))
- csskit_ast: Move CsskitAtomSet to own file (#749) ([#749](#749))
- csskit_ast: Ensure invalid selectors never match (#753) ([#753](#753))
- csskit_ast: build.rs to generate NodeId atoms in csskit_atom_set (#754) ([#754](#754))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 28, 2025
## [0.0.9] - 2025-12-28

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))
- csskit_ast: Significantly rework the selector engine. (#745) ([#745](#745))
- csskit_ast: Implement :size() pseudo (#748) ([#748](#748))
- css_lexer: Add DynAtomRegistry (#751) ([#751](#751))
- css_ast/csskit_spec_generator: Expand longhands in generator, not at runtime (#752) ([#752](#752))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))
- csskit: Add a `tree` command which shows selector tree (#750) ([#750](#750))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))
- csskit_ast: Implement `:has()` (#746) ([#746](#746))
- csskit_ast: Move CsskitAtomSet to own file (#749) ([#749](#749))
- csskit_ast: Ensure invalid selectors never match (#753) ([#753](#753))
- csskit_ast: build.rs to generate NodeId atoms in csskit_atom_set (#754) ([#754](#754))
- csskit_ast: Tidy up types, adding derives, removing dead code (#755) ([#755](#755))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 28, 2025
## [0.0.9] - 2025-12-28

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))
- csskit_ast: Significantly rework the selector engine. (#745) ([#745](#745))
- csskit_ast: Implement :size() pseudo (#748) ([#748](#748))
- css_lexer: Add DynAtomRegistry (#751) ([#751](#751))
- css_ast/csskit_spec_generator: Expand longhands in generator, not at runtime (#752) ([#752](#752))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))
- csskit: Add a `tree` command which shows selector tree (#750) ([#750](#750))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))
- csskit_ast: Implement `:has()` (#746) ([#746](#746))
- csskit_ast: Move CsskitAtomSet to own file (#749) ([#749](#749))
- csskit_ast: Ensure invalid selectors never match (#753) ([#753](#753))
- csskit_ast: build.rs to generate NodeId atoms in csskit_atom_set (#754) ([#754](#754))
- csskit_ast: Tidy up types, adding derives, removing dead code (#755) ([#755](#755))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 28, 2025
## [0.0.9] - 2025-12-28

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))
- csskit_ast: Significantly rework the selector engine. (#745) ([#745](#745))
- csskit_ast: Implement :size() pseudo (#748) ([#748](#748))
- css_lexer: Add DynAtomRegistry (#751) ([#751](#751))
- css_ast/csskit_spec_generator: Expand longhands in generator, not at runtime (#752) ([#752](#752))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))
- csskit: Add a `tree` command which shows selector tree (#750) ([#750](#750))
- csskit: improve `find` command (#756) ([#756](#756))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))
- csskit_ast: Implement `:has()` (#746) ([#746](#746))
- csskit_ast: Move CsskitAtomSet to own file (#749) ([#749](#749))
- csskit_ast: Ensure invalid selectors never match (#753) ([#753](#753))
- csskit_ast: build.rs to generate NodeId atoms in csskit_atom_set (#754) ([#754](#754))
- csskit_ast: Tidy up types, adding derives, removing dead code (#755) ([#755](#755))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
github-actions bot pushed a commit that referenced this pull request Dec 28, 2025
## [0.0.9] - 2025-12-28

### Css_ast
- css_ast: Re-work CssAtomSet to allow for vendor prefix bitflags (#716) ([#716](#716))
- css_ast: Add NodeKinds to CssMetadata (#719) ([#719](#719))
- css_parse/css_ast: Improve NodeWithMetadata to allow extracting self meta (#720) ([#720](#720))
- css_ast: Set DeclarationKind Shorthand/Longhand for known properties (#721) ([#721](#721))
- css_ast: Queryable now requires NodeWithMetadata<CssMetada>, derives default (#722) ([#722](#722))
- css_parse: Consume whitespace as trivia around non-descendant combinators (#723) ([#723](#723))
- csskit_ast: Rework matcher, using Metadata to propagate up SelectorRequirements (#725) ([#725](#725))
- css_ast/csskit_ast: Implement efficient attribute selectors via PropertyKind (#726) ([#726](#726))
- Regenerate css_ast/src/values from csswg drafts (#727) ([#727](#727))
- css_ast: Parse error on nested :has() (#739) ([#739](#739))
- css_ast: Rework CssMetadata to remove RuleKind (#740) ([#740](#740))
- css_ast: Ensure visit_declaration provides a QueryableNode (#741) ([#741](#741))
- css_ast: Implement @counter-style, @namespace (#742) ([#742](#742))
- css_ast/csskit_highlight/csskit_ast: Simplify code with visit_queryable_node (#743) ([#743](#743))
- csskit_ast: Significantly rework the selector engine. (#745) ([#745](#745))
- csskit_ast: Implement :size() pseudo (#748) ([#748](#748))
- css_lexer: Add DynAtomRegistry (#751) ([#751](#751))
- css_ast/csskit_spec_generator: Expand longhands in generator, not at runtime (#752) ([#752](#752))

### Css_parse
- csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) ([#733](#733))

### Csskit
- csskit_ast: Rewrite QuerySelector to use css_parse (#724) ([#724](#724))
- chore(deps): update dependencies (patch) (#728) ([#728](#728))
- csskit: Add a `tree` command which shows selector tree (#750) ([#750](#750))
- csskit: improve `find` command (#756) ([#756](#756))

### Csskit_ast
- csskit_ast: Remove :block psuedo class (#718) ([#718](#718))
- csskit_ast: Split matcher.rs into several files (#732) ([#732](#732))
- csskit_ast: Simplify PropertyGroup and VendorPrefixes lookups during parse/meta creation (#734) ([#734](#734))
- csskit_ast: Unify pseudo-class matching for nodes and declarations. (#735) ([#735](#735))
- csskit_ast: Improve :not & sibling selector matching (#736) ([#736](#736))
- csskit_ast: Optimise selector & attribute matching (#737) ([#737](#737))
- csskit_ast: Further improve :not() matching. (#738) ([#738](#738))
- csskit_ast: Implement `:has()` (#746) ([#746](#746))
- csskit_ast: Move CsskitAtomSet to own file (#749) ([#749](#749))
- csskit_ast: Ensure invalid selectors never match (#753) ([#753](#753))
- csskit_ast: build.rs to generate NodeId atoms in csskit_atom_set (#754) ([#754](#754))
- csskit_ast: Tidy up types, adding derives, removing dead code (#755) ([#755](#755))

### Csskit_vscode
- chore(deps): update dependency oxlint to v1.34.0 (#730) ([#730](#730))
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