hedgehog-extras: Supplemental library for hedgehog

[ apache, library, test ] [ Propose Tags ] [ Report a vulnerability ]

Supplemental library for hedgehog.


[Skip to Readme]

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.3.0.1, 0.3.0.2, 0.3.0.3, 0.4.0.0, 0.4.0.1, 0.4.1.0, 0.4.2.0, 0.4.3.0, 0.4.4.1, 0.4.5.1, 0.4.5.2, 0.4.6.0, 0.4.7.0, 0.4.7.1, 0.4.8.0, 0.5.0.0, 0.5.1.0, 0.6.0.0, 0.6.0.1, 0.6.0.2, 0.6.1.0, 0.6.2.0, 0.6.3.0, 0.6.4.0, 0.6.5.0, 0.6.5.1, 0.7.0.0, 0.8.0.0, 0.9.0.0, 0.10.0.0, 0.10.1.0 (info)
Change log CHANGELOG.md
Dependencies aeson (>=2.0.0.0 && <2.3), aeson-pretty (>=0.8.5 && <0.9), async (<2.3), base (>=4.12 && <4.23), bytestring (<0.13), containers (<0.9), deepseq (<1.6), Diff (<1.1), directory (<1.4), exceptions (<0.11), filepath (<1.6), hedgehog (<1.8), http-conduit (<2.4), lifted-async (<0.12), lifted-base (<0.3), mmorph (<1.3), monad-control (<1.1), mtl (<2.4), network (<3.3), process (<1.7), resourcet (<1.4), stm (<2.6), tar (>=0.7 && <0.8), tasty (<1.6), tasty-discover (>=5.0.2 && <5.3), tasty-hedgehog (<1.5), temporary (<1.4), text (<2.2), time (>=1.9.1 && <1.16), transformers (<0.7), transformers-base (<0.5), unliftio (<0.3), Win32 (>=2.5.4.1 && <2.15), yaml (<0.12), zlib (<0.8) [details]
License Apache-2.0[multiple license files]
Author IOHK
Maintainer operations@iohk.io
Uploaded by carbolymer at 2025-11-03T22:08:12Z
Revised Revision 1 made by ErikDeCastroLopo at 2026-03-30T00:45:47Z
Category Test
Source repo head: git clone https://github.com/input-output-hk/hedgehog-extras
Downloads 5918 total (114 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2025-11-03 [all 1 reports]

Readme for hedgehog-extras-0.10.1.0

[back to package description]

hedgehog-extras

Dependency Status CI

Supplemental library for hedgehog.

About

This library provides additional utilities and helpers for working with the Hedgehog property-based testing framework.

Installation

Add to your package.yaml or .cabal file:

dependencies:
  - hedgehog-extras

Releasing

This project has a hybrid automated/manual release flow:

Automatic Tagging (on main branch)

When you push a version bump to main, CI automatically creates a git tag:

  1. Update [CHANGELOG.md] to include the Unreleased changes in the changelog for the new version.
  2. Update hedgehog-extras.cabal and set version: to the new version
  3. Commit and push to main: git commit -m "Bump version to X.Y.Z.W" && git push origin main
  4. CI automatically creates and pushes tag vX.Y.Z.W
  5. The release workflow then runs automatically

Manual Tagging

Alternatively, you can manually create and push tags:

  1. Update hedgehog-extras.cabal with the new version
  2. Commit changes: git commit -m "Release X.Y.Z.W"
  3. Create tag: git tag -a vX.Y.Z.W -m "Release version X.Y.Z.W"
  4. Push both: git push origin main && git push origin vX.Y.Z.W

What Happens Automatically

When a tag is pushed (either automatically or manually), GitHub Actions:

  • Runs the full test suite across all platforms and GHC versions
  • Validates the cabal project with cabal check
  • Creates source distributions (cabal v2-sdist)
  • Uploads to Hackage as a candidate (requires HACKAGE_USER and HACKAGE_PASS secrets)
  • Generates release notes from git commit history
  • Creates a GitHub Release

Publishing the Hackage Candidate

After the workflow completes:

  1. Check the candidate at https://hackage.haskell.org/package/hedgehog-extras/candidates
  2. Test the candidate package
  3. When ready, publish it from the Hackage candidate page

Notes

  • The workflow is defined in .github/workflows/haskell.yml
  • Packages are uploaded as candidates, not published releases
  • Release notes are auto-generated from git commits since the last tag
  • The workflow requires HACKAGE_USER and HACKAGE_PASS repository secrets
  • Workflow requires contents: write permission (already configured)

License

Copyright 2025 Input Output Global, Inc.

Licensed under the Apache License, Version 2.0. See LICENSE for details.