Skip to content

Releases: kossnocorp/genotype

v0.15.0

13 Apr 03:42
bc1ee01

Choose a tag to compare

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...
Read more