Skip to content

haskell: publish the contract on Hackage after uploader approval. #11

Description

@jm9e

Current independent distribution deferral — 2026-09-26

The current contract is v0.3.0, including addressless Wire, full WireTree and explicit AddressedWire. Haskell's selected delivery route remains immutable public Git source, verified with a fresh public consumer; source publication run records that evidence. There is no missing Haskell native binding or claimed Hackage publication.

Hackage remains optional and account-permission-gated. Preserve the historical 403/uploader-rights evidence below; do not contact account owners, retry uploads or change the selected delivery route as part of this issue catch-up.

Remaining bounded packet

  • The account owner obtains uploader permission through Hackage's normal process, if Hackage publication is still wanted.
  • At that point, record the exact intended immutable contract/source version and package coordinates. Decide explicitly whether historical v0.1.0 is still the intended first upload or the current selected version is appropriate; do not silently publish an old archive as the current contract.
  • Verify that exact version's Cabal metadata, tests, source archive, license/provenance and clean extracted-package consumer without modifying an existing tag.
  • Publish through the established authorized account, then verify an anonymous public Hackage consumer without a Git override.
  • Record artifact/version/checksum and registry evidence before closure. Until then retain the working Git-source instructions.

This is independent of carrier/runtime/model adoption. Reciprocal current coordination: #42, #47, family index. No runtime ports or new source layout are introduced.

Historical issue record; current publication instructions are above

The bitspark-bitwire Haskell contract (module Bitwire) is implemented in immutable public v0.1.0. Cabal metadata/build/tests/source package and the extracted-package consumer passed.

The operator selected direct Git consumption as the current delivery path, deferring the Hackage uploader request until later. #16 documents Cabal source-repository-package pinned to release commit 9f45a2e and adds an anonymous public Git consumer with a fresh Cabal store to required CI. This route needs no Hackage uploader account.

This issue now tracks the deferred optional Hackage publication:

  • Implement and validate the native contract and source package.
  • Configure HACKAGE_AUTH_TOKEN.
  • Account owner obtains membership in Hackage's Uploaders group.
  • Publish the tested 0.1.0 source archive to Hackage.
  • Verify the public registry consumer without the Git override.

The first upload was refused with HTTP403 because the token's account lacks uploader permission: https://github.com/Bitspark/bitwire/actions/runs/35578334722 . Hackage asks the account owner to contact hackage-trustees@haskell.org. Do not retry until that authorization is available. Preserve the existing immutable source release.

Native package delivery does not claim Nightseam Haskell runtime adoption.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions