A reliable, user-friendly Plain Text Accounting tool with command line, terminal and web interfaces.
Go to file
Amarandus 76ffaca466 web: Add IPv6 and hostname support
This commit introduces IPv6 support (and thus closes #1145).
It also allows using local hostnames as a parameter for --host.
For this, multiple things needed to be changed:

 - checkWebOpts is dropped, as the supplied parameter is checked later
 by Network.Socket.getAddrInfo
 - defbaseurl needs to check if : is used in the host, as this indicates
 the usage of an IPv6 address. In this case, the host needs to be
 wrapped in [] for the base URL
 - To allow opening such a modified base URL, runHostPortFullUrl is used
 instead of runhostPortUrl, as it allows opening arbitrary URLs instead
 of a path prefixed with http://127.0.0.1

As checking the host for validity is postponed until the webserver tries
to start, an invalid hostname leads to an exception caused by
Network.Socket.getAddrInfo.
This is still fine, as hledger-web won't start in an undefined state, but
will terminate with a nonzero exit code.
2020-01-17 13:18:51 -08:00
.github ;github: issue templates: tweak support wording 2019-06-07 08:14:07 -07:00
.sandstorm Add --capabilities-header to launcher.sh 2018-06-24 17:44:22 +02:00
bin ;lib: clean out showTransactionUnelided 2019-11-16 12:53:07 +01:00
checks update dev setup tests 2015-03-16 17:59:06 -07:00
doc ;bump to dev version; bump man page dates 2020-01-05 09:04:50 -08:00
docker package: added helper scripts in docker/ 2019-01-31 12:44:12 -08:00
examples Add a basic example of rule parsing for the output of csb2format. 2019-12-06 05:51:10 -08:00
hledger ;doc: changelogs: update from 1.16.2, cleanups 2020-01-14 11:19:05 -08:00
hledger-install ;install: update for 1.16.2 2020-01-14 11:21:25 -08:00
hledger-lib ;doc: changelogs: update from 1.16.2, cleanups 2020-01-14 11:19:05 -08:00
hledger-ui ;doc: changelogs: update from 1.16.2, cleanups 2020-01-14 11:19:05 -08:00
hledger-web web: Add IPv6 and hostname support 2020-01-17 13:18:51 -08:00
old/hledger-api ;api: move hledger-api out of the way, to the archives 2019-09-10 20:20:30 -07:00
shell-completion ;api: another round of hledger-api purging; fix the build 2019-09-11 14:49:22 -07:00
tests Fix timeclock format parsing 2020-01-12 13:17:36 -08:00
tools ;doc: don't add page TOCs any more, sphinx has it covered 2019-08-26 09:37:03 -07:00
.appveyor.yml Fix typos 2019-12-21 12:09:05 -08:00
.ci ;api: another round of hledger-api purging; fix the build 2019-09-11 14:49:22 -07:00
.ctags tools: remove some more hakyll-std traces 2018-05-09 10:20:21 -07: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: .ghci file to control prompt 2017-03-29 14:43:00 -07:00
.gitignore ;site: git ignore the site/ sub-repo 2019-08-26 18:41:43 -07: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
.travis-maybe-skip.sh tools: travis: note occasional breakage on PRs 2017-10-16 08:03:43 -07:00
.travis.yml ;remove more traces of hledger-api 2019-09-10 20:12:38 -07:00
.version ;bump to dev version; bump man page dates 2020-01-05 09:04:50 -08: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: make bench: disable slowest 10k-txn benchmarks by default 2017-12-05 14:38:55 -08:00
cabal-install.sh ;api: another round of hledger-api purging; fix the build 2019-09-11 14:49:22 -07:00
cabal.project ;api: another round of hledger-api purging; fix the build 2019-09-11 14:49:22 -07:00
CHANGES.md ;doc: draft changelogs 2020-01-14 10:08:59 -08:00
CONTRIBUTING.md ;doc: CONTRIBUTING: clean up the open issues table 2020-01-06 10:53:30 -08:00
dev.hs collect some langage pragmas in dev.hs 2019-02-20 18:08:33 -08:00
Dockerfile ;api: another round of hledger-api purging; fix the build 2019-09-11 14:49:22 -07:00
LICENSE add LICENSE 2008-10-01 07:52:07 +00:00
Makefile ;makefile: fix doctest-running rules, if doctests were enabled 2020-01-04 08:22:45 -08: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: link to travis/appveyor build history (#1142) 2019-12-03 15:38:54 -08:00
ROADMAP.md ;doc: roadmap updates 2019-12-20 10:40:59 -08:00
Shake.hs ;doc: fix yet another rendering issue with new pandoc ({=html}) 2020-01-06 09:41:03 -08:00
stack-ghc7.10.yaml.disabled ;tools: drop easytest from old stack yamls 2019-11-28 14:53:17 -08:00
stack-ghc8.0.yaml ;stack: update extra deps in old stack yamls 2019-11-28 15:07:09 -08:00
stack-ghc8.2.yaml ;stack: update extra deps in old stack yamls 2019-11-28 15:07:09 -08:00
stack-ghc8.4.yaml ;stack: update extra deps in old stack yamls 2019-11-28 15:07:09 -08:00
stack-ghc8.6.yaml ;stack: rename the ghc 8.6 stack.yaml 2019-12-24 17:17:51 -08:00
stack-ghc8.10.yaml stack: ghc8.10: update extra-deps 2019-12-22 08:13:00 -08:00
stack.yaml web: Add IPv6 and hostname support 2020-01-17 13:18:51 -08:00

hledger

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 (http://hackage.haskell.org/package/hledger-lib) 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 http://hledger.org.

Support

Backers

Support us with a monthly donation and help us continue our activities. [Become a backer]

Sponsors

Become a sponsor and get your logo on our README on Github with a link to your site. [Become a sponsor]

license

OpenCollective OpenCollective bountysource github issues

on hackage on stackage nightly on stackage lts on stackage lts 7

Build Status Build Status