Files
parity-lib/CHANGELOG.md
T
Oleks 2201257e89 feat: shared per-archetype parity publish-app builders (v0.1.0)
Implements the shared parity flake-module library so the ~51 parity repos
consume one source of truth instead of hand-inlined publish shells.

- lib.mk{PyPiWheel,S390xNpm,GenericBinary,Nix2Container,GoBinary,Helm}Publish
  builders returning stage-<arch>/publish-<arch>/publish-index/publish/
  push-staged apps per the corrected emmett#44 standard (build-parity stages to
  ./.parity-stage with no registry contact; publish dry-runs by default;
  publish-index is build-free + fail-closed; :latest is the last digest copy).
- Shared ci/parity-lib.sh: token resolution ($REGISTRY_TOKEN + pass fallback,
  never printed), dev-tag guard, version derivation, dry-run gate, preflight.
- pipeline-doctor package/app asserting the parity contract (cluster #193).

Refs cluster #192, #193, #194, emmett#44.
2026-06-02 04:15:48 +03:00

1.6 KiB

Changelog

All notable changes to parity-lib are documented here. This project follows semantic versioning; the version is a conceptual tag (no git tag is created).

v0.1.0

Initial release (cluster #192/#193/#194, emmett#44).

  • lib.mkParityBuilders pkgs plus per-builder wrappers exposing the six archetype publish-app builders:
    • mkPyPiWheelPublish — single-arch Gitea PyPI wheel.
    • mkS390xNpmPublish — single-arch Gitea npm native addon.
    • mkGenericBinaryPublish — single-arch Gitea generic-registry binary.
    • mkGoBinaryPublish — alias of mkGenericBinaryPublish (explicit archetype).
    • mkNix2ContainerPublish — multi-arch OCI image with publish-index and :latest digest copy.
    • mkHelmPublish — Helm chart to an OCI registry.
  • Each builder returns flake apps following the corrected parity standard: stage-<arch> (build-parity, no registry), publish-<arch> (dry-run by default), publish-index (build-free, fail-closed multi-arch assembly via regctl), publish (all local arches + index + :latest last), and push-staged (replay ./.parity-stage).
  • Shared shell library ci/parity-lib.sh (token resolution with $REGISTRY_TOKEN + pass fallback and never printed, dev-tag guard, version derivation, the dry-run gate, registry preflight, stage-dir helpers).
  • packages.pipeline-doctor / apps.pipeline-doctor (cluster #193): static parity-contract checker that prints local-equivalent commands.
  • flake.lock fully pinned; nixpkgs follows the shared fleet-pins nixpkgs-ci.