Skip to content

Releases: elixir-volt/volt

v0.17.10

Choose a tag to compare

@dannote dannote released this 17 Jul 13:17

Added

  • Allow Volt.NPM.install!/2 to consume package-owned npm_ex lockfiles for resolver-free deterministic installs.

Fixed

  • Preserve nested dependency versions when generating isolated runtime lockfiles.

v0.17.9

Choose a tag to compare

@dannote dannote released this 17 Jul 12:29

Added

  • Allow Volt.Test.ExUnit.install/1 to execute large suites once per file with granularity: :file.

v0.17.8

Choose a tag to compare

@dannote dannote released this 17 Jul 10:18

Improved

  • Rewrite production import labels from compact OXC parser events, avoiding full ESTree serialization for every compiled module.

v0.17.7

Choose a tag to compare

@dannote dannote released this 17 Jul 09:29

Improved

  • Render splice-only private templates through OXC's native pipeline to avoid repeated ESTree serialization for large generated entries.

v0.17.6

Choose a tag to compare

@dannote dannote released this 16 Jul 18:30

Fixed

  • Describe production build results with their strict Volt.Builder.Result, ManifestEntry, and OutputFile struct types.

v0.17.5

Choose a tag to compare

@dannote dannote released this 16 Jul 13:15

Added

  • JavaScript lint configuration accepts Oxlint environments such as :browser, :node, and :mocha.

v0.17.4

Choose a tag to compare

@dannote dannote released this 16 Jul 09:09

Added

  • Allow formatter and linter file discovery to override build :root, :sources, and :ignore independently.
  • Pass configured read-only, writable, and disabled globals to OXC linting.

v0.17.3

Choose a tag to compare

@dannote dannote released this 16 Jul 07:34

Added

  • Volt.Builder accepts importer-scoped package directories through :package_scopes.
  • Volt.NPM.install!/2 exposes isolated, npm_ex-backed package acquisition for frameworks and plugins.
  • Volt.Priv.render!/4 applies literal bindings and AST splices while preserving TypeScript for a subsequent Volt build.

Fixed

  • Preserve importer package scopes while resolving transitive package imports.
  • Invalidate cached Volt.Priv templates and compiled modules when their source changes.
  • Type-check the private test-entry splice placeholder without changing rendered output.

Changed

  • Require Elixir 1.18 and Erlang/OTP 27, and verify those minimum versions in CI.

v0.17.2

Choose a tag to compare

@dannote dannote released this 15 Jul 15:30

Added

  • Volt.Priv.js!/4 accepts AST-backed statement, property, and array-element splices for private JavaScript and TypeScript templates.

Changed

  • Generate configured JavaScript test imports from a private TypeScript template instead of concatenating virtual-entry source.
  • Require OXC 0.17.3.

v0.17.1

Choose a tag to compare

@dannote dannote released this 13 Jul 20:23

Fixed

  • Execute configured JavaScript test setup_files before each test module in both QuickBEAM and browser runners.
  • Resolve volt:test APIs through true virtual module IDs so they remain resolvable from virtual test entries.