Skip to content

Latest commit

 

History

History
1213 lines (997 loc) · 77.6 KB

File metadata and controls

1213 lines (997 loc) · 77.6 KB

[0.0.20] - 2026-04-01

Css_ast

  • Regenerate css_ast/src/values from csswg drafts (#943) (#943)

Csskit

  • chore(deps): update dependencies (patch) (#944) (#944)

Csskit_lsp

  • csskit_lsp: Skip serializing None values for result/error in LSP messages. (#950) (#950)

Csskit_vscode

  • chore(deps): update dependency oxlint to v1.54.0 (#947) (#947)

[0.0.19] - 2026-03-24

Other Changes

  • Csskit-acceptance: Never skip tests (#916) (#916)
  • Chore(deps): update dependencies (patch) (#919) (#919)
  • Chore(deps): update dependencies (patch) (#929) (#929)
  • Chore(deps): update dependencies (patch) (#935) (#935)

Chromashift

  • chromashift: Add in_gamut_of(ColorSpace) to help guard minifying OOG. (#915) (#915)
  • chromashift/csskit_transform/css_ast: Implement colour mixing & minification (#924) (#924)

Css_ast

  • Regenerate css_ast/src/values from csswg drafts (#911) (#911)
  • Regenerate css_ast/src/values from csswg drafts (#918) (#918)

Csskit

  • chore(deps): update dependencies (patch) (#912) (#912)
  • Release v0.0.19 (#914) (#914)

Csskit_transform

  • Update css-minify-tests (#923) (#923)

Csskit_vscode

  • chore(deps): update dependency @types/node to v24.11.0 (#913) (#913)
  • chore(deps): update dependency @types/node to v24.12.0 (#921) (#921)
  • chore(deps): update dependencies to v1.50.0 (minor) (#920) (#920)
  • chore(deps): update dependency @types/vscode to v1.110.0 (#930) (#930)
  • chore(deps): update dependency oxlint to v1.51.0 (#938) (#938)
  • chore(deps): update dependency typescript to v6 (#940) (#940)

[0.0.18] - 2026-03-01

Other Changes

  • Chore(deps): update rust crate toml to v1 (#875) (#875)
  • Update css-tokenizer-tests (#887) (#887)
  • Chore(deps): update dependencies (patch) (#900) (#900)

Chromashift

  • chromashift: Update to support wide-gamut color spaces, out of gamut colors (#877) (#877)
  • chromashift: Implement css-color-4 raytrace gamut mapping (#879) (#879)
  • chromashift: Increase precision of display-p3 to sRGB conversion (#897) (#897)

Css_ast

  • css_ast: Implement gap rule list (#878) (#878)
  • Regenerate css_ast/src/values from csswg drafts (#881) (#881)
  • css_ast: Implement ColorMix (#889) (#889)
  • css_ast: Boxup more types (#890) (#890)
  • Implement ColorFunctionColor::to_chromashift() and extract shortest_color helper (#898) (#898)
  • Regenerate css_ast/src/values from csswg drafts (#899) (#899)
  • css_ast: Remove StringOrUrl type (#909) (#909)

Css_lexer

  • css_lexer: Introduce UnicodeRange token kind. (#891) (#891)
  • css_lexer: Add "Bad" tokens. (#892) (#892)
  • css_lexer: Re-encode escapes in strings if they're invalid for unescaping (#894) (#894)
  • css_lexer: Re-encode escapes in idents if they're invalid for unescaping (#896) (#896)
  • css_lexer: Rewrite to use Bytes, memchr (#907) (#907)

Css_parse

  • css_parse: Add BumpBox type and blanket trait impls for Box types (#888) (#888)
  • css_parse: flush trailing semicolons in CursorCompactWriteSink on drop (#908) (#908)

Csskit

  • chore(deps): update dependencies (patch) (#882) (#882)
  • Release v0.0.18 (#876) (#876)

Csskit_transform

  • csskit_transform: introduce css-minify-tests (#886) (#886)
  • csskit_transform: snapshot css-minify-tests failures instead of asserting count (#893) (#893)
  • csskit_transform: reduce Urls to Strings where possible (#910) (#910)

Csskit_vscode

  • chore(deps): update dependencies (minor) (#884) (#884)
  • chore(deps): update dependencies to v1.49.0 (minor) (#901) (#901)

[0.0.17] - 2026-02-11

Css_ast

  • css_ast: Uncomment FlexStyleValue (#860) (#860)
  • Regenerate css_ast/src/values from csswg drafts (#851) (#851)
  • css_ast: Add NormalOr<> generic. (#861) (#861)
  • css_ast: Enable FontFeatureSettingsStyleValue, FontVariationSettingsStyleValue (#862) (#862)
  • css_ast: Fixup container queries (#874) (#874)
  • css_ast: Support custom scroll state queries (#873) (#873)
  • Regenerate css_ast/src/values from csswg drafts (#863) (#863)

Csskit

  • chore(deps): update dependencies (patch) (#852) (#852)
  • Release v0.0.17 (#858) (#858)

Csskit_vscode

  • chore(deps): update dependency oxlint to v1.42.0 (#855) (#855)
  • chore(deps): update dependencies (patch) (#864) (#864)
  • chore(deps): update dependency oxlint to v1.43.0 (#867) (#867)
  • chore(deps): update dependency @types/vscode to v1.109.0 (#865) (#865)

[0.0.16] - 2026-01-29

Css_lexer

  • css_lexer: Compact String & URL tokens (#843) (#843)
  • csskit/css_lexer/css_parse: Add super secret hidden expand command (#846) (#846)

Csskit

  • Release v0.0.16 (#844) (#844)

Csskit_wasm

  • website/csskit-wasm: Support the format feature in the playground (#841) (#841)

[0.0.15] - 2026-01-28

Css_ast

  • css_ast/csskit_derives: Add derive(NodeWithMetadata) (#824) (#824)
  • css_ast/csskit_derive/csskit_proc_macro: Add "constrainable" generics. (#825) (#825)
  • css_ast/css_lexer: Preserve sign in an+b, otherwise compact (#828) (#828)
  • css_ast: Don't preserve sign for integer An+B selectors. (#829) (#829)
  • Regenerate css_ast/src/values from csswg drafts (#830) (#830)

Css_lexer

  • csskit_transform/css_lexer: Check compacted lengths to determine if replacement is shorter. (#827) (#827)
  • css_lexer: De-duplicate escape sequence consumption (#835) (#835)

Csskit

  • chore(deps): update dependencies (patch) (#831) (#831)
  • Release v0.0.15 (#826) (#826)

Csskit_vscode

  • chore(deps): update dependency oxlint to v1.40.0 (#834) (#834)

[0.0.14] - 2026-01-22

Other Changes

  • Coverage: Add :unknown coverage testing to all popular CSS libraries (#796) (#796)

Chromashift

  • chromashift: Fix lossy alpha conversions (#784) (#784)

Css_ast

  • Regenerate css_ast/src/values from csswg drafts (#789) (#789)
  • css_ast: Fixup MediaQueryList & ContainerConditionList to use CommaSeparated (#795) (#795)
  • css_ast: Add support for parsing @import rules (#797) (#797)
  • css_ast: enables <display> (#799) (#799)
  • css_ast/csskit_proc_macro: Provide system for easily renaming auto-generated types (#800) (#800)
  • Regenerate css_ast/src/values from csswg drafts (#801) (#801)
  • Regenerate css_ast/src/values from csswg drafts (#808) (#808)
  • csskit_transform: Reduce more color types (#818) (#818)
  • csskit_transform: Add ReduceTimeUnits transform (#819) (#819)
  • css_ast/css_transform: Only reduce lengths to unitless zero when applicable (#821) (#821)
  • csskit_spec_generator/css_ast: Generate many more values (#823) (#823)

Css_lexer

  • css_lexer/css_parse: Add SourceCursor compacting, ensure CursorCompactWriteSink compacts cursors before write (#782) (#782)

Css_parse

  • csskit/csskit_transform/css_parse: Improve transform architecture. Minify lengths (#815) (#815)

Csskit

  • chore(deps): update dependencies (patch) (#790) (#790)
  • Release v0.0.14 (#783) (#783)

Csskit_ast

  • csskit_ast: Add benchmarks for linting with example cks files (#788) (#788)

Csskit_transform

  • csskit_transform: Add Reduce colors (#816) (#816)

Csskit_vscode

  • chore(deps): update dependency oxlint to v1.36.0 (#791) (#791)
  • chore(deps): update dependency @types/vscode to v1.108.1 (#803) (#803)
  • chore(deps): update dependency oxlint to v1.38.0 (#805) (#805)
  • chore(deps): update dependencies (patch) (#802) (#802)
  • fix(deps): update dependencies (patch) (#809) (#809)
  • chore(deps): update dependency oxlint to v1.39.0 (#811) (#811)
  • chore(deps): update dependency prettier to v3.8.0 (#813) (#813)

Csskit_wasm

  • website: fix pages deploy (#807) (#807)
  • csskit_wasm: Use minifier transform architecture (#817) (#817)

[0.0.13] - 2026-01-03

Csskit

  • csskit_ast: Fix up feature flag issues (#780) (#780)
  • Release v0.0.13 (#781) (#781)

[0.0.12] - 2026-01-02

Csskit

  • csskit: Resolve platform binary using a directory walk, fixing npx. (#771) (#771)
  • csskit: Tidy up bash script (#772) (#772)
  • Release v0.0.12 (#773) (#773)

[0.0.11] - 2025-12-30

Chromashift

  • csskit_highlight/csskit/chromashift: Support owo-colors (#766) (#766)

Css_ast

  • Regenerate css_ast/src/values from csswg drafts (#760) (#760)

Csskit

  • fix(deps): update dependencies (patch) (#761) (#761)
  • csskit_ast/csskit: Implement Rule sheets, csskit check command (#769) (#769)
  • Release v0.0.11 (#763) (#763)

Csskit_vscode

  • chore(deps): update dependency oxlint to v1.35.0 (#762) (#762)

[0.0.10] - 2025-12-28

Css_ast

  • csskit_ast: Ensure build script is isolated (#758) (#758)

Csskit

  • Release v0.0.10 (#759) (#759)

[0.0.9] - 2025-12-28

Css_ast

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

Css_parse

  • csskit_ast: Optimise QuerySelectorComponent matching with single-pass… (#733) (#733)

Csskit

  • csskit_ast: Rewrite QuerySelector to use css_parse (#724) (#724)
  • chore(deps): update dependencies (patch) (#728) (#728)
  • csskit: Add a tree command which shows selector tree (#750) (#750)
  • csskit: improve find command (#756) (#756)
  • Release v0.0.9 (#717) (#717)

Csskit_ast

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

Csskit_vscode

  • chore(deps): update dependency oxlint to v1.34.0 (#730) (#730)

[0.0.8] - 2025-12-20

Css_ast

  • Regenerate css_ast/src/values from csswg drafts (#686) (#686)
  • css_ast: Implement @starting-style (#693) (#693)
  • css_parse: Ensure Parser restores Skip/Stop/State flags (#698) (#698)
  • css_parse: Ensure trailing/leading descendant combinators aren't parsed (#699) (#699)
  • css_ast/css_parse: Properly handle parse failures for unknown Rules vs Declarations (#700) (#700)
  • Regenerate css_ast/src/values from csswg drafts (#701) (#701)
  • css_ast: Implement exit_* methods alongside visit_* methods (#706) (#706)
  • csskit_source_finder: Capture more node types (e.g. manual Visitable impls) (#707) (#707)
  • css_ast: add exit_* calls to container nodes (#708) (#708)
  • css_ast: derive(ToSpan) on more nodes (#709) (#709)
  • css_ast: Implement Visitable for media query features (#710) (#710)
  • css_ast: Make Supports & Container features visitable (#711) (#711)
  • css_ast: Add QueryableNode trait for NodeIds (#712) (#712)
  • css_ast: Make container/supports nodes queryable (#713) (#713)
  • csskit: add csskit find, csskit_ast (#715) (#715)

Css_parse

  • css_parse: elide more whitespace in CursorCompactWriteSink (#694) (#694)

Csskit

  • Release v0.0.8 (#689) (#689)

Csskit_vscode

  • chore(deps): update dependency oxlint to v1.31.0 (#688) (#688)
  • chore(deps): update dependency prettier to v3.7.4 (#691) (#691)
  • chore(deps): update dependency oxlint to v1.32.0 (#704) (#704)
  • chore(deps): update dependency @types/vscode to v1.107.0 (#703) (#703)
  • chore(deps): update dependencies (patch) (#702) (#702)

Csskit_wasm

  • wasm: use cursor compact write sink for minification (#692) (#692)

[0.0.7] - 2025-12-06

Other Changes

  • Generate-values: clean up old generate values code (#620) (#620)
  • Chore(deps): update dependencies (patch) (#630) (#630)
  • Chore(deps): update rust crate syn to v2.0.110 (#659) (#659)
  • Chore(deps): update dependencies (patch) (#677) (#677)

Css_ast

  • css_ast: Add more atoms, , (#622) (#622)
  • Regenerate css_ast/src/values from csswg drafts (#624) (#624)
  • Regenerate css_ast/src/values from csswg drafts (#629) (#629)
  • css_ast/csskit_proc_macro: Support , literals better. (#638) (#638)
  • Introduce CssMetadata (#639) (#639)
  • Regenerate css_ast/src/values from csswg drafts (#640) (#640)
  • Implement IntoCursors/Copy for more single Cursor enums (#641) (#641)
  • Implement SemanticEq type for all nodes (#642) (#642)
  • Migrate codegen hashmaps to toml files (#643) (#643)
  • Add longhand/shorthands enumeration into Codegen (#644) (#644)
  • css_ast: Add num_sides method to BoxSides. (#645) (#645)
  • css_ast: Provide methods for getting StyleValue metadata by declaration ID. (#646) (#646)
  • Ensure longhands/shorthand_group values are more accurate and stable. (#648) (#648)
  • Regenerate css_ast/src/values from csswg drafts (#656) (#656)
  • Regenerate css_ast/src/values from csswg drafts (#663) (#663)
  • Regenerate css_ast/src/values from csswg drafts (#680) (#680)

Css_feature_data

  • Regenerate css_ast/src/values from csswg drafts (#649) (#649)

Css_parse

  • css_parse: impl Peek for Optionals (#626) (#626)

Csskit

  • npm: release architecture dependant packages. (#623) (#623)
  • csskit: ensure npm script is robust to symlinks (#637) (#637)
  • Release v0.0.7 (#621) (#621)

Csskit_spec_generator

  • csskit_spec_generator: Fork generate-values/mod.ts into Rust package (#619) (#619)
  • csskit_spec_generator: reinstate opt-outs for Parse impls (#627) (#627)
  • csskit_spec_generator: generate feature data in generate-all (#628) (#628)
  • csskit_spec_generator: disable benchmarks (#635) (#635)
  • csskit_spec_generator: Generate more descriptive PR bodies for weekly PR (#679) (#679)

Csskit_vscode

  • chore(deps): update dependency oxlint to v1.24.0 (#632) (#632)
  • chore(deps): update dependency @types/node to v24.9.1 (#631) (#631)
  • chore(deps): update dependencies (patch) (#650) (#650)
  • chore(deps): update dependency oxlint to v1.25.0 (#654) (#654)
  • chore(deps): update dependency @types/node to v24.10.0 (#652) (#652)
  • chore(deps): update dependencies (patch) (#657) (#657)
  • chore(deps): update dependency oxlint to v1.26.0 (#658) (#658)
  • fix(deps): update dependencies (patch) (#664) (#664)
  • chore(deps): update dependency oxlint to v1.27.0 (#667) (#667)
  • chore(deps): update dependency @types/vscode to v1.106.0 (#665) (#665)
  • chore(deps): update dependency oxlint to v1.29.0 (#676) (#676)
  • fix(deps): update dependencies (patch) (#673) (#673)
  • chore(deps): update dependency oxlint to v1.30.0 (#678) (#678)

[0.0.6] - 2025-10-26

Other Changes

  • Introduce new submodules for test coverage (#602) (#602)

Chromashift

  • Add a bunch of readmes and Cargo.toml descriptions for all released crates. (#613) (#613)

Css_ast

  • benchmarks: fix benchmark code (#607) (#607)

Css_value_definition_parser

  • csskit_proc_macro: move requires_allocator_lifetime & generated_data_type css_value_definition_parser (#609) (#609)
  • css_value_definition_parser: support quoted literal puncts, fixed groups (#611) (#611)

Csskit

  • release: tweak canary workflow (#610) (#610)
  • Release v0.0.6 (#618) (#618)

[0.0.5] - 2025-10-25

Other Changes

  • Update cargo deps (#493) (#493)
  • Remove rust-toolchain.toml (#491) (#491)
  • Refine & simplify readme (#558) (#558)
  • Version 0.0.4 (#565) (#565)
  • Csskit-acceptance: Get acceptance tests working again. (#566) (#566)
  • Fix link to csskit.rs in README. (#582) (#582)
  • Fixup cargo lock & toml (#592) (#592)
  • Inject package versions on each release (#594) (#594)
  • Fixup release-automation (#598) (#598)
  • Fixup release automation (#599) (#599)
  • Set initial tag in cliff.toml (#600) (#600)

Chromashift

  • fix failing actions (#508) (#508)
  • chromashift: Add ability to extract alpha, TryInto named color (#567) (#567)
  • chromashift: dont clamp xyz values (#584) (#584)
  • introduce package level changelogs (#593) (#593)
  • build a system for canary+release PRs (#595) (#595)

Css_ast

  • drop Build trait (#455) (#455)
  • Add #[in_range] as a generic attribute for both derive(Parse) and derive(Peek). (#456) (#456)
  • css_ast: derive(Parse) on more types (#457) (#457)
  • Replace miette diagnostics with custom Sized struct. (#470) (#470)
  • css_ast/css_parse/css_lexer: Add allocation tests (#472) (#472)
  • switch serde json snapshots to ron snapshots (#473) (#473)
  • drop tag/content strings from serde output (#474) (#474)
  • css_ast: tidy up mod/impl generation (#475) (#475)
  • css_ast: Use prelude pattern in types/functions (#476) (#476)
  • drop derives & ToCursors/ToSpan from _feature! macros (#477) (#477)
  • css_ast: add prelude for rules/mod.rs (#478) (#478)
  • css_ast: add prelude for units/*.rs (#479) (#479)
  • css_ast: remove content/kebab-casing from more serde types (#480) (#480)
  • Re-introduce string interning across codebase
  • css_ast/css_lexer: iterate over snapshots directory to produce snapshot data (#483) (#483)
  • update Rust 1.90.0 (#484) (#484)
  • coverage: add more css files to test (#485) (#485)
  • csskit_derives: Add support for deriving on generics (#496) (#496)
  • css_ast: derive(Parse) on more types (#497) (#497)
  • css_ast: Clean up a few nodes by using derive(Parse/Peek) (#498) (#498)
  • css_parse: add trivia output (#499) (#499)
  • css_parse: implement ordered cursor sink output (#500) (#500)
  • css_parse: Avoid having to manually flush Cursor Sinks by emitting Eof. (#501) (#501)
  • CI: test in nightly, make more build modes required (#503) (#503)
  • CI: try to get release builds working again (#504) (#504)
  • Regenerate css_ast/src/values from csswg drafts (#517) (#517)
  • remove the redundant prefix from Diagnostic codes (#526) (#526)
  • Regenerate css_ast/src/values from csswg drafts (#532) (#532)
  • Regenerate css_ast/src/values from csswg drafts (#537) (#537)
  • coverage: instate badly fetched files (#546) (#546)
  • css_ast: tidy up build files using prettyplease (#560) (#560)
  • css_ast: Gate Visit behind a feature flag (#562) (#562)
  • csskit_source_finder: Simplify build.rs files by passing DeriveInput instead of str. (#564) (#564)
  • Implement Iterator<Item = Cursor> for css_lexer, make Parser generic over this type (#563) (#563)
  • css_ast: Fix nightly build failures (#570) (#570)
  • css_ast: Ensure Length is always visitable via LengthPercentage (#568) (#568)
  • generate-values: sort types lexicographically (#588) (#588)
  • csskit_proc_macro: drop hardcoded types, rely on ast imports more (#589) (#589)
  • Leverage cargo-release for unified releases (#591) (#591)

Css_feature_data

  • Regenerate css_ast/src/values from csswg drafts (#458) (#458)
  • Regenerate css_ast/src/values from csswg drafts (#573) (#573)

Css_lexer

  • css_lexer: switch to using bumpalo::Vec over bumpalo::String (#502) (#502)
  • css_lexer: Allow custom allocators, drop bumpalo as a core dependency. (#519) (#519)
  • css_lexer: delegate Debug trait to underlying str (#521) (#521)
  • css_lexer: Optimize some hot paths (#549) (#549)
  • css_lexer: Gate tests that require serde on serde. (#559) (#559)

Css_parse

  • css_parse: align(64) diagnostic. (#471) (#471)
  • css_parse: drop peek_next/peek_including_white_space (#492) (#492)
  • css_parse: add Cursor buffer (#494) (#494)
  • css_parse: switch from p.peek:: to ::peek(p, p.next_n(1)) (#495) (#495)
  • css_parse: enable the bumpalo feature for css_lexer (#520) (#520)
  • css_parse: move CursorToSourceCursorSink to its own file (#572) (#572)

Css_value_definition_parser

  • csskit_proc_macro: Split def.rs into it's own library. (#590) (#590)

Csskit

  • csskit add dbg lex command (#548) (#548)

Csskit_highlight

  • csskit_highlight: require chromashift feature in css_ast (#513) (#513)
  • csskit_highlight: Fix AnsiHighlightCursorStream not separating tokens when needed (#585) (#585)

Csskit_proc_macro

  • csskit_proc_macro: remove dead code (#454) (#454)

Csskit_source_finder

  • csskit_source_finder: snapshot test the found results (#561) (#561)

Csskit_vscode

  • chore(deps): update dependencies (patch) (#459) (#459)
  • chore(deps): update dependency @types/node to v24.4.0 (#460) (#460)
  • chore(deps): update dependency oxlint to v1.15.0 (#464) (#464)
  • chore(deps): update dependency @types/vscode to v1.104.0 (#461) (#461)
  • chore(deps): update dependency oxlint to v1.16.0 (#488) (#488)
  • chore(deps): update dependency @types/node to v24.5.2 (#487) (#487)
  • fix(deps): update dependencies (patch) (#486) (#486)
  • chore(deps): update dependency @types/node to v24.6.2 (#535) (#535)
  • fix(deps): update dependencies (patch) (#533) (#533)
  • chore(deps): update dependency @types/node to v24.7.2 (#539) (#539)
  • chore(deps): update dependency @types/vscode to v1.105.0 (#540) (#540)
  • chore(deps): update dependency oxlint to v1.18.0 (#543) (#543)
  • update dependencies (patch) (#544) (#544)
  • chore(deps): update dependency oxlint to v1.22.0 (#579) (#579)
  • chore(deps): update dependency @types/node to v24.8.1 (#575) (#575)
  • chore(deps): update dependencies (patch) (#574) (#574)
  • chore(deps): update dependency oxlint to v1.23.0 (#580) (#580)

Derive_atom_set

  • derive_atom_set: optimise key lookup performance (#482) (#482)
  • derive_atom_set: use simpler from_le_bytes rather than bit shift loop (#545) (#545)

[0.0.2] - 2025-09-14

Other Changes

  • Add root license
  • Update snapshots
  • Update more snapshot
  • Update snapshots
  • Update coverage snapshots
  • Update snapshots
  • Update snapshots
  • Update the snaps
  • Update snaps
  • Remove empty error files
  • Uncomment run_paser...
  • Update snaps
  • Update the snaps
  • Cleanup last bumpalo/oxc_allocator migration
  • Update snapshots!
  • Mark some more files as parsable
  • Update snapshots!
  • Tick
  • Update snapshots!
  • Update deps
  • Foundation now parses
  • Add primer to test files
  • Gzip snapshots
  • Update snapshots!
  • Update snapshots!
  • Tick some boxes
  • Update dependencies (#19) (#19)
  • Update dependencies (#20) (#20)
  • Update dependencies (#21) (#21)
  • Update dependencies (#22) (#22)
  • Update Rust crate proc-macro2 to v1.0.85 (#23) (#23)
  • Update Rust crate clap to v4.5.6 (#24) (#24)
  • Update Rust crate clap to v4.5.7 (#26) (#26)
  • Update dependencies (#27) (#27)
  • Update dependencies (#28) (#28)
  • Update dependencies (#29) (#29)
  • Update dependencies (#31) (#31)
  • Update dependencies (#32) (#32)
  • Update dependencies (#38) (#38)
  • Update dependencies (#40) (#40)
  • Update dependencies (#41) (#41)
  • Update dependencies (#42) (#42)
  • Update dependencies (#43) (#43)
  • Update dependencies (#44) (#44)
  • Update Rust crate syn to v2.0.79 (#45) (#45)
  • Update Rust crate clap to v4.5.19 (#47) (#47)
  • Update dependencies (#48) (#48)
  • Update dependencies (#49) (#49)
  • Update dependencies (#51) (#51)
  • Update deps
  • Update dependencies (#54) (#54)
  • Update dependencies (#55) (#55)
  • Update dependencies (#56) (#56)
  • Update dependencies (#57) (#57)
  • Upgrade rust-toolchain to 1.83
  • (tasks) upgrade primer
  • Update submodules
  • Update dependencies
  • (cargo) update lock
  • Update dependencies (#58) (#58)
  • Create CODE_OF_CONDUCT.md
  • Create SECURITY.md
  • Create PRIVACY.md
  • Create CODEOWNERS
  • Chore(deps): update dependencies (#79) (#79)
  • (generate-values): fixup script
  • Chore(deps): update dependencies (#80) (#80)
  • Chore(deps): update dependencies (#81) (#81)
  • Chore(deps): update dependencies (#82) (#82)
  • Chore(deps): update dependencies (#83) (#83)
  • Chore(deps): update dependencies (#85) (#85)
  • Chore(deps): update dependencies (#86) (#86)
  • Chore(deps): update dependencies (#87) (#87)
  • Chore(deps): update dependencies (#88) (#88)
  • Chore(deps): update dependencies (#89) (#89)
  • Add note about rename to README.md (#93) (#93)
  • New logo, new site design (#95) (#95)
  • Chore(deps): update rust crate crossbeam-channel to v0.5.15 [security] (#100) (#100)
  • Chore(deps): update rust crate clap to v4.5.38 (#102) (#102)
  • Chore(deps): update dependencies (#103) (#103)
  • Chore(deps): update dependencies (#107) (#107)
  • Csskit_zed is in packages (#109) (#109)
  • Update deps (#116) (#116)
  • Sync rust's toolchain with mises' (#117) (#117)
  • Update deps (#215) (#215)
  • Generate-values: add grammars as comments to commented properties (#263) (#263)
  • Generate-values: refine heuristics for enum/struct determination (#272) (#272)
  • Chore(deps): update dependencies (patch) (#324) (#324)
  • Chore(deps): update rust crate phf to 0.13.0 (#328) (#328)
  • Chore(deps): update rust crate tracing-subscriber to v0.3.20 [security] (#346) (#346)
  • Chore(deps): update dependencies (patch) (#381) (#381)
  • Chore(deps): update rust crate string_cache to 0.9.0 (#387) (#387)

Chromashift

  • chromashift: Introduce chromeashift (#413) (#413)
  • chromashift: Ensure generic Color enum can into all, and all can Into (#415) (#415)
  • chromashift: Rename hsb to hsv, add Display trait, plus more Froms (#416) (#416)
  • Add a bunch of Readmes (#422) (#422)
  • csskit: Minor improvements to colors command: (#423) (#423)
  • css_lexer: mark a bunch of functions const (#429) (#429)

Css_ast

  • Extensively document and clean up css_lexer/css_parse (#78) (#78)
  • (ast/parser) move comma from compoundselector to selectorlist
  • chore: rename hdx to csskit (#92) (#92)
  • migrate & centralise types away from values (#97) (#97)
  • Run generate-values, update versions (#110) (#110)
  • Implementing <font-weight-absolute> (#62) (#62)
  • Implement more align types (#112) (#112)
  • add easing_function support (#114) (#114)
  • Implements glyph-orientation-vertical along with IntLiteral and DimensionLiteral value defs (#115) (#115)
  • Implements ordered combinators and uncomments some align properties (#113) (#113)
  • (css_parse, css_lexer) Deny warnings (#119) (#119)
  • more deny(warnings) (#122) (#122)
  • More deny warnings (#123) (#123)
  • Support + Define values with + syntax (#125) (#125)
  • drop empty scroll_animations mod (#126) (#126)
  • Further scope deny warnings in css ast (#127) (#127)
  • tidy up many warnings in css_ast types (#128) (#128)
  • Cargo fmt (#129) (#129)
  • Bookmark label scaffold out content list type (#130) (#130)
  • Add scroll-margin property (#131) (#131)
  • updat ui - appearance: base-select (#133) (#133)
  • clean up double comment (#134) (#134)
  • Update regions (#132) (#132)
  • Implements some font style values (#135) (#135)
  • Correctly handle parsing optional bounded types (#136) (#136)
  • Reintroduce derive(Parse/Peek/ToCursors) (#138) (#138)
  • implement a whole bunch of values (#141) (#141)
  • enable text-decoration-trim (#143) (#143)
  • enable cue-before, cue-after (#144) (#144)
  • enable text-emphasis-skip (#145) (#145)
  • (css_ast): add tests for zoom (#146) (#146)
  • (css_ast): Enable aspect-ratio (#147) (#147)
  • (css_ast): Implements <shadow> (#161) (#161)
  • Write blanket impls for more ToCursors types, and Derive ToCursors where we can
  • css_ast: derive ToCursors for many more types (#164) (#164)
  • css_ast/css_parse: derive ToCursors for many more types (#165) (#165)
  • Prefer From for Cursor (over <&T>), From<&T> for Span (over ) (#166) (#166)
  • implement IntoCursor derive (#167) (#167)
  • (css_ast): Implements transform (#162) (#162)
  • (css_ast): enable transform property (#169) (#169)
  • (csskit_derives): clean up derive code (#170) (#170)
  • (css_ast): refactors ::units::time to peek/parse slightly better (#172) (#172)
  • (css_ast): enables all transition properties (#171) (#171)
  • css_ast: make todo types use the Todo struct (#173) (#173)
  • css_ast: derive IntoSpan for all AST Nodes (#174) (#174)
  • (css_ast): enables <content-list> (#175) (#175)
  • Implement -moz- pseudo elements, and some blanket impls for Peek/Parse/ToCursors (#176) (#176)
  • (css_ast): enables <grid-line> (#180) (#180)
  • (css_ast): derive Parse for a few more Vec impls (#177) (#177)
  • Modify all Into/From for Span to ToSpan trait (#182) (#182)
  • uncomment and clean up Position tests (#183) (#183)
  • enable cargo clippy in CI (#186) (#186)
  • (css_ast): removes warnings from single_transition (#189) (#189)
  • (css_ast): fix <grid-line> optionals implementation (#188) (#188)
  • add comma separated struct (#185) (#185)
  • Introduces Optionals![A, B, ...] and uses them in a bunch of places (#181) (#181)
  • css_ast: zoom is not a set of optionals (#193) (#193)
  • Generate more data in style values, such as caniuse, baseline, browser versions, and comments. (#191) (#191)
  • clean up keyword_set!/*_feature!/pseudo_class!/pseudo_element! uses (#198) (#198)
  • Create Visitable derive macro, derive it everywhere. (#199) (#199)
  • csskit_proc_macro/css_ast: use heck for string transforms (#200) (#200)
  • css_ast: tidy up build script (#203) (#203)
  • css_ast: avoid Vec in Nth type (#201) (#201)
  • css_parse/css_ast: add vis + enum type for function_set! (#204) (#204)
  • css_parse/css_ast: add vis + enum type for atkeyword_set! (#205) (#205)
  • css_ast: use atkeyword_set, function_set a little more (#206) (#206)
  • css_parse/css_ast: make function/atkeyword newtype over their respective token macros (#207) (#207)
  • css_parse/css_ast/csskit_proc_macro: make keyword_set newtype over T![Ident] token macro (#208) (#208)
  • css_ast: support url()/src() functions in images (#209) (#209)
  • refactor many traits into generic structs (#210) (#210)
  • csskit_derives/css_ast: allow state/stop to be set in derive(parse) (#211) (#211)
  • css_parse/css_ast: move parsing steps for Declarations into parse (#212) (#212)
  • remove a couple of dbg!s (#225) (#225)
  • Regenerate css_ast/src/values from csswg drafts (#242) (#242)
  • css_parse/css_ast: move rule parsing steps into css_parse (#213) (#213)
  • Regenerate css_ast/src/values from csswg drafts (#244) (#244)
  • css_ast: move justify content and align items out of flex (#245) (#245)
  • css_ast: Implement text-combine-upright style value. (#247) (#247)
  • css_ast: Fixup Resolution unit (#249) (#249)
  • css_parse: Implement generic Function<FT, T> struct. (#250) (#250)
  • css_ast: Implement CursorStyleValue (#253) (#253)
  • remove dbg! in stylesheet.rs (#254) (#254)
  • optimise Alternatives of auto|<length(-percentage)> to <length(-percentage)-or-auto> (#255) (#255)
  • css_ast: Implement ScrollSnapTypeStyleValue, ScrollPaddingBlockStyleValue, ScrollPaddingInlineStyleValue (#258) (#258)
  • Implement TimeOrAuto, optimize for it in Defs, and uncomment AnimationDurationStyleValue. (#259) (#259)
  • Regenerate css_ast/src/values from csswg drafts (#260) (#260)
  • css_ast: fix popularity to 3dp (#264) (#264)
  • css_ast: Implement BoxShadowStyleValue, TextShadowStyleValue, TransformBoxStyleValue, OutlineStyleValue (#265) (#265)
  • css_ast/csskit_proc_macro: Implement border-clip & friends (#266) (#266)
  • css ast implement corner shape value (#267) (#267)
  • Regenerate css_ast/src/values from csswg drafts (#274) (#274)
  • css_ast: Implement AnimationNameStyleValue (#276) (#276)
  • Regenerate css_ast/src/values from csswg drafts (#278) (#278)
  • implement Peek for Nth (#284) (#284)
  • implement :heading (#285) (#285)
  • css_ast: Implement BorderImageRepeatStyleValue (#289) (#289)
  • css_ast: Implement BoxShadowPositionStyleValue (#290) (#290)
  • css_ast: Implement OverscrollBehaviorStyleValue (#291) (#291)
  • css_ast: Implement ScrollSnapAlignStyleValue (#292) (#292)
  • css_ast: Implement LinkParametersStyleValue (#293) (#293)
  • css_ast: Add contain keywords for width/height/etc (#294) (#294)
  • Regenerate css_ast/src/values from csswg drafts (#295) (#295)
  • css_ast: Refactor all functions into functions folder (#303) (#303)
  • Implement FontFamilyStyleValue (and FamilyName / GenericFamily types) (#304) (#304)
  • Implement BackgroundImageStyleValue, fixing up BgImage (#305) (#305)
  • Implement BackgroundSizeStyleValue (and BgSize) (#306) (#306)
  • Implement combined types NumberPercentage, NumberLength, NumberLengthOrAuto. (#307) (#307)
  • css_ast: Implement BorderImageOutsetStyleValue, ScaleStyleValue (#308) (#308)
  • css_ast: drop Default from Visit/VisitMut (#309) (#309)
  • css_ast/css_parse: Add new methods to DeclarationValue. (#316) (#316)
  • css_ast: Add transforms-2 functions. (#317) (#317)
  • Make all StyleValues visitable. (#318) (#318)
  • Do not generate function types within generate.rs, defer to hand coded types (#319) (#319)
  • Simplify Function<'a, FT, T> to Function<FT, T> (#320) (#320)
  • css_ast: Make a whole bunch of types Visitable (#321) (#321)
  • Regenerate css_ast/src/values from csswg drafts (#323) (#323)
  • csskit: Get basic fmt, minify commands working. (#335) (#335)
  • move tasks dir (#336) (#336)
  • Avoid css_lexer dep in downstream traits, clean up generic structs. (#337) (#337)
  • css ast drop css lexer as a dependency (#339) (#339)
  • css_ast: Introduce AutoOr, NoneOr, AutoNoneOr types. (#340) (#340)
  • css_ast: Tighten up transform functions (#342) (#342)
  • css_ast: Add assert_visits! test & some tests (#345) (#345)
  • Regenerate css_ast/src/values from csswg drafts (#348) (#348)
  • Drop derive()s from proc macro generation, add to mod.ts instead. (#349) (#349)
  • rename #[value()] to #[syntax()] (#350) (#350)
  • css_ast: Use #[syntax] for AnchorName (#351) (#351)
  • css_ast: Use #[syntax] for BgSize (#352) (#352)
  • css_ast: Use #[syntax] for FamilyName (#353) (#353)
  • css_ast: Use #[syntax] for FontWeightAbsolute (#354) (#354)
  • css_ast: Use #[syntax] for GenericFamily (#355) (#355)
  • css_ast: Improve dynamic-range-limit (#360) (#360)
  • css_ast: Refactor & simplify CornerShapeValue code (#363) (#363)
  • css_ast: Implement TryFrom for f32 for Auto/None/AutoOrNone types (#364) (#364)
  • Introduce ToNumberValue to aid in number checking code (#365) (#365)
  • css_ast: Genericise MIN for Visitable/VisitableMut on CommaSeparated<T, MIN> (#371) (#371)
  • css_ast: derive(Parse) on more types (#372) (#372)
  • Remove Parse impl generation from generate.rs. Rely on derive(Parse) as much as possible. (#376) (#376)
  • css_ast: Export apply_visit_methods (#377) (#377)
  • Implement (#379) (#379)
  • Regenerate css_ast/src/values from csswg drafts (#380) (#380)
  • css_ast: Add new CSS pseudo classes & elements. (#389) (#389)
  • css_feature_data: Add new css feature data! (#390) (#390)
  • css_lexer/css_parse: Introduce AssociatedWhitespaceRules (#393) (#393)
  • css_ast: Make a bunch of fields public. (#400) (#400)
  • csskit_proc_macro: Ensure AllMustOccur combinators at root annotate struct (#402) (#402)
  • css_ast: Clean up various types, using derive(Parse). (#403) (#403)
  • css_ast: Simplify ColorFunction by separating out into structs that can derive(Parse) (#405) (#405)
  • css_ast: Shrink color function size by using CommaOrSlash struct (#407) (#407)
  • css_ast: Implement normalisation of some values. (#408) (#408)
  • css_ast: Add chromashift support. (#414) (#414)
  • css_ast: Fix Oklab ToChromashift values (#417) (#417)
  • Regenerate css_ast/src/values from csswg drafts (#427) (#427)
  • Tidy up diagnostics, split them into respective crates (#448) (#448)
  • css_parse: drop parse! macro (#450) (#450)

Css_feature_data

  • css_feature_data: Ensure browserlist tests are feature gated (#406) (#406)
  • Regenerate css_ast/src/values from csswg drafts (#430) (#430)

Css_lexer

  • css_lexer: Fix ToSpan on Vec<'a, T: ToSpan> (#310) (#310)
  • css_lexer: Fix quote_style() (#329) (#329)
  • css_lexer: Allow String tokens to change quote style. (#330) (#330)
  • css_lexer: Ensure Span::DUMMY can be used without being added to (#341) (#341)
  • css_parse/css_lexer: Fix requiring whitespace between dimension and - (#388) (#388)
  • css_lexer: Refactor Token const to use const fn new_delim/new_delim_kind (#391) (#391)
  • css_lexer: Stop storing length in flags. (#392) (#392)
  • move SourceCursor into css_lexer & refine (#398) (#398)
  • css_lexer: Eagerly parse hex values & encode them in Token data (#399) (#399)
  • css_lexer: Fix hex_value parsing (#409) (#409)
  • css_lexer: clippy fix (#420) (#420)
  • release: 0.0.2 (#451) (#451)

Css_parse

  • css_parse: fix doc warnings (#120) (#120)
  • Enhances CI to also run doc builds (#168) (#168)
  • (css_ast): run cargo fmt (#178) (#178)
  • Implement asserting based on ast's (#184) (#184)
  • csskit_proc_macro: tidy up def.rs & break out into generate.rs (#197) (#197)
  • css_parse: implement singular function_set, Into::T![Function] (#251) (#251)
  • csskit_proc_macro: Generate empty CommaSeparated with new_in, not Default (#252) (#252)
  • css_parse: impl CursorSink for Vec (#311) (#311)
  • css_parse: Add SourceCursor, SourceCursorSink, impl SourceCursorSink for fmt::Write (#312) (#312)
  • css_parse: Rename CursorFmtSink to CursorWriteSink (#313) (#313)
  • css_parse: Introduce CursorPrettyWriteSink (#314) (#314)
  • css_parse: implement CursorOverlaySink (#315) (#315)
  • css_parse: Add parse! macro (#331) (#331)
  • css_parse: Normalize quote styles in CursorPrettyWriteSink (#332) (#332)
  • css_parse: Add CursorCompactWriteSink (#333) (#333)
  • css_parse: Use Span::DUMMY for Optionals (#343) (#343)
  • css_parse: Refactor assert_parse_span! (#344) (#344)
  • css_parse: Give CommaSeparated the ability to express minimums (#369) (#369)
  • css_parse: Allow CursorPrettyWriteSink/CursorCompactWriteSink to push to other sinks. (#396) (#396)
  • csskit_highlight/csskit: Introduce ansi colors (#397) (#397)
  • css_parse: drop debugs from parse_entirely (#418) (#418)

Csskit

  • update deps (#229) (#229)
  • csskit: Tidy up main.rs (#394) (#394)
  • csskit: Allow stdin as a file for fmt/min (#395) (#395)
  • csskit: Modularise commands (#404) (#404)
  • csskit: Tidy up commands more. (#412) (#412)
  • csskit: add new colo(u)rs command (#419) (#419)
  • csskit: colors command - Show line and column that a colour came from. (#421) (#421)

Csskit_derives

  • publish to crates.io also (#237) (#237)
  • csskit_proc_macro: Visit sub-types of StyleValues (#322) (#322)
  • csskit_proc_macro: Use csskit_derives::Peek instead of custom implementations (#347) (#347)
  • csskit_derives: Add a whole bunch of tests for csskit_derives (#356) (#356)
  • csskit_proc_macro/csskit_derives: Add #[parse(in_range=X..Y?)] syntax (#358) (#358)
  • csskit_proc_macro/csskit_derives: Implement AllMustOccur simple cases (#359) (#359)
  • csskit_derives: Add support for parsing as keyword (#361) (#361)
  • csskit_proc_macro: Use #[parse(keywords = )] annotation in #[syntax] when derive(Parse) (#362) (#362)
  • css_parse/csskit_proc_macro: Bring Optionals parsing into derive(Parse) (#367) (#367)
  • csskit_derives: Ensure parsing one_must_occur doesn't try to parse optionals (#368) (#368)
  • csskit_derives: Use syn "full" feature. (#410) (#410)

Csskit_highlight

  • csskit_highlight: disable bench (#196) (#196)
  • csskit_highlight: Add a whole bunch of tokens & styling. (#401) (#401)

Csskit_lsp

  • cargo update (#194) (#194)

Csskit_proc_macro

  • Update to 2024 Rust Edition (#118) (#118)
  • (css_proc_macro): Do not fallthrough when unreachable (#124) (#124)
  • Refactor def.rs for better codegen (#142) (#142)
  • csskit_proc_macro: Elide DefGroupStyle::None where possible in def parsing. (#243) (#243)
  • csskit_proc_macro: Ensure DefRange of Range is inclusive. (#246) (#246)
  • csskit_proc_macro: Refactor & simplify Def::Multiplier (#248) (#248)
  • csskit_proc_macro: Remove DefGroupStyle::Range/OneMustOccur, use Def::Multiplier instead (#256) (#256)
  • csskit_proc_macro: split out optimization pass of Def parsing, optimize more (#257) (#257)
  • csskit_proc_macro: Generate structs for multipliers of keywords (#268) (#268)
  • csskit_proc_macro: Generate sub-types where applicable (#273) (#273)
  • csskit_proc_macro: Refine generating subtypes (#275) (#275)
  • csskit proc macro properly gather required idents (#277) (#277)
  • csskit_proc_macro: implement bounded multiplier of keywords (#286) (#286)
  • csskit_proc_macro: Refine generation for bounded multiplier of keywords (#287) (#287)
  • csskit_proc_macro: Only add #[visit] attrs if derive(Visitable), avoid Parse impl if derive(Parse) (#357) (#357)
  • csskit_proc_macro: use #[parse] attrs for literal int/dimension types when derive(Parse) (#366) (#366)
  • csskit_proc_macro: Leverage CommaSeparated<_, MIN> in #[syntax] generation (#370) (#370)
  • csskit_proc_macro: Improve support for AllMustOccur with checks (#373) (#373)
  • csskit_proc_macro: ensure attrs expand to inner variants on enum (#375) (#375)
  • csskit_proc_macro: derive(Parse) for generated subtypes (#374) (#374)
  • csskit_proc_macro: move & split tests to test/test_generate, test/test_def (#378) (#378)

Csskit_vscode

  • fix(deps): update dependencies (#104) (#104)
  • chore(deps): update dependencies (#105) (#105)
  • chore(deps): update dependency oxlint to v1 (#106) (#106)
  • update csskit_vscode deps (#238) (#238)
  • Update dependencies (#262) (#262)
  • update deps (#271) (#271)
  • chore(deps): update dependencies (patch) (#281) (#281)
  • chore(deps): update dependency oxlint to v1.12.0 (#300) (#300)
  • chore(deps): update dependency @types/vscode to v1.103.0 (#298) (#298)
  • chore(deps): update dependency @types/node to v24.3.0 (#297) (#297)
  • fix(deps): update dependencies (patch) (#296) (#296)
  • chore(deps): update dependency oxlint to v1.13.0 (#384) (#384)
  • chore(deps): update dependency oxlint to v1.14.0 (#386) (#386)
  • fix(deps): update dependencies (patch) (#425) (#425)

Csskit_zed

  • fix repository org name (#98) (#98)
  • fix(deps): update dependencies (#101) (#101)
  • fix(deps): update rust crate zed_extension_api to 0.6 (#111) (#111)

Hdx

  • initial commit
  • add license
  • fix npm package
  • Rewrite Lexer & Parser (#1) (#1)
  • get 960gs working again
  • another round of improvements
  • tidy up a bunch
  • drop oxc_allocator, use Bumpalo with serde, upgrade deps
  • hack weekend
  • use criterion compare (#4) (#4)
  • Another big rewrite...
  • (writer) remove hdx_writer
  • (bin) apply changes from parser/ast
  • (derive) remove hdx_derive
  • clean up some dead code
  • Add Semantic Token Highlighting (#64) (#64)
  • Add hidden dbg parse command (#65) (#65)
  • (lsp) scaffold out basic lsp server (#69) (#69)
  • Impove highlighting (#72) (#72)
  • (lsp) rewrite LSP service using traits

Hdx_ast

  • add bordershorthand & linewidth
  • implement list-style shorthand
  • implement Quotes property
  • fixup broken @page rule parse/write
  • implement charset rule
  • add border shorthands
  • implement white-space and friends
  • Add more border property values
  • add page break values
  • rename some structs to be closer to CSS OM
  • remove redunant file
  • tweak seralisation
  • tidy up a bunch
  • a bunch more fixes that I can't be bothered to separate into individual commits
  • no more boxup
  • get a bunch more properties working
  • fix size test
  • first bit of media queries
  • work more on minification
  • fixup parser tests
  • partialeq
  • make a much nicer test harness and also add supports rules
  • drop empty style rules
  • fix font-size: 0
  • fix line-height: 0
  • support all descre media queries, add some webkit prefixes, and other stuff
  • better handling of non standard properties
  • clean up impl Value, use derive instead
  • add transition delay/duration
  • add opacity
  • Fix test-size-adjust
  • make a cleaner impl for parsing with state, using traits
  • rewrite selector parsing
  • smol tests
  • add font-style
  • add vendor prefixed font-smooth
  • ensure font-style inherits
  • add text-rendering nonstandard
  • Fix up combinator selector parsing
  • font-variant properties
  • quotes
  • borders
  • fixup display: list-item
  • serialize properties better
  • fixup erroneous serde flags
  • fix 960 parsing
  • fix aspec-ratio typo
  • drop NonStandard enum prefix
  • ranged media queries
  • media rules can nest
  • fix serde serializations
  • add -o- and -ms- vendor prefix selectors
  • add non-standard media features
  • add webkit-calendar-date-picker-indicator pseudo element
  • fixes to get boostrap working
  • add a bunch of rule todos, and implement Keyframes
  • more media features
  • yet more vendor pseudos
  • serialize supportscondition properly
  • add nesting combinator
  • dont swallow whitespace adjacent to nesting combinator
  • ensure style rules output sub-rules
  • ensure nesting combinator preserves prior descendant combinator
  • add some more nesting tests for good measure
  • rewrite media query parsing
  • get font-face kind of working
  • add supports for parsing IE Media Query hacks
  • tidy up (rustfmt and fix warnings)
  • fix primer parse issues
  • tidy up values & types. Get some more values parsing
  • add visitor pattern, add first transformer
  • Ci passing (#2) (#2)
  • add benchmarking (#3) (#3)
  • drop FromToken (#5) (#5)
  • Rewrite lexer (#50) (#50)
  • remove commented out code
  • (values) support for will-change
  • (values) AnimationName should be a struct
  • (values) support for animation-iteration-count
  • (ast/units) fixup Time unit parsing
  • (ast/values) use length-percentage for FloatOffset
  • (ast/types) fix parsing for position
  • (ast/types) fix parsing for gradient
  • (ast/types) fix parsing for absolutecolorfunction
  • (ast/types) add systemcolor keywords
  • (ast/values) implement some animation properties
  • cargo fmt
  • (ast/values) implement sizing properties
  • (ast/values) implement some overflow properties
  • (ast/values) properly test implemented align values
  • (proc_macro) optimize for bounded range syntax such {1,2}
  • (ast/values) implement padding/margin
  • (ast/values) position tests
  • (ast/values) implement a bunch of borders properties
  • (ast/values) implement some anchor position properties
  • (ast/values) implement some background properties
  • (ast/values) implement color Opacity value
  • (ast/values) implement some transition properties
  • (ast/values) implement some Content properties
  • (ast/values) implement some ScrollSnap properties
  • (ast/values) implement float properties
  • cargo fmt
  • (ast/values) implement logical properties
  • (ast/values) implement flex-basis property
  • (ast/selector) rewrite nth selector parsing
  • (ast/properties) fixup uknown property parsing
  • (ast/media) fixup media query parsing
  • (ast/media) extract condition parsing into trait
  • (ast/supports) fixup supports parsing, add selector()
  • (ast/stylerule) fixup stylerule parsing
  • cargo fmt
  • (ast/stylesheet) fixup error recovery on unknown rules
  • remove dbg!s
  • (ast/syntax) fix simpleblock parsing
  • (ast/syntax) fix nested simpleblock parsing
  • (ast/syntax) fix baddeclaration parsing
  • rename Token!/Delim!/Dimension! to T!
  • rename parser to p
  • remove unused discard! macro
  • cargo fix
  • (ast) reflect changes from parser+lexer
  • (ast) update snapshots
  • Disable pprof in windows (#59) (#59)
  • (ast) add support for @layer
  • (ast) add support for @document (and @-moz-document)
  • (ast) add color_hdr support (#61) (#61)
  • (ast) fix typo
  • (ast) implement @property rule parsing
  • (ast) rename all rule nodes to be suffixed "Rule"
  • (ast/parser) add support for @container queries
  • (ast) fix a couple of errors in @container serialization
  • update snapshots
  • re-enable a bunch of snapshot tests
  • Adds support for fixed ranges, like {2} (#63) (#63)
  • Resolve some windows ci failures (#60) (#60)
  • (ast) rename "Custom" to "CustomDimension"
  • clean up some warnings

Hdx_atom

  • peek at windows ci failures
  • (atom) drop debug message from build
  • (atom) drop debug message from build
  • (atom) drop debug message from build

Hdx_derive

  • (lexer) a lot more refinement+breaking changes
  • (derive) drop unused derives

Hdx_lexer

  • drop old symlink
  • rename Span up_to to until
  • rebuild snapshots
  • (lexer) fixup dimension numbers for small values
  • cleanup lexer benchmark
  • (lexer) fix eq_ignore_ascii_case
  • (lexer) fix eq_ignore_ascii_case

Hdx_lsp

  • fix: we cannot pprof in windows (#74) (#74)
  • (lsp) use string ropes for incremental edits, scoped per-file threads for parsing
  • (lsp) fix tests
  • (lsp) tidy up dead code
  • (lsp) get tracing working
  • (lsp) enable incremental text-sync

Hdx_parser

  • remove dbg! calls
  • fix bugged contentsvalue
  • ensure !important is output for properties including custom ones
  • remove debugs
  • clean up oxc_allocator in parser
  • (parser) avoid positive peeks for unknown dimension units
  • (parser) reflect changes to lexer
  • guard last_cursor behind debug assertions

Hdx_proc_macro

  • rebaseline proc_macro_tests
  • add missing snapshot
  • (proc_macro) get alternatives with multi-comma variants generating
  • (proc_macro) fixup #[initial] generation around smallvecs
  • (proc_macro) update snapshots
  • (proc_macro) relfect changes from parser/ast into proc_macro
  • (proc_macro) update snapshots

Hdx_syntax

  • (syntax) add some more consts

Hdx_transform

  • (transform) comment out transforms for now
  • (transform) tweak benchmark script to pass

Hdx_vscode

  • Update dependencies (#70) (#70)
  • Update dependency mocha to v11 (#71) (#71)
  • update package-lock files
  • feat: mvp zed extension going (#75) (#75)
  • (vscode) massively simplify extension
  • chore(deps): update dependencies (#84) (#84)
  • fix(deps): update dependencies (#91) (#91)

Hdx_wasm

  • (wasm) apply changes from parser/ast

Hdx_writer

  • restructure writer css values to match as file structure
  • implement writer for LineWidth

Hdx_zed

  • fix(deps): update dependencies (#77) (#77)