Project

Changelog

Notable user-facing changes to Genzimnify are documented here. Entries are organized by release and follow the Added, Changed, Fixed, and Removed categories where applicable.

Historical releases

Versions 1.0 and 1.1 predate the current release series. The original 1.0 source remains available in the archived repository.

2.0.3 — 2026-09-27

Added

  • gzim convert <file> --to <py|gzim> with sibling output, custom -o paths, explicit --force replacement, and source-file protection.
  • A limited Python-to-Genzimnify preview using Python's AST parser, lexical builtin mapping, escaped conflicting names, and source-located errors for unsupported syntax. Conversion parses input without executing it and validates generated Genzimnify before writing.
  • Conversion integration tests covering native and Python execution, overwrite protection, failure recovery, and CLI validation; Windows CI also runs the conversion suite.

Changed

  • The new conversion command reuses Python export and stages output before replacement. Existing emit-python and build commands retain their behavior.

Preview limitations

  • Python-to-Genzimnify conversion requires Python 3.8+ and supports a limited syntax subset. Imports, classes, decorators, async, comprehensions, and chained comparisons are not yet supported.
  • Conversion normalizes formatting and does not preserve comments. Generated programs follow native Genzimnify semantics; conversion is not a lossless round trip.

See conversion commands and supported syntax and builtin forms for details.

View the 2.0.3 release and downloads →

2.0.2 — 2026-09-27

Changed

  • The REPL now preserves session state while executing only newly submitted code, preventing earlier output and side effects from being replayed.
  • Package updates are staged before installation and replace an existing dependency only after the new copy has been resolved successfully.
  • CLI commands now reject unexpected trailing arguments instead of silently ignoring them.
  • The runtime, language server, and Python emitter now use a shared native version constant.

Fixed

  • Failed dependency additions now restore the previous project manifest, lockfile, and installed package.
  • The Nimble package manifest now uses a valid dependency declaration and correctly maps the gzimlsp source module to the gzim-lsp executable.
  • The Windows installer now uses a unique temporary archive path to avoid conflicts between concurrent installations.

Removed

  • Prebuilt Intel Mac (macOS x86_64) artifacts are no longer published. Version 2.0.1 is the final Intel Mac release; macOS support now targets Apple Silicon.

Quality assurance

  • Language-server integration tests now run in continuous integration.
  • Windows CI now compiles and starts gzim-lsp.
  • Release builds verify that the binary version matches the Git tag before artifacts are published.

View the 2.0.2 release and downloads →

2.0.1 — 2026-09-27

Added

  • Introduced explicit Python interoperability through the py.* namespace, including positional and keyword arguments and JSON-compatible value conversion.
  • Added project manifests, reproducible lockfiles, Git dependencies, local-path dependencies, and the add, install, remove, and packages commands.
  • Added package-aware module resolution under .gzim/packages.
  • Introduced the Genzimnify language mark and expanded Python-to-Genzimnify syntax comparisons.

Changed

  • Reorganized the documentation and README around installation, language usage, tooling, packages, and interoperability.
  • Replaced the documentation search modal with an inline search-results interface.

Fixed

  • Corrected release version metadata and refined release documentation.

View the 2.0.1 release →

2.0.0 — 2026-09-26

Added

  • Introduced the standalone gzim runtime, implemented in Nim and distributed as a native executable.
  • Added native values, collections, functions, generators, classes, exceptions, local modules, file operations, and standard-library modules.
  • Added gzim doctor for runtime and platform diagnostics.
  • Added optional Python export through gzim emit-python.
  • Added automated release archives, checksum generation, shell and PowerShell installers, and a Homebrew formula.

Changed

  • Normal program execution moved from Python source generation to direct evaluation by the native runtime.
  • gzim replaced genzimc as the primary user-facing command; the compiler remained available for compatibility and export workflows.
  • Python was no longer required for ordinary Genzimnify programs.

View the 2.0.0 release →

1.1.0 — 2026-09-25

Added

  • Replaced the original browser playground with Genzimnify Studio, including examples, live diagnostics, syntax highlighting, code completion, formatting, import and export, share links, autosave, themes, and a resizable console.
  • Introduced the first full documentation portal and reorganized generated API documentation.
  • Added regression coverage for invalid assignments, malformed control-flow blocks, parameter validation, argument ordering, multiline strings, and nested scopes.

Fixed

  • Improved multiline string emission and nested-function scope validation.
  • Improved compile-time diagnostics for invalid assignment targets, malformed try and match blocks, invalid parameter lists, and duplicate or misordered call arguments.
  • Made language-server tests portable across development environments.

View the 1.1 release commit →

1.0.0 — 2026-09-22

Added

  • Published the initial Genzimnify language implementation in Nim, including the lexer, parser, abstract syntax tree, semantic analyzer, Python emitter, source maps, and command-line interface.
  • Introduced the core language: bindings and constants, control flow, functions and generators, collections and comprehensions, classes and inheritance, exceptions, pattern matching, context managers, asynchronous syntax, type annotations, modules, and glow strings.
  • Added run, build, check, repl, and init workflows through genzimc.
  • Added a Tree-sitter grammar, syntax-highlighting queries, gzim-lsp, and a Zed development extension.
  • Added the original static browser playground, powered by the JavaScript transpiler and Pyodide.
  • Added language, compiler, and language-server test suites together with prebuilt development binaries.

Runtime model

  • Version 1.0 transpiled .gzim source to Python and required Python 3.10 or newer to execute programs.

View the archived 1.0 source →