Agent skill

hackage-upload

Upload Haskell packages to Hackage. Use when the user asks to publish, release, or upload to Hackage.

Stars 163
Forks 31

Install this agent skill to your Project

npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/development/hackage-upload

SKILL.md

Hackage Upload

Instructions

When the user asks to publish or upload to Hackage:

  1. Get the current version from claude.cabal:

    bash
    grep "^version:" claude.cabal
    
  2. Create the source distribution:

    bash
    cabal sdist
    
  3. Upload to Hackage (replace X.Y.Z with actual version):

    bash
    cabal upload --publish dist-newstyle/sdist/claude-X.Y.Z.tar.gz
    

Pre-release checklist

Before uploading, ensure:

  • Version in claude.cabal has been bumped
  • CHANGELOG.md has an entry for this version
  • All tests pass (cabal test)
  • Code compiles without warnings (cabal build)

Notes

  • The --publish flag publishes immediately. Without it, the package is uploaded as a candidate.
  • You must have Hackage credentials configured (typically in ~/.cabal/config).
  • First-time uploads of a package require manual approval on Hackage.

Didn't find tool you were looking for?

Be as detailed as possible for better results