Go to file
Stephen Morgan 7ed2a0aa9b lib!: lib: Remove aismultiplier from Amount.
In Amount, aismultiplier is a boolean flag that will always be False,
except for in TMPostingRules, where it indicates whether the posting
rule is a multiplier. It is therefore unnecessary in the vast majority
of cases. This posting pulls this flag out of Amount and puts it into
TMPostingRule, so it is only kept around when necessary.

This changes the parsing of journals somewhat. Previously you could
include an * before an amount anywhere in a Journal, and it would
happily parse and set the aismultiplier flag true. This will now fail
with a parse error: * is now only acceptable before an amount within an
auto posting rule.

Any usage of the library in which the aismultiplier field is read or set
should be removed. If you truly need its functionality, you should
switch to using TMPostingRule.

This changes the JSON output of Amount, as it will no longer include
aismultiplier.
2021-07-22 19:06:33 -10:00
.github ci: push/linux/mac/windows: fix ; conditional step execution 2021-07-20 23:24:18 -10:00
.sandstorm Add --capabilities-header to launcher.sh 2018-06-24 17:44:22 +02:00
bin ci: commitlint: ignore boring commits: github merge commit (#1606) 2021-07-13 12:35:48 -10:00
checks update dev setup tests 2015-03-16 17:59:06 -07:00
doc ;doc: 1.22 announcement 2021-07-03 13:03:51 -10:00
docker package: added helper scripts in docker/ 2019-01-31 12:44:12 -08:00
docker-static-arm32v7 Static builds for Linux on x64 (amd64) and arm32v7 architectures (#1571) 2021-06-30 18:05:27 -10:00
examples ;imp: added systemd and nginx files to examples dir 2021-07-05 05:24:21 -10:00
hledger lib!: lib: Remove aismultiplier from Amount. 2021-07-22 19:06:33 -10:00
hledger-install ;install: hledger-iadd 1.3.15 2021-07-08 10:52:47 -10:00
hledger-lib lib!: lib: Remove aismultiplier from Amount. 2021-07-22 19:06:33 -10:00
hledger-ui lib!: lib,cli,ui,web: For accountTransactionsReport, generate the overall 2021-07-22 19:00:37 -10:00
hledger-web lib!: lib,cli,ui,web: For accountTransactionsReport, generate the overall 2021-07-22 19:00:37 -10:00
tools tools: rename tools/doctest -> tools/docshelltest, update 2021-07-20 20:38:39 -10:00
.ci ;api: another round of hledger-api purging; fix the build 2019-09-11 14:49:22 -07:00
.ctags cli, lib: move functional tests into hledger/test/ 2020-11-16 08:47:41 -08:00
.dockerignore package: added Dockerfile 2019-01-29 16:14:03 -08:00
.editorconfig fix datepicker not closing, linting 2017-12-30 13:44:40 -05:00
.ghci tools: use pretty-simple for ghci output 2020-11-03 08:19:01 -10:00
.gitignore web: --test [-- HSPECARGS] runs the test suite 2020-11-16 14:02:16 -08:00
.hlint.yaml refactor: lib: hlint cleanups 2019-02-14 05:15:49 -08:00
.mailmap doc: use consistent spelling of Mykola Orliuk 2017-03-27 05:47:15 -07:00
.version ;bump version to 1.22 2021-06-28 22:37:47 -10:00
azure-pipelines.yml ;api: another round of hledger-api purging; fix the build 2019-09-11 14:49:22 -07:00
bench.sh ;tools: update instructions for installing quickbench 2021-06-15 15:19:38 -10:00
cabal.project ;cabal: fix cabal.project error with cabal 3.4 2021-03-12 07:01:48 -08:00
CHANGES.md ;doc: a few more changelog updates 2021-07-20 22:37:27 -10:00
CONTRIBUTING.md ;doc: contrib: commit messages: add more types 2021-07-05 13:16:15 -10:00
CREDITS.md ;doc: CREDITS cleanup 2020-03-21 18:37:49 -07:00
dev.hs collect some langage pragmas in dev.hs 2019-02-20 18:08:33 -08:00
dir ;dev: doc: update manuals 2021-07-12 18:50:06 -10:00
Dockerfile ;api: another round of hledger-api purging; fix the build 2019-09-11 14:49:22 -07:00
hie.yaml ;tools: silence hls errors for Shake.hs 2020-12-07 12:27:03 -08:00
LICENSE add LICENSE 2008-10-01 07:52:07 +00:00
Makefile cln: make: webdirs: rename, hide subrules from help 2021-07-20 21:31:57 -10:00
Makefile.helpsys make: rename sub-makefiles; start moving site script to make/shake 2019-03-05 18:43:04 -08:00
README.md ;doc: readme: drop badges header 2020-08-21 08:18:26 -07:00
RELEASING.md ;doc: RELEASING.md: start capturing some org notes here 2021-07-13 18:41:17 -10:00
ROADMAP.md ;roadmap: status 2020-08-29 14:45:50 -07:00
Shake.hs shake: changelogs: don't ignore ; messages any more 2021-07-20 22:39:46 -10:00
stack8.6.yaml test: doctest cleanups, use latest 2021-07-20 20:38:39 -10:00
stack8.8.yaml test: doctest cleanups, use latest 2021-07-20 20:38:39 -10:00
stack8.10.yaml test: doctest cleanups, use latest 2021-07-20 20:38:39 -10:00
stack.yaml stack: 9.0: rename yaml file, making 9.0 the default 2021-07-20 20:38:39 -10:00

hledger project README

lightweight, portable, dependable accounting tools

hledger is a computer program for easily tracking money, time, or other commodities, on unix, mac and windows (and web-capable mobile devices, to some extent).

It is first a command-line tool, but there are also terminal and web interfaces, and a Haskell library for building your own programs and scripts (hledger is written in Haskell). hledger was inspired by and is largely compatible with Ledger. hledger is free software available under the GNU General Public License v3+.

hledger aims to help both computer experts and regular folks to gain clarity and control in their finances and time management, but currently it is a bit more suited to techies. I use it every day to:

  • track spending and income
  • see time reports by day/week/month/project
  • get accurate numbers for client billing and tax filing
  • track invoices

Though limited in features, hledger is lightweight, usable and reliable. For some, it is a simpler, less distracting, more future-proof alternative to Quicken or GnuCash.

For more, see the home page: https://hledger.org

Sponsorship

Your support, large or small, helps keep this project strong!
See also https://hledger.org#sponsorship.

Sponsor Simon (project leader): github liberapay paypal

Sponsor the hledger project as an organisation: OpenCollective

Sponsor the hledger project as an individual: OpenCollective

Bounties for specific tasks: all bounties bountysource bounties




license hledger CI on hackage github issues