Skip to content

Make this package possible to depend on, and prove it in CI - #1

Merged
gHashTag merged 5 commits into
mainfrom
fix/manifest-0.15
Aug 11, 2026
Merged

Make this package possible to depend on, and prove it in CI#1
gHashTag merged 5 commits into
mainfrom
fix/manifest-0.15

Conversation

@gHashTag

Copy link
Copy Markdown
Owner

Nothing could consume this package, and nothing said so. Four faults in the manifest, any one fatal:

  • opened with { instead of .{
  • .name = zig_hdc where an enum literal .zig_hdc is required
  • no .fingerprint — 0.15 refuses the package without one
  • the dependency carried a url and no .hash

…plus addTest passed root_source_file, which stopped being a field of TestOptions in 0.15, so the build script itself failed to compile.

The repository had no CI at all, which is why all five sat here indefinitely — a library that reads as available and is not.

Now it builds and tests on 0.15.2, the version its consumer targets, and the three exported module names are asserted: a rename here is invisible until somebody else's build breaks.

The consumer is gHashTag/trinity, whose build has been failing since March partly because src/vsa.zig lives here now — its eleven consumers need all fourteen symbols this module exports, and no local copy has them all.

Nothing could consume zig-hdc, and nothing said so. Four separate faults, any
one of them fatal to a consumer:

  * build.zig.zon opened with { instead of .{
  * .name = zig_hdc where an enum literal .zig_hdc is required
  * no .fingerprint (0.15 refuses the package without one)
  * the dependency carried a url and no .hash

and in build.zig, addTest was passed root_source_file, which stopped being a
field of TestOptions in 0.15 -- so the build script itself failed to compile.

The repository had no CI at all, which is why all five sat here indefinitely: a
library that reads as available and is not. Now it builds and tests on the
version its consumer targets, and the three exported module names are asserted,
because a rename here is invisible until somebody else's build breaks.

The consumer is gHashTag/trinity, whose build has been failing since March
partly because src/vsa.zig lives here now. Its eleven consumers need all
fourteen symbols this module exports and no local copy has them all.
The hash pins a tarball of main, and main moved: gHashTag/zig-golden-float#95
fixed thirteen imports in src/root.zig that were written from the repository
root rather than from the file, so every consumer of that package was fetching
a module root that could not compile.
…dency

src/vsa.zig exported vsa/agent.zig, which imports five files under
src/vsa/agent/ that have never been tracked here and do not exist in
gHashTag/trinity either -- the repository the rest of this package came from.
So the facade was never buildable by anybody, and exporting it from the module
root made the whole package unbuildable for every consumer.

The file stays. Unreferenced sources are not compiled, and whether the agent
layer should be finished or dropped is a decision about this library rather
than a way to turn a build green.

Dependency re-pinned after gHashTag/zig-golden-float#96, which repaired two
more imports pointing at files that repository does not contain.
Every name resolved through vsa/agent.zig, whose five parts have never existed
in any repository, so none of these has ever been a symbol anybody could
reference.
…acade back

vsa/tests.zig imports agent.zig for four types, so including it pulled the dead
facade back into the compilation and took the package with it. Those tests have
never run -- the files they exercise do not exist -- so nothing that worked
stops working.
@gHashTag
gHashTag merged commit 2fc590e into main Aug 11, 2026
3 checks passed
@gHashTag
gHashTag deleted the fix/manifest-0.15 branch August 11, 2026 01:23
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