You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
approval. Do not infer a shipped version or stable graduation from package metadata, generated
3559
3559
current-version prose, or roadmap completion labels.
3560
3560
3561
+
Tracked npm, Haxelib, Mix, and scoped-HXML versions are development sentinels. Semantic-release
3562
+
injects an exact version, tag, and source SHA only into temporary Reflaxe package staging; normal
3563
+
publication must leave the tested commit unchanged and must not create a release commit.
3564
+
3561
3565
## Test Status Summary
3562
3566
**See**: [`docs/03-compiler-development/testing-infrastructure.md`](docs/03-compiler-development/testing-infrastructure.md) - Complete test architecture and status
Copy file name to clipboardExpand all lines: CHANGELOG.md
+4-3Lines changed: 4 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -39,11 +39,12 @@
39
39
40
40
***release:** replace mutable manifest-owned version/generation state with a tag-owned SemVer policy core; delegate Conventional Commit classification to the pinned official analyzer, validate versions with locked `semver`, keep `0.x` breaking changes minor until an independently approved graduation change, and require a durable approval for every stable major.
41
41
***release:** replace the original single graduation-evidence gate with independent, dated per-major approval records; approval remains non-releasing, and a subsequent new breaking commit is required to derive the authorized stable major.
42
-
***release:**keep the existing version metadata, scoped HXML, and current-posture generator as a compatibility bridge while release artifacts migrate to deterministic staging; release policy no longer contains its file inventory or mutable current version.
42
+
***release:**replace tracked version/changelog generation and release commits with development sentinels plus temporary Reflaxe package staging; tags now identify the unchanged tested source commit.
43
43
***release:** make no-op semantic-release runs skip published-package verification; successful publication passes the exact newly created tag to the verifier instead of inferring a prior release from tracked package metadata.
44
-
***release:**verify the prepared release commit and package before tag creation, verify the tag and tagged generated state before GitHub publication, and validate the downloaded GitHub Release asset afterward; document fail-closed partial-publication recovery.
44
+
***release:**build the complete Haxelib package twice with a pinned canonical ZIP writer, require byte-identical output, validate safe layout/modes and staged source identity, smoke the exact ZIP, and publish its SHA-256 sidecar.
45
45
***docs:** reconcile current-facing release language with the real pre-1.0 lineage; label old `v1.0.x`/`v1.1.x` milestones as unshipped historical plans and point entrypoints to the canonical generated posture.
46
-
***test:** derive synthetic release versions independently of release policy so generation and staged-verification contracts remain valid after each real publication.
46
+
***test:** add adversarial release-artifact coverage for metadata mismatch, missing/unexpected/unsafe entries, duplicate names, symlinks, unsafe modes, and environment-independent archive bytes.
47
+
***generator:** resolve scaffold package URLs from staged release metadata or the source checkout's nearest immutable tag, never from tracked development sentinels.
47
48
***stdlib:** classify `haxe.io.Mime` and `haxe.io.Scheme` as verified official Haxe fallback modules; add runtime, snapshot, and source-versus-package coverage without duplicating their String enum-abstract definitions in the target stdlib.
48
49
***compiler:** preserve omitted Haxe method defaults from Reflaxe's typed `ClassFuncData` instead of always passing `nil`, and keep multi-expression constructor blocks grouped when they are assigned as values.
49
50
***stdlib:** enable all upstream `haxe.io.ArrayBufferView` and typed-array runtime specs through the official Haxe fallback; preserve shared Bytes views while keeping source and built-package output identical.
**[Haxe](https://haxe.org) -> [Elixir](https://elixir-lang.org) compiler for the BEAM ecosystem, with first-class [Phoenix](https://phoenixframework.org)/[LiveView](https://www.phoenixframework.org/liveview) support.**
14
14
Write application code in Haxe and compile to conventional Elixir shapes for pure Elixir/OTP services and Phoenix applications.
15
15
16
-
<!-- BEGIN GENERATED: release-posture -->
17
16
> [!WARNING]
18
-
> **Stability**: v0.14.25 is on the pre-1.0 (`v0.x`) release line.
17
+
> **Stability**: Reflaxe.Elixir is on the pre-1.0 (`v0.x`) release line.
19
18
> Breaking changes to documented stable surfaces use minor releases until an explicitly reviewed stable graduation.
20
19
> Some features remain experimental/opt-in; see [Known Limitations](docs/06-guides/KNOWN_LIMITATIONS.md) and [Versioning & Stability](docs/06-guides/VERSIONING_AND_STABILITY.md).
21
-
<!-- END GENERATED: release-posture -->
22
20
23
21
Immutable Git tags identify released versions. The
24
22
[release policy manifest](release/manifest.json) contains only release-line approvals; it is not a
@@ -110,6 +108,9 @@ The release zip is the normal consumer package. Reflaxe builds it from the check
110
108
sources and includes the generated `.cross.hx` files required by a single `-lib reflaxe.elixir`.
111
109
The `www.github.com` host is intentional: it lets Lix treat the file as a generic immutable HTTPS
112
110
archive instead of misclassifying the release URL as a GitHub source-repository dependency.
111
+
Each release also publishes a `.sha256` sidecar, and the ZIP embeds its exact version, tag, and source
112
+
commit. The release job builds the complete package twice and requires byte-identical output before
Copy file name to clipboardExpand all lines: haxelib.json
+2-2Lines changed: 2 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -10,9 +10,9 @@
10
10
"macro"
11
11
],
12
12
"description": "A Haxe compilation target for Elixir/BEAM enabling gradual typing in Phoenix applications with compile-time type-safe Ecto queries and HXX→HEEx template transformation.",
13
-
"version": "0.14.25",
13
+
"version": "0.0.0",
14
14
"classPath": "src",
15
-
"releasenote": "v0.14.25: See CHANGELOG.md",
15
+
"releasenote": "Development checkout; release metadata is injected during package staging",
0 commit comments