Skip to content

Release 1.5.0: Crystal 1.21 support, compatibility chart, GitHub Actions CI - #1400

Merged
crimson-knight merged 1 commit into
masterfrom
release/v1.5.0
Aug 1, 2026
Merged

Release 1.5.0: Crystal 1.21 support, compatibility chart, GitHub Actions CI#1400
crimson-knight merged 1 commit into
masterfrom
release/v1.5.0

Conversation

@crimson-knight

Copy link
Copy Markdown
Member

Description of the Change

Caps off the Crystal 1.21 compatibility work (#1399, #1385, #1386, #1388, #1390, #1391, #1393) with a release:

  • Version 1.5.0 (minor: SecureHeaders template addition per security: add SecureHeaders pipe to default web pipeline #1390 review) and declared crystal >= 1.20.0, < 2.0 — the old >= 1.0.0 overstated what actually compiles.
  • COMPATIBILITY.md — measured chart of which Crystal builds which Amber (v1 releases and v2 betas), with the 1.21 break explained.
  • GitHub Actions CI — CircleCI has been failing at the checkout step (project deploy key) for weeks, on every PR; every other amberframework repo already runs GHA. Matrix: Crystal 1.20.3 + latest on Linux, latest on macOS, plus the postgres-backed granite build spec.
  • Worktree-safe build specs — the spec helper rewrote the generated app's amber dep to a literal ../../../amber, which only resolved when the checkout dir was named amber; now an absolute path to the checkout under test, so the granite build spec validates local code (previously it silently validated the last released tag).

Verification (Crystal 1.21.0)

  • Main suite: 487 examples, 0 failures (also green on 1.20.3)
  • Granite build spec: 8 examples, 0 failures — two full generated apps (slang + ecr) build and pass their own specs against this tree
  • v2 (v2-dev): 2320 examples, 0 failures on both 1.20.3 and 1.21.0 (no changes needed)

After merge: tag v1.5.0 + GitHub release.

…build specs

- Bump version to 1.5.0 and declare crystal >= 1.20.0 (the constraint
  >= 1.0.0 overstated what actually compiles).
- Add COMPATIBILITY.md documenting which Crystal versions build which
  Amber releases, with measured results for 1.20.3 and 1.21.0.
- Replace the dead CircleCI config's role with a GitHub Actions workflow:
  spec matrix on Crystal 1.20.3 + latest (Linux) and latest (macOS), plus
  the postgres-backed granite build spec. CircleCI has been failing at
  checkout for weeks and every other amberframework repo already runs
  GitHub Actions.
- Fix the generated-app amber dependency rewrite in the spec helpers to
  use an absolute path: the old ../../../amber literal only resolved when
  the checkout directory was named amber, so the granite build spec could
  never pass from a worktree or renamed CI checkout. It also means build
  specs now exercise the local framework rather than the last released
  tag. Verified: granite build spec 8/8, main suite 487/0 on 1.21.0.
@crimson-knight
crimson-knight merged commit 97b4523 into master Aug 1, 2026
0 of 3 checks passed
@crimson-knight
crimson-knight deleted the release/v1.5.0 branch August 1, 2026 18:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant