Releases: kossnocorp/genotype
Releases · kossnocorp/genotype
v0.15.0
Features
- (syntax) [breaking] Change type assignment syntax from
=to:(ba5ffe5) - (rust) Trim Rust enum variant names with common prefix (closes #44) (c106119)
- (rust) Simpler Rust union literal variants (closes #41) (3e22812)
- (syntax) [breaking] Make commas required in objects (#23), allow assigning literal Rust enum variant names via attributes (e55d591)
- (rust) Use variant attr name for variants naming #23 (c583f99)
- (rust) Make all Rust enum variants accept variant attribute (closes #23) (61a4841)
- (rust) Assign Rust default variant with attribute, validate presence (closes #43) (6c5ae0a)
- (cli) Add version command to CLI (closes #30), allow setting global manifest version in config (6a081ec)
- (rust) Wrap recursive Rust types into Box (closes #10) (2bd0bba)
- (errors) Show error when trying to build with incorrect inline import (closes #33) (77680d1)
- (rust) Use ordered-float when Eq/Hash/Ord are defined in derives (closes #9) (eed49bc)
- (ts) [breaking] Use string for wide number types in TS (closes #8) (1079505)
- (cli) Add --config option to build command (50da5d7)
- (rust) Lock Rust edition, init new projects with 2024 edition (closes #57) (79c7cf6)
- (python) Add uv support for Python, upgrade Python to 3.13 (closes #48) (41675cb)
- (cli) Show help when called without a command (closes #14) (eceb68e)
- (ts) Implement Zod mode (closes #17) (255423f)
- (ts) Add prefer option to TS config to make render type aliases instead of interfaces (closes #63) (6b71d98)
- (vscode) Improve VS Code syntax grammar (8e9a999)
Bug Fixes
- (python) Fix cyclic refs in Python (closes #21) (38d9271)
- (python) Workaround schema property being defined in Pydantic's BaseModel (closes #12) (d0b57ca)
- (python) Fix self recursive references for legacy Python (closes #64) (b79ae45)
Show internal changes
Chores
- Refresh the dev env (f7a9514)
- Upgrade Pest (11b0dbb)
- Set up OpenCode (a062ad8)
- Add just-lsp to mise deps (524df0b)
- Make parser structs serializable, upgrade miette (36968bb)
- Migrate most of tests to snapshots (5f6160b)
- Use internal prelude in most parser modules (73dbc79)
- Add rust-toolchain.toml (8f5a817)
- Use Bacon for build-watch command (0d71ca8)
- Use indexmap internally to make snapshot tests more stable (69489f3)
- Add genotype_test crate with test helpers to simplify suite maintenance (8c7042e)
- Add watchexec to mise (238e99f)
- Add basic Sniper agent to limit discovery and focus on a single file (d40858c)
- Turn primitive into struct, add more test helpers (923af24)
- Manage pnpm with mise instead of corepack (d0dc853)
- Resolve cyclic dependencies in the litty crates (b1468c9)
- Add doc and attributes to GTReference (d87ed6e)
- Add doc and attributes to GTObject (91b202b)
- Add doc and attributes to GTArray, GTTuple, and GTInlineImport (0c49ee2)
- Add doc and attributes to GTRecord, GTBranded, and GTAny (497b129)
- Rename GtFactory to simple Gt, unify convert test helper names (5e88332)
- Add annotations to all descriptors when parsing #23 (a1f15d3)
- Add instruction to keep architecture hiccup records (cd70a59)
- Revamp visitors using macros instead of hand-written code (a50c6f9)
- Flatten pkgs structure (edcb0d7)
- Use Arc for node identifiers (1b52c2c)
- Set up Oxfmt (593e573)
- Add support for literal fields to Litty, set up docs, revamp API to use derives (bd81cb4)
- Use literal fields for structs, use revamped Litty API (3c14b5a)
- Ship litty@0.3.0 (f7c57ad)
- Set Genotype version to v0.15.0 (039ba53)
- Join parser tree modules (closes #53) (ed76793)
- Make type names follow Rust capitalization convention (closes #16) (7811f26)
- Make Litty use enum-unique helper type name ([de8a300](d...