v1.5.0
The conservative Amber 1.x line for existing applications, with current Crystal compatibility and maintenance corrections.
Read the official GitHub release →Release notes · synchronized from GitHub
GitHub Releases remains the source of truth. This page turns those records into a dated, readable map of the stable framework, V2 web beta, and standalone CLI.
Current choices
The framework runtime and the CLI now have independent releases. Pick the framework line first; use the current CLI when creating a new V2 application.
The conservative Amber 1.x line for existing applications, with current Crystal compatibility and maintenance corrections.
Read the official GitHub release →The current V2 framework tag and release-gated ECR web path. It is a prerelease, but it is not a promise of a difficult rewrite before stable.
Test the supported web path →The current application generator and development command. Its release cycle is independent from the framework dependency in your app.
Read the official GitHub release →The word “beta,” unpacked
V2 is tagged as a prerelease while real applications test it in public. Routes, controllers, ECR views, configuration, schemas, WebSockets, jobs, and the clean web template form the web-framework core being release-gated.
Preview does not spread by association. Grant persistence and the static Asset Pipeline are part of the tested web path. Attachments, generated authentication and APIs, and native applications keep their own status.
V1 applications are not expected to be rewritten. Many ECR applications can begin—and some can finish—with the Amber version change in shard.yml. The migration guide identifies the bounded exceptions.
Synchronized history
Every entry links to its authoritative GitHub record. Expand an item here for the published release body.
Amber 2.0.0-beta.5 turns the V2 schema API into a contract the framework actually enforces. A controller declaration now owns request parsing, validation, typed access, response validation, content negotiation, and OpenAPI 3.1 output. The release also brings the optimized router and request path onto the V2 release line.
The existing params.validation API still compiles and runs. It is deprecated
so new work can use executable controller schemas, but upgrading to beta.5 does
not require rewriting every controller. Applications can update Amber, run
their existing tests, and then migrate one action at a time.
Amber does not plan to remove the deprecated validator before a later V2 minor such as 2.5. The exact removal release will be announced separately.
schema :action, SchemaClass enforces the declared request before the action
runs.validated_as(SchemaClass) exposes request-local typed values without
constructing and validating a second schema object.response_schema verifies the declared status, content type, and response
shape before delivery.Amber now supports JSON, XML, URL-encoded forms, multipart forms, and bounded CBOR request parsing. COSE Encrypt0 adds authenticated ChaCha20-Poly1305 encryption in both directions: Amber decrypts and authenticates the inbound request, applies its schema, and can authenticate and encrypt the response with a fresh nonce.
The request boundary fails explicitly for malformed documents, unsupported media, invalid values, unacceptable response formats, invalid declared responses, and temporarily unavailable encryption configuration.
The release candidate was tested on a DigitalOcean Basic one-shared-vCPU, 512-MB-class target with a separate load generator, 16 keep-alive connections, and seven rotating 15-second repetitions per scenario:
| Complete HTTP request path | Median requests/second |
|---|---|
| Generic JSON decode | 20,728 |
| Schema-validated JSON | 19,488 |
| Schema-validated CBOR | 21,742 |
| Authenticated COSE request and response | 14,443 |
All 7,974,608 retained requests returned HTTP 200. This is a synthetic in-memory acknowledgement workload without a database, TLS termination, external services, or HTML rendering. It measures framework, codec, and schema cost under constrained hardware; it is not a capacity promise for an arbitrary production application.
See
benchmarks/DIGITALOCEAN_SCHEMA_CONTRACT_ROUND27.md
for the complete method, ranges, before-and-after comparison, and evidence
paths.
Amber CLI 2.0.6 is the coordinated generator release for this beta:
brew install amberframework/amber_cli/amber_cli
amber new pet_tracker --type web
cd pet_tracker
shards install
amber assets check
amber generate scaffold Pet name:string:required species:string:required adopted:bool
amber database migrate
crystal spec
amber watch
The generated application uses ECR, Grant, SQLite, Micrate, local front-end
assets, executable HTML form schemas, and Amber 2.0.0-beta.5.
See the beta installation guide, migration guide, and schema guide.
Open the source release on GitHub →Amber 2.0.0-beta.4 connects the V2 web runtime to the deterministic asset compiler and closes the fresh-application path across macOS, Linux, Linux ARM64, and Windows CI.
The beta label applies to the Amber 2.0 release train. The supported surface is the ECR web application created by Amber CLI 2.0.5; native applications and authentication generators remain explicitly marked preview features.
asset_path, stylesheet, JavaScript/import-map, image, and favicon helpers with Subresource Integrity metadata.HEAD, and safe non-fingerprinted fallback behavior.AMBER_DATABASE_URL configuration with DATABASE_URL fallback for generated Grant applications.The release-gated path covers generation, dependency installation, asset compilation and verification, Grant/SQLite/Micrate migrations, resource scaffolds, specs, production compilation, server startup, the generated homepage, and live database CRUD.
Use Amber CLI 2.0.5 to create a new web application. See docs/beta-installation.md and docs/migration-guide.md in the repository for the reproducible install and upgrade procedures.
Full change: #1407
Open the source release on GitHub →Amber 2.0.0-beta.3 is the framework release for the database-backed web application that Amber CLI 2.0.4 generates by default. The supported path now includes Grant models, SQLite, Micrate migrations, and complete HTML resource scaffolds instead of stopping at a database-free homepage.
respond_with behavior is documented with executable examples.Install Amber CLI 2.0.4, then generate and migrate a real resource:
brew install amberframework/amber_cli/amber_cli
amber new pet_tracker --type web
cd pet_tracker
shards install
amber generate scaffold Pet name:string:required species:string:required adopted:bool
amber database migrate
crystal spec
amber watch
Open http://localhost:3000/pets. The generated model lives at
src/models/pet.cr, its SQL migration is under db/migrations/, and its ECR
form partial is src/views/pet/_form.ecr.
Amber CLI 2.0.4 ships release archives for Apple Silicon macOS, x86_64 Linux, and ARM64 Linux. Windows x86_64 generated web applications are compile-gated in CI; build the CLI from source on Windows for this beta.
See the beta installation guide and V1 to V2 migration guide.
Please report framework issues at https://github.com/amberframework/amber/issues and CLI/template/install issues at https://github.com/amberframework/amber_cli/issues.
Open the source release on GitHub →Crystal 1.21 enables multithreading by default, which made Process.fork a compile-time error — and broke compilation of every Amber app on Crystal 1.21.0+ (Error: Process fork is unsupported with multithreaded mode). This release restores compatibility and ships the security and performance work that had been waiting in review.
Amber::Cluster.fork no longer uses Process.fork (#1399) — cluster workers are spawned with Process.new (same mechanism as v2). process_count / master-worker semantics unchanged. Verified: framework specs, amber new → build → serve, and cluster mode with 2 workers, on Crystal 1.20.3 and 1.21.0.1.7.0-dev in framework dev-dependencies and the generated app template (#1399, supersedes #1394 — thanks @botantony). ameba ≤ 1.6.4 fails to build on Crystal 1.21, which broke shards install for new apps.COMPATIBILITY.md documents which Crystal versions build which Amber releases.>= 1.20.0, < 2.0 (previously >= 1.0.0, which overstated reality).amber encrypt no longer passes the editor command through a shell (#1388).MessageVerifier / MessageEncryptor reject malformed payloads with typed exceptions instead of raising IndexError (#1386).X-Content-Type-Options, X-Frame-Options, X-XSS-Protection, and Referrer-Policy out of the box, plugged above the Error pipe so 404/403 responses keep their headers; HSTS is opt-in (SecureHeaders.new(hsts: true)).amber to 1.4.1 exactly (the default for apps generated by older CLIs), change it to ~> 1.5.0 in shard.yml to build on Crystal 1.21.plug Amber::Pipe::SecureHeaders.new above plug Amber::Pipe::Error.new in your config/routes.cr to adopt it.Amber 2.0.0-beta.2 supersedes beta.1 for new Amber CLI web applications. It keeps the same public beta surface and fixes application startup on Crystal 1.21's default multithreaded runtime.
Process.fork reference with portable
process spawning.Install Amber CLI 2.0.2 or newer:
brew install amberframework/amber_cli/amber_cli
amber new my_app --type web
cd my_app
shards install
crystal spec
amber watch
The generated application pins amberframework/amber at 2.0.0-beta.2 and
uses ECR. Database drivers, persistence, auth, Grant, Gemma, Asset Pipeline,
and native application generation remain opt-in preview surfaces rather than
part of the core beta release gate.
See the beta installation guide and V1 to V2 migration guide.
Please report framework issues at https://github.com/amberframework/amber/issues and CLI/template/install issues at https://github.com/amberframework/amber_cli/issues.
Open the source release on GitHub →Amber V2's first public beta establishes a tested, documented path for creating an ECR web application with the standalone Amber CLI.
This is a prerelease. Expect breaking changes before Amber 2.0.0 and do not use it for production workloads that cannot tolerate them.
Install Amber CLI 2.0.2 or newer:
brew install amberframework/amber_cli/amber_cli
amber new my_app --type web
cd my_app
crystal spec
amber watch
See the beta installation guide for direct archives, checksums, update/uninstall steps, and troubleshooting.
amberframework/amber_cliRead the V1 to V2 migration guide before upgrading an existing application.
Persistence/auth/API-resource generators, Grant integration, Gemma attachments, the separate Asset Pipeline, and native app generation are not part of the core beta release gate. Intel macOS, Linux ARM64, and Windows do not have release-gated CLI archives in this beta.
Please report framework issues at https://github.com/amberframework/amber/issues and CLI/template/install issues at https://github.com/amberframework/amber_cli/issues.
Open the source release on GitHub →Content-Type header when application/json is the content type.Static pipeline slightly. When a directory is trying to be accessed but the trailing slash is not provided, the request will first redirect before returning a 404 if directory_listing is false (the default behavior). Previously, the redirect would have been skipped and just returned.Full Changelog: https://github.com/amberframework/amber/compare/v1.4.0...v1.4.1
Open the source release on GitHub →Full Changelog: https://github.com/amberframework/amber/compare/v1.3.2...v1.4.0
Open the source release on GitHub →Amber CLI 2.0.6 is the coordinated generator release for Amber
2.0.0-beta.5. Fresh web applications now use the framework's automatically
enforced schema contracts instead of constructing and validating a second
schema object inside each controller action.
amber new pet_tracker --type web
cd pet_tracker
shards install
amber assets check
amber generate scaffold Pet name:string:required species:string:required adopted:bool
amber database migrate
crystal spec
amber watch
The generated project pins canonical Amber 2.0.0-beta.5, uses ECR, Grant,
SQLite, Micrate, local front-end assets, and a manifest-backed asset pipeline.
PetSchema automatically to create and update
and read typed request-local values with validated_as(PetSchema).amber generate schema teaches the executable controller declaration as the
primary application path; direct construction remains available for isolated
schema unit tests.Amber's deprecated params.validation API remains functional. Existing Amber
applications can update the framework first, verify their current behavior,
and migrate validation one controller action at a time. CLI 2.0.6 changes new
generators; it does not force an existing application to regenerate its
controllers.
Windows remains a source-build compatibility path; this release publishes CLI archives for Apple Silicon macOS, x86_64 Linux, and ARM64 Linux.
Open the source release on GitHub →Amber CLI 2.0.5 makes production-safe static assets part of the same supported Amber V2 web-app path as Grant, Micrate, and SQLite. A fresh application starts with editable CSS, JavaScript, SVG, and font locations; a deterministic asset manifest; manifest-aware ECR helpers; and browser-correct production headers.
amber new pet_tracker --type web
cd pet_tracker
shards install
amber assets check
amber generate scaffold Pet name:string:required species:string:required adopted:bool
amber database migrate
crystal spec
amber watch
Open http://127.0.0.1:3000/ and http://127.0.0.1:3000/pets. The homepage
uses the same Amber design language as the framework site and references
fingerprinted files from public/assets/manifest.json.
amber assets build for deterministic fingerprinting and
amber assets check for strict release verification.app/assets/; generated files under
public/assets/ are ignored and may be rebuilt at any time.amber watch, including
file additions, changes, and deletions.make setup now fails visibly when
dependencies cannot install instead of hiding the error.Grant, SQLite, Micrate migrations, and generated HTML resource CRUD remain the default persistence contract from CLI 2.0.4. Native applications, authentication generators, and generated APIs remain preview surfaces.
Open the source release on GitHub →Amber CLI 2.0.4 makes persistence part of the supported Amber V2 web-app path. A new application includes Grant ORM, SQLite, typed database settings, and Micrate-powered database commands by default.
amber new pet_tracker --type web
cd pet_tracker
amber generate scaffold Pet name:string:required species:string:required adopted:bool
amber database migrate
amber watch
Open http://127.0.0.1:3000/pets/new. The generated resource includes a Grant
model, request schema, HTML CRUD controller, ECR views, specs, resource route,
and reversible SQL migration. SQLite keeps the first run self-contained; pass
-d pg or -d mysql to amber new for a server database.
config/database.cr.amber database for migrations, status, rollback, redo,
reset, and seeding.Amber V2 native applications, generated authentication, and generated APIs remain preview surfaces in this release.
Open the source release on GitHub →Amber CLI 2.0.3 is the supported standalone CLI for Amber
2.0.0-beta.2. This patch brings the generated web application into the same
visual and front-end language as the Amber V2 website.
brew install amberframework/amber_cli/amber_cli
amber --version
Direct release assets are provided for Apple Silicon macOS and x86_64 Linux.
Download the matching .tar.gz and .sha256 files and verify the checksum
before installing amber and amber-lsp.
amber new my_app --type web
cd my_app
crystal spec
crystal build src/my_app.cr -o bin/my_app
amber watch
See the web-app guide and generator support table.
Model, scaffold, API-resource, auth, and native app generators remain preview surfaces in this release.
Open the source release on GitHub →Amber CLI 2.0.2 is the supported standalone CLI for Amber
2.0.0-beta.2.
brew install amberframework/amber_cli/amber_cli
amber --version
Direct assets are provided for Apple Silicon macOS and x86_64 Linux. Download
the matching .tar.gz and .sha256 files and verify the checksum before
installing amber and amber-lsp.
amberframework/amber at 2.0.0-beta.2.--no-deps keeps offline/CI control.[email protected] and exercises the
complete generated web-app path on both supported platforms.amber new my_app --type web
cd my_app
shards install
crystal spec
crystal build src/my_app.cr -o bin/my_app
amber watch
See the web-app guide and generator support table.
Model, scaffold, API-resource, auth, and native app generators remain preview surfaces in this release.
Open the source release on GitHub →