Changelog for hedgehog-extras-0.10.1.0
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to the Package Versioning Policy (PVP).
Unreleased
[0.10.1.0] - 2025-11-03
Changed
- Updated dependency on tar ^>= 0.7
0.10.0.0 - 2025-09-09
Added
- Comprehensive CHANGELOG.md with complete project history
- Descriptive error messages for workspace test failures
- Sum type
WorkspacePolicyto replace boolean blindness inworkspaceWithConfig
Changed
workspaceWithConfignow usesWorkspacePolicyinstead ofBoolparameter- Improved error messages in workspace tests with specific failure contexts
- Updated documentation to reference Package Versioning Policy (PVP) instead of SemVer
0.9.0.0 - 2025-06-24
Changed
- Fix hanging problem with moduleWorkspace
Added
- Workspace behavior tests and improved workspace API
- Directory dependency to test suite
- GHC 9.8 to GHA build matrix
- Claude IDE command templates for git operations
Fixed
- Preserve workspace directories on test failure for debugging
0.8.0.0 - 2025-06-14
Added
- New
testUnitIOfunction
Changed
- Make binDist search components recursively
Removed
- Delete unused 'h' file
0.7.2.0 - 2025-06-07
Added
- MonadAssertion instance to UnitIO
0.7.1.0 - 2025-06-06
Added
- New assertion functions:
tryAssertion,assertFailureandassertFailure_ - Re-export MonadBaseControl, bracket_ and bracket
0.7.0.0 - 2024-12-24
Added
- Add
expectFailurecombinator - Add
expectFailureWithcombinator and tests - New UnitIO monad
- Thread safe golden test support
- Add diffVsGoldenFileExcludeTrace function
- Re-export Golden module from Test module
- Move orphans to own file
Changed
- Generalize resulting monad in
expectFailure - Define
expectFailurein terms ofexpectFailureWith - Haskell CI: reduce number of shellcheck warnings
- Haskell CI: simplify build workflow, using cardano-cli's CI as guidance
- Loosen base version, to allow building with GHC 9.12
- Align haddock pipeline with Haskell pipeline
- Make the GitHub page workflow manually triggerable (workflow_dispatch)
Fixed
- Fix haddock for
threadDelay - Fix haddock for
byDeadlineandbyDuration - Process: more informative error message when plan.json does not exist
- Detail: fix a warning in the Haskell pipeline
0.6.5.1 - 2024-11-20
Changed
- Enforce UTF-8 encoding on reading and writing files
0.6.5.0 - 2024-07-27
Added
- Make it build with ghc-9.10
- CI: Add ghc-9.10 to the build matrix
0.6.4.0 - 2024-05-16
Added
- Add missing
HasCallStackto writeGoldenFile, reportGoldenFileMissing, checkAgainstGoldenFile
Changed
- Use removePathForcibly to remove directories
0.6.3.0 - 2024-05-03
Added
- Add TestWatchdog and Tripwire with their tests
- Add test for asyncRegister_
Changed
- Switch to using haskell-actions/setup
- Allow the port to be reused immediately after it is closed
0.6.2.0 - 2024-04-23
Added
- New randomPort, reserveRandomPort and portInUse functions
Changed
- Apply suggestions from code review
- Remove double space and add quotes
0.6.1.0 - 2024-02-13
Added
- Add test to ensure a directory doesn't exist (
assertDirectoryMissing) - Add test to ensure a directory exists (
assertDirectoryExists)
Changed
- Allow reading files into any FromJSON
- Lower aeson bound
- #39 Lower bound on aeson
- Remove double printing of a command with its arguments
0.6.0.2 - 2024-01-29
Fixed
- Fix missing call sites for short-circuiting functions
0.6.0.1 - 2024-01-23
Fixed
- Fix missing stderr in failed commands
0.6.0.0 - 2024-01-16
Added
- Add exec variant that allows a negative call (#55)
- Add concurrency abstractions from lifted-async and lifted-base
0.5.1.0 - 2024-01-04
Added
- New RECREATE_GOLDEN_FILES which will causes golden tests to always create golden files replacing any existing golden files
Changed
- Use MultiwayIf to simplify code
0.5.0.0 - 2023-11-23
Added
- Add upper bound to tar
Changed
- Make it build with ghc-9.8
- CI: Add ghc-9.8.1 to build matrix
Removed
- Remove unused import
0.4.8.0 - 2023-11-21
Changed
- Make it build with ghc-9.8
- CI: Add ghc-9.8.1 to build matrix
Removed
- Remove unused import
0.4.7.1 - 2023-10-05
Removed
- Remove dependency on hw-aeson
0.4.7.0 - 2023-06-27
Added
- New indexM function
0.4.6.0 - 2023-06-19
Added
- Add a way to log golden files
- Create new process groups for newly spawned processes (#42)
0.4.5.1 - 2023-05-10
Fixed
- Fix empty case for diffVsGoldenFile
Changed
- Put the golden-file filename in the failure message of diffVsGoldenFile
0.4.5.0 - 2023-05-09
Added
- New downloadToFile function
- New downloadAndExtractGithubCommitToTemp
Fixed
- Fix annotation for renameFile
0.4.4.1 - 2023-05-05
Added
- Make it build with ghc-9.6
- CI: Add ghc-9.6.1 to build matrix
0.4.4.0 - 2023-05-04
Added
- Add extra assertion functions, fix readM to show correct line (#33)
Changed
- Tidy up imports
0.4.3.0 - 2023-05-03
Added
- Add assertWithinTolerance and readM
0.4.2.0 - 2023-04-28
Added
- New functions assertFileExists assertFileMissing assertFilesMissing
- New Hedgehog.Extras.Test.Golden module
Removed
- Delete assertFileExists from Network module because it doesn't belong here
Changed
- Use filepath operator (</>) over (<>) with "/"
[0.4.1.0] - 2023-04-12
Added
- New Ok versions of functions that require the operation to succeed
- New createSubdirectoryIfMissing function
Changed
- Modify createDirectoryIfMissing to return its argument. createDirectoryIfMissing_ will be the version that returns ()
Fixed
- Fix compile errors
[0.4.0.1] - 2023-03-06
Fixed
- Fix retry function
[0.4.0.0] - 2023-03-06
Changed
- Pass retry count to retry function
[0.3.0.3] - 2023-01-09
Fixed
- Fix moduleWorkspace
[0.3.0.2] - 2023-01-07
Added
- Generic instance
[0.3.0.1] - 2023-01-07
Changed
- Don't create an intermediate workspace directory
- Find the nearest plan.json
- Restructure cabal file
- Update copyright
- Copy over waitNamedPipe from Win32-network
Removed
- Remove unused dependency on Win32-network
Fixed
- Use setup-haskell action
[0.3.0.0] - 2022-12-13
Added
- Add errorMessage to argument of deadline functions
- getProjectBase: explore up the dir hierarchy to find cabal.project
- New fromJustM function
- Add .gitignore file
Changed
- Update GH actions versions
- Relax bounds on aeson
Early Versions (0.1.0.0 - 0.2.x)
2022
- New rewriteArrayElements function
- Update to support aeson >= 2.0.0 (#8)
- Replace waitByDeadlineX functions to byDeadlineX functions that trigger retries by assertion failure (#7)
- Add retry support (#6)
2021
- Module re-exports (#5)
- Generic error handling functions (#4)
- New exec, binFlex functions. New execConfigCwd field (#3)
- Add support for YAML (#2)
- Force evaluation of string for cat (#1)
- Setup Github Actions CI
- Downgrade cabal file version to 2.4 because 3.0 is incompatible with stack
- Drop support for ghc-8.6.5
- Harmonise component versions and remove redundant conditionals
- Import cardano-submit-api from cardano-rest repo
- Test support for running CLI commands with environment variables
- Run golden tests at the value level rather than the text level
- Update copyright to 2021
- Cabal 3.4 in Github Actions
2020
- New copyRewriteJsonFile function to work around permissioning issues on Hydra
- Remove redundant imports
- General chairman test code quality changes
- Chairman test running on Windows and Linux
- Report all log files on any test failure
- Bump versions to 1.21.0 and update the change logs
- Run byron-shelley testnet
- Run a chairman process per node
- Increase test code re-use by moving test support code into separate common hedgehog-extras library