haspara: A library providing definitions to work with monetary values.

[ finance, library, mit ] [ Propose Tags ] [ Report a vulnerability ]
Versions [RSS] 0.0.0.0, 0.0.0.1, 0.0.0.2, 0.0.0.3, 0.0.0.4, 0.0.0.5, 0.0.0.7, 0.0.0.8, 0.0.0.10
Change log CHANGELOG.md
Dependencies aeson (>=1.5.6.0 && <2.3), base (>=4.11 && <5), containers (>=0.6.4.1 && <0.7), data-default (>=0.7 && <0.8), exceptions (>=0.10.4 && <0.11), hashable (>=1.3.0.0 && <1.5), megaparsec (>=9.0.1 && <9.6), mtl (>=2.2.2 && <2.4), refined (>=0.6.3 && <0.9), safe-decimal (>=0.2.1.0 && <0.3), scientific (>=0.3.7.0 && <0.4), template-haskell (>=2.16.0.0 && <2.21), text (>=1.2.4.1 && <2.2), time (>=1.9.3 && <1.14) [details]
License MIT
Copyright Copyright (c) 2021-2024 Telostat Pte Ltd
Author Vehbi Sinan Tunalioglu
Maintainer vst@vsthost.com
Category Finance
Home page https://github.com/telostat/haspara#readme
Bug tracker https://github.com/telostat/haspara/issues
Source repo head: git clone https://github.com/telostat/haspara
Uploaded by vst at 2024-10-07T09:27:54Z
Distributions
Downloads 555 total (22 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2024-10-07 [all 1 reports]

Readme for haspara-0.0.0.10

[back to package description]

haspara

Hackage version GitHub release (latest by date) GitHub contributors GitHub

Note: This software is under development and of prototype quality at the moment. Expect significant breaking changes without notification until we reach the first minor version. Until then, we will keep bumping the patch version.

haspara is a Haskell library that provides monetary definitions and a rudimentary (and experimental) accounting functionality.

Development

Big, long build command for the impatient:

hpack &&
    direnv reload &&
    fourmolu -i src/ test/ &&
    prettier --write . &&
    find . -iname "*.nix" -not -path "*/nix/sources.nix" -print0 | xargs --null nixpkgs-fmt &&
    hlint src/ test/ &&
    cabal build -O0 &&
    cabal run -O0 haspara -- --version &&
    cabal v1-test &&
    cabal haddock -O0

To test and build codebase in development environment, run:

dev-test-build

Making Releases

  1. Checkout main branch:

    git checkout main
    
  2. Ensure that your branch is up to date:

    git pull
    
  3. Update the version information in package.yaml if required, run hpack to reflect the change on the .cabal file, and recompile the project, run tests and generate Haddock documentation:

    nix-shell --run "dev-test-build -c"
    
  4. Update CHANGELOG.md file:

    git-chglog --next-tag <NEW-VERSION> -o CHANGELOG.md
    
  5. Commit, tag and push:

    git commit -am "chore(release): <NEW-VERSION>"
    git tag -a -m "Release <NEW-VERSION>" <NEW-VERSION>
    git push --follow-tags origin main
    
  6. Create the package, upload to Hackage as a candidate first and check the result:

    nix-shell --run "dev-test-build -c"
    nix-shell --run "cabal sdist"
    nix-shell --run "cabal upload dist-newstyle/sdist/haspara-<VERSION>.tar.gz"
    
  7. If the candidate package release works fine, release to Hackage:

    nix-shell --run "cabal upload --publish dist-newstyle/sdist/haspara-<VERSION>.tar.gz"
    
  8. Make sure that the release is available on Hackage.

  9. Make sure that the release is available on GitHub.

License

Copyright Telostat Pte Ltd (c) 2021-2024.

This work is licensed under MIT license. See LICENSE.