Git Product home page Git Product logo

simonmichael / hledger Goto Github PK

View Code? Open in Web Editor NEW
2.8K 48.0 302.0 97.51 MB

Robust, fast, intuitive plain text accounting tool with CLI, TUI and web interfaces.

Home Page: https://hledger.org

License: GNU General Public License v3.0

Shell 4.93% Haskell 60.48% Makefile 1.78% CSS 0.14% JavaScript 13.76% Roff 14.75% Python 0.52% Lua 0.10% Cap'n Proto 0.44% Objective-J 0.04% Jasmin 0.03% M4 0.12% Dockerfile 0.13% Procfile 0.10% CMake 0.01% Awk 0.07% Just 2.49% HTML 0.05% Emacs Lisp 0.06%
hledger haskell ledger plaintext-accounting web-application console-application command-line-tool bounty tui accounting

hledger's Introduction

hledger

Robust, intuitive plain text accounting

license on hackage github issues

Welcome! This a brief intro to hledger. For a more detailed version, see the home page: https://hledger.org

hledger is lightweight, cross platform, multi-currency, double-entry accounting software. It lets you track money, investments, cryptocurrencies, invoices, time, inventory and more, in a safe, future-proof plain text data format with full version control and privacy.

hledger aims to help both computer experts and regular folks gain clarity in their finances and time management. Though the UIs are basic, hledger can model any accounting situation and provide precise, clear reports. It is reliable, quick, and backed by the highly supportive Plain Text Accounting ecosystem. Using it is an excellent way to learn double entry accounting.

Compared to other PTA apps, hledger is actively maintained, with regular releases, and a strong focus on being easy to use and practical for everyday accounting.

More features:

  • Installs easily on unix, mac or windows
  • Complete, built-in documentation in multiple formats, beginner videos, tutorials etc.
  • Multiple UIs: command-line, terminal, web, mobile, editors/IDEs
  • Good at importing and exporting CSV; also outputs text/HTML/JSON/SQL
  • A robust, general, well-specified multi-currency accounting engine
  • Fast, analysing 25k transactions per second on a macbook air m1
  • Accurate to 255 decimal places
  • Supports your preferred account names, currencies, number formats
  • Inspired by and partly compatible with Ledger CLI; interconvertible with Beancount
  • Scriptable by CLI, HTTP or API, with plenty of examples
  • Clean Haskell codebase, continually improved since 2007, with $100 regression bounties
  • Free software licensed under GPLv3+.

Examples

I use hledger to:

  • track income and spending, sometimes with budgets
  • see time reports by day/week/month/project
  • track reimbursables, invoices and payments
  • predict cashflow and account balances
  • get accurate numbers for tax filing
  • research past events

Here's an example of the journal file format:

2022-01-01 opening balances as of this date
    assets:bank:checking                $1000
    assets:bank:savings                 $2000
    assets:cash                          $100
    liabilities:creditcard               $-50
    equity:opening/closing balances

2022-01-15 market
    expenses:food             $50
    assets:cash              $-50

2022-02-01 GOODWORKS CORP
    assets:bank:checking           $1000
    income:salary                 $-1000

and some simple reports:

$ hledger bs
Balance Sheet 2022-02-15

                        || 2022-02-15 
========================++============
 Assets                 ||            
------------------------++------------
 assets:bank:checking   ||      $2000 
 assets:bank:savings    ||      $2000 
 assets:cash            ||        $50 
------------------------++------------
                        ||      $4050 
========================++============
 Liabilities            ||            
------------------------++------------
 liabilities:creditcard ||        $50 
------------------------++------------
                        ||        $50 
========================++============
 Net:                   ||      $4000 
$ hledger is --monthly                                            
Income Statement 2022-01-01..2022-02-28                                               
                                                                                      
               ||  Jan    Feb                                                         
===============++=============                                                        
 Revenues      ||                                                                     
---------------++-------------                                                        
 income:salary ||    0  $1000                                                         
---------------++-------------                                                        
               ||    0  $1000                                                         
===============++=============                                                        
 Expenses      ||                                                                     
---------------++-------------                                                        
 expenses:food ||  $50      0                                                         
---------------++-------------                                                        
               ||  $50      0                                                         
===============++=============                                                        
 Net:          || $-50  $1000                                                         

More examples and screenshots: https://hledger.org/#how-to-get-started

Funding

hledger is brought to you by Simon Michael, 140+ contributors, and the generous financial sponsors below.

After enjoying some personal or organisational success with hledger, you might want to become one of them, to help support this work. It's easy! Please see https://hledger.org/sponsor.html for details.

Organisational sponsors

Individual sponsors

hledger's People

Contributors

adept avatar adimit avatar alerque avatar awjchen avatar bwignall avatar cocreature avatar felixonmars avatar imuli avatar ingolia avatar jbweston avatar jkr avatar jmtd avatar la-wu avatar markokocic avatar mstksg avatar ndarilek avatar nniro avatar ocdtrekkie avatar ony avatar peti avatar schoettl avatar simonmichael avatar thesuess avatar thielema avatar timbod7 avatar tomk32 avatar trygvis avatar xitian9 avatar zarybnicky avatar zhelezov avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

hledger's Issues

hledger 0.14 linux 32-bit binary fails with newer libc6 eg on ubuntu 11.04

Original author: [email protected] (May 16, 2011 15:39:42)

Reported by greenskeleton. The current 32-bit linux binary from http://hledger.org/DOWNLOADS.html gives some open file error on startup.

[7:54am] <greenskeleton>
https://gist.github.com/972289
[8:18am] <greenskeleton>
ok, it works on my Ubuntu 10.10 system, but not 11.04
[8:27am] <sm>
greenskeleton: interesting.. looks like a filesystem layout change in libc6
[8:27am] <sm>
do you have /usr/lib/gconv on 11.04 ?
[8:34am] <greenskeleton>
negative
[8:35am] <greenskeleton>
yet it is there on 10.10
[8:46am] <sm>
greenskeleton: possible ln -s /usr/lib/i386-linux-gnu/gconv/ /usr/lib/gconv helps ?
[9:00am] <greenskeleton>
sm: that fixes it

Original issue: http://code.google.com/p/hledger/issues/detail?id=43

hledger should balance by displayed precision, not actual amounts

Original author: [email protected] (August 13, 2010 01:13:42)

Thierry Daucourt reported a case where hledger fails to balance a transaction that ledger allows. Eg:

2010/1/1 x
A 55.3653 C @ 30.92189512 D
A -1712 D

hledger compares the actual amounts. ledger compares the displayed strings, and the display precision is zero decimal places, since ledger does not consider the precision of prices. We should be more like ledger here.

Original issue: http://code.google.com/p/hledger/issues/detail?id=23

we don't track our time and money

Original author: [email protected] (June 22, 2009 15:20:50)

What steps will reproduce the problem?
1.Ask one or more (friends/family members/associates/yourself) where they spent (money/time)
(yesterday/last week/last month/last tax year)
2.Emphasise that the data will be used for (client invoice/tax return/loan approval/divorce
proceedings) and will need to stand up to a detailed audit.
3.Observe how much (time/confusion/stress/effort) is required to produce a reliable, complete
answer.

What is the expected output? What do you see instead?

Expected output:

  • a clear, orthogonal, realistic set of accounts/categories, with precise, justifiable totals in each,
    describing a cashflow which matches reality, delivered within a day without stress or excessive
    effort.
  • financial prosperity, time serenity, adaptability to all conditions
  • healthy, fulfilled individuals, economies, societies

Actual output:

  • fear, agitation, confusion, vagueness, incomplete numbers, numbers with large margin of
    error, numbers that can't be justified, old numbers recycled, mistakes, unreal numbers,
    temporary unreachability, sudden urgent other business...
  • financial chaos or shakiness, unreliable time management, dependence on things going well
  • global economic meltdown
  • lives wasted and regretted
  • ......

Original issue: http://code.google.com/p/hledger/issues/detail?id=1

add's balancing default amounts get confused by changing precision

Original author: [email protected] (February 16, 2010 04:28:04)

Reported by Roman. Example:

$ darcs add
Enter one or more transactions, which will be added to your ledger file.
To complete a transaction, enter . as account name. To quit, press control-
c.
date [2010/02/13]:
description: sample transaction
account 1: acc1
amount 1 [0]: 13.75
account 2: acc2
amount 2 [-13.75]: 2.5
account 3: acc3
amount 3 [-16.3]: <Enter>
account 4: .
could not balance this transaction, amounts do not add up to zero. Re-
enter:

What is the expected output? What do you see instead?

For amount 3, the default should have been -16.25, not -16.3.

Original issue: http://code.google.com/p/hledger/issues/detail?id=19

Cannot build hledger-lib with Setup.hs/parsec 3

Original author: [email protected] (August 11, 2010 02:37:49)

When attempting to build hledger-lib with Setup.hs, I get

~/.cabal/packages/hackage.haskell.org/hledger-lib/0.11.1/hledger-lib-0.11.1 % ./Setup.hs build
Preprocessing library hledger-lib-0.11.1...
Building hledger-lib-0.11.1...
[ 1 of 17] Compiling Hledger.Data.Utils ( Hledger/Data/Utils.hs, dist/build/Hledger/Data/Utils.o )
[ 2 of 17] Compiling Hledger.Data.Types ( Hledger/Data/Types.hs, dist/build/Hledger/Data/Types.o )
[ 3 of 17] Compiling Hledger.Data.Dates ( Hledger/Data/Dates.hs, dist/build/Hledger/Data/Dates.o )

Hledger/Data/Dates.hs:262:22:
Couldn't match expected type ghc-prim:GHC.Prim.Any' against inferred typeChar'
Expected type: GenParser ghc-prim:GHC.Prim.Any u a
Inferred type: GenParser Char st SmartDate
In the expression: yyyymmdd
In the first argument of choice'', namely [yyyymmdd, ymd, ym, md, ....]'

However, it builds fine when I use cabal install; I can't figure out what cabal install is doing differently. (I am new at Haskell and was trying to compile hledger with profiling, as it runs really slowly on my ledger file.)

Original issue: http://code.google.com/p/hledger/issues/detail?id=22

"System.Exit does not support exitSuccess" while installing

Original author: [email protected] (June 22, 2009 15:26:25)

As reported by Andreas Reuleaux, cabal install hledger fails on his debian/ghc 6.8 installation
because exitSuccess was not provided until base version 4, and hledger.cabal claims to work with
base 3 or 4.

Workaround: force the use of base 4 when installing. This should work:

cabal install hledger --constraint="base >= 4"

Original issue: http://code.google.com/p/hledger/issues/detail?id=2

hledger ui dies when showing non-ascii (unicode) currency symbols

Original author: [email protected] (June 27, 2009 22:31:58)

I have some amounts using the € (euro) symbol. hledger ui terminates immediately with "hledger:
Prelude.chr: bad argument". I can work around by using an ascii symbol like EUR instead.

IIRC this is due to weak i18n in the vty library which our ui command relies on. They are aware of
this and hope to improve it.

Original issue: http://code.google.com/p/hledger/issues/detail?id=3

Writing to ~/.journal hangs process on Mac OS X when FileVault is enabled

Original author: [email protected] (March 01, 2011 13:35:07)

Hello,

I experienced a strange and rather severe problem trying out hledger today. I think I have the problem isolated to a bad interaction between Apple's FileVault and hledger trying to write to the ~/.journal file.

Software versions: Mac OS X 10.6.6, hledger 0.13.98

Steps to reproduce:

  1. Activate FileVault for a user account under Mac OS X.
  2. As that user, run hledger without specifying an input file.

Expected: hledger should create the ~/.journal file and run as normal.

Actual: hledger hangs, and cannot be stopped using ^C, Activity Monitor, or kill. I had to hard reset my MacBook each time I tried this.

My Theory:
I believe that the problem arises because FileVault creates a journaled disk image and mounts it at the user's home directory. The journalling file for the FileVault volume is thus mounted at ~/.journal. The file can't be seen with "ls" or read with "tail" (for instance). But writing to the ~/.journal with "echo" or "cat" causes the shell to hang unrecoverably. Each time I tried this hledger or the shell would take 100% CPU, and I couldn't kill the process short of a hard reset.

Unfortunately, Google hasn't been much help substantiating my theory. There's some information for "journal_info_block", which is an associated file. And this page for Carbon Copy Cloner says that the root .journal file should never be manipulated by third-party tools: http://www.bombich.com/software/docs/CCC/en.lproj/explore/default-excludes.html

I'm not sure what the right fix would be. This page discusses detecting whether a user has FileVault enabled: http://discussions.apple.com/thread.jspa;jsessionid=D178B53CD1ADA7666A4B6685ED64AEBB.node0?messageID=10934701&amp;#10934701

Best regards,

James Overton

Original issue: http://code.google.com/p/hledger/issues/detail?id=41

Account names are broken in error message on unbalanced transactions

Original author: [email protected] (July 06, 2009 22:38:40)

To reproduce:

$ printf "2009-01-01 *\n счёт1 1\n счёт2 2 ; bad entry\n" | hledger -f -
"-" (line 4, column 1):
unexpected end of input
could not balance this transaction, amounts do not add up to zero:
2009/01/01 *
AGQB1 1
AGQB2 2 ; bad entry

Please note that account names in the error message are not the same as in
the entry.

hledger-0.6.1/Linux

Original issue: http://code.google.com/p/hledger/issues/detail?id=5

hledger-web; simplify and sort file selection drop-down

Original author: [email protected] (January 22, 2011 23:23:23)

hledger-web allows the user to select from any included file, for adding or editing. This is good, and I have taken full liberty of creating a largish tree of included files. This is important to my use of hledger, as sometimes I want to see everything, sometimes just the regular sub-set, and sometimes (if I am outsourcing some data input) it is best to start hledger-web with only a limited few files. This all works great, but I think that the dropdown list could be made better with;

-reverse the sort order we have now

-don't display the full path below the files (maybe just a leading .. or something)

-(this is, I think, the tricky one) provide some means of dis-including certain files (those that are really just sets of !includes, and not intended to hold transaction data) perhaps with some method that could be a "blacklist" or even harnessing metadata like

; dropdown: no

within the journal file.

Of course this ain't easy, but for my use-case at least, it would be a significant improvement. see attached file.

Original issue: http://code.google.com/p/hledger/issues/detail?id=39

register, --display and --empty don't play nicely

Original author: [email protected] (December 19, 2009 04:42:28)

borked.ledger:
2009-12-01 * foo
foo £1.00
bar

2009-12-15 * bar
foo £1.00
baz

2009-12-21 * baz
bar £2.00
foo

hledger -f borked.ledger register foo -W -E --display=d>=[2009-12-07]
2009/11/30 - 2009/12/06 0
£1.00
2009/12/07 - 2009/12/13 0
£1.00
2009/12/14 - 2009/12/20 foo £1.00
£2.00
2009/12/21 - 2009/12/27 foo £-2.00
0

This looks wrong to me. register should not display entries where the
entire date range is excluded by a --display predicate. Instead, I'd expect
this:
2009/12/07 - 2009/12/13 0
£1.00
2009/12/14 - 2009/12/20 foo £1.00
£2.00
2009/12/21 - 2009/12/27 foo £-2.00
0

Original issue: http://code.google.com/p/hledger/issues/detail?id=18

it should be possible to use hledger-web with javascript disabled

Original author: [email protected] (December 17, 2010 16:23:35)
Original title: edit form always displays in non-javascript browsers, like elinks

Reported by djp. The web ui should be usable, at least for browsing, in text-mode browsers and when javascript is disabled or not available.

Original issue: http://code.google.com/p/hledger/issues/detail?id=33


Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

feature; web-register grand granular linkification

Original author: [email protected] (November 20, 2010 19:42:38)

the hledger web register is awesome, but I can't help but think about how it could be better. As it stands in the register display, the accounts are presented as links that drive a filtering on the displayed account. I think it would be better if each element of the link caused a more granular filter. That is to say

assets:bank:saving should be three separate links "assets", "assets:bank" and "assets:bank:savings".

Yes, can already click on a:b:s and then "show more" to increase the scope step-by-step, but if the links were more granular, then you could go directly to any of the accounts or sub-accounts listed. This would speed navigation and have almost imperceptible change on the interface.

is this grand ?
no, not yet
not until you do the same thing with the date column.

Dates are presented in the register display, but are not active links, I think they should be, and granular too! The date is displayed in three parts, and I think it would be AMAZINGLY useful if each part of the date caused a corresponding period filter.

2010-08-29 lawyers

to see what other transactions happened that day, click on "29", that month "08" or that year "2010". This may seem like gratuitous clickage, at first blush, but it presents the ability to immediately filter for period ranges directly related to any specific register entry.

THAT would be grand AND granular linkification

Original issue: http://code.google.com/p/hledger/issues/detail?id=29

Unhelpful locations for parsing errors

Original author: [email protected] (July 01, 2010 21:35:52)

What steps will reproduce the problem?
1.

cat > test
2010/07/01 comment
cur - 10 foo-bar
outs
^D

2.

hledger -f test

3.

What is the expected output?
Either no parse error or at least at better error message.

What do you see instead?
hledger: parse error at (line 1, column 25):
unexpected "-"
expecting "@", comment or new-line

What version of the product are you using?
hledger-0.10 with no extras

On what operating system?
Linux

Original issue: http://code.google.com/p/hledger/issues/detail?id=20

RFE; hledger add re-prompt

Original author: [email protected] (June 01, 2011 14:23:11)

Sometimes, too often, when adding transactions via hledger add, I'll make a mistake or accept a default I realize I shouldn't have.
When that happens, I have no choice but to ctrl-C and re-invoke hledger add and start again, even if I had already added most of the transaction details correctly.

For those occasions, it would be great to be able to tell hledger add to "re-ask".
A transaction is completed with a single ".", could something like a single "<" cause hledger add to re-do the last prompt ?

Original issue: http://code.google.com/p/hledger/issues/detail?id=47

hledger in windows console does not print non-ascii characters

Original author: [email protected] (November 03, 2010 16:35:58)

Reported by André Albuquerque: with non-ascii characters in the journal file, eg:

2010/1/1 testing €
a 1€
b

using hledger, eg the 0.12.1 binary, in a windows DOS prompt:

C:>hledger print
2010/01/01 testing Γé¼
a 1Γé¼
b -1Γé¼

Output on unix is:

2010/01/01 testing €
a 1€
b -1€

It's not clear how to fix this, other than waiting for GHC to get better.
Related discussion:
http://thread.gmane.org/gmane.comp.lang.haskell.glasgow.user/19163
http://www.codeproject.com/KB/cpp/unicode_console_output.aspx

Original issue: http://code.google.com/p/hledger/issues/detail?id=25

browser invoked by hledger web hangs on first request

Original author: [email protected] (July 06, 2009 23:25:15)

I noticed that if I run hledger web in gnome terminal, the program starts
Epiphany web browser, but the web browser cannot open anything.

$ hledger web
starting web server on port 5000
starting web browser
[empty page in the web browser]

If I run hledger web in console, I can see “localhost contacted. Waiting
for reply” message (is it w3m?). Meanwhile page "localhost:5000" does not
open in Firefox neither. If I terminate the brower (w3m) with ^C, than —
magic! — I can suddenly open localhost:5000 in Firefox!

Actually, hledger is listening, but not where every program expects to
find it:

$ netstat -l --inet6 --inet -n | grep :5000
tcp6 0 0 :::5000 :::* LISTEN

I am not sure it is good to listen on IPv6 by default... But I don't know,
why it's not possible to open web page when the browser is launched, but it
is possible just after the browser is terminated... I think openBrowserOn
is not OK.

Workaround: run hledger web --debug. It does not attempt to start a
browser, and everything works.

I suggest not starting the web browser by default (provide an option to
start it, but run only a server by default).

hledger-0.6.1/Debian stable

Original issue: http://code.google.com/p/hledger/issues/detail?id=6

binaries fail on recent linux distros with __getpagesize: Assertion `_rtld_global_ro._dl_pagesize != 0' failed.

Original author: [email protected] (December 21, 2010 21:17:51)

djp reports: the hledger-0.13 32-bit linux binary fails eg on ubuntu maverick with:

djp@monk:/usr/bin $ ls -al hledger
-rwxr-xr-x 1 root root 8060160 2010-12-21 15:48 hledger
djp@monk:/usr/bin $ hledger
hledger: ../sysdeps/unix/sysv/linux/getpagesize.c:32: __getpagesize: Assertion `_rtld_global_ro._dl_pagesize != 0' failed.
Aborted

IIRC this is https://bugs.launchpad.net/ubuntu/+source/eglibc/+bug/672352 and can be fixed by upgrading the eglibc package to 2.12.1-0ubuntu11, on the runtime machine or the build machine. If you try before I do, please update this issue.

Original issue: http://code.google.com/p/hledger/issues/detail?id=36

feature; broaden "filter by account/description" field input

Original author: [email protected] (November 21, 2010 03:51:49)

to allow for simple filtering on tags, metadata and comments, using established syntax matching.

just as now
[desc:cat ] works great, to easily locate description text, I would like to be able to enter

[:nick:fitz: ] to find matching tags anywhere, (case insensitive, please) and

[; fence ] to filter on matching text in the comments, which would work great locating

[; qtty: ] metadata, even though hledger does not currently otherwise manipulate metadata or tags, it would be great to have the power to filter on them.

Original issue: http://code.google.com/p/hledger/issues/detail?id=30

RFE; hledger add history

Original author: [email protected] (June 02, 2011 05:28:25)

I've been using smart-dates with hledger add. Today I used "yesterday" and of course it worked great. Then the next transaction was also for "yesterday" and I wished I could just use the UP arrow to scroll through the line-entry-history. Not only would this make a highly repetitive job a lot quicker, but it would also provide a clear history of what you have recently entered.
Did you just enter this receipt an hours ago ?
hitting the UP arrow a few times and you could review exactly what you put in.
The arrow keys are unused by hledger add right now, and maintaining a history for this mode would enhance usability in a number of ways.

Original issue: http://code.google.com/p/hledger/issues/detail?id=48

Nested includes fail

Original author: [email protected] (August 09, 2010 00:26:10)

Example setup:

.journal:
!include .hledger/bank.journal

.hledger/bank.journal:
!include bank/year.journal

.hledger/bank/year.journal:
!include year/month.journal

Generates this error when trying anything with hledger:
could not parse journal data in /home/boeckb/.journal
"/home/boeckb/.journal" (line 4, column 1) in included file ".hledger/bank.journal":
".hledger/bank.journal" (line 2, column 1) in included file "bank/2006.journal":
"bank/2006.journal" (line 4, column 1) reading "bank/2006/08.journal":
bank/2006/08.journal: openFile: does not exist (No such file or directory)
hledger: could not parse journal data in /home/boeckb/.journal
"/home/boeckb/.journal" (line 4, column 1) in included file ".hledger/bank.journal":
".hledger/bank.journal" (line 2, column 1) in included file "bank/2006.journal":
"bank/2006.journal" (line 4, column 1) reading "bank/2006/08.journal":
bank/2006/08.journal: openFile: does not exist (No such file or directory)

Original issue: http://code.google.com/p/hledger/issues/detail?id=21

Chart of Accounts support

Original author: [email protected] (June 09, 2011 17:01:32)

hledger can list all of the accounts you use, but is that a Chart of Accounts ?
not necessarily
An actual CoA would include every account that is relevant to you, whether or not you have any entries corresponding to each account. It should also be able to contain all desired details for each account; account number, bank branch addresses, terms, rates, paper-file cross reference, tax GIFI numbers, what have you. These details should not live in specific transactions, but they should be available wherever you need them; as reference to your chosen account structure and to enhance account-specific reports.

A Chart of Accounts should take the form of a valid (h)ledger transaction, with zero values. This could also be a logical place to put account starting values.

Hledger could be induced to generate an initial chart of accounts, with a new command --coa, using all active accounts. This could be sent to a file, could be edited, extended and enhanced with details, and then could be included in an active ledger file, and would then be available to enable tab-completion, and to define allowable accounts when no new ones can be created.

Original issue: http://code.google.com/p/hledger/issues/detail?id=50

hledger-web startup failure

Original author: [email protected] (December 18, 2010 21:34:26)

W. Ludwick is having a startup failure with the hledger-web 0.13 mac binary that I can't reproduce:

$ ./hledger-web-0.13-mac-i386
No journal file "/Users/walt/.journal", creating it.
Edit this file or use "hledger add" or "hledger web" to add transactions.
(no further output. But shows $ prompt ? Not sure)

With the same binary I get (from a clean start):

$ ./hledger-web-0.13-mac-i386
No journal file "/Users/simon/.journal", creating it.
Edit this file or use "hledger add" or "hledger web" to add transactions.
Installing support files in ./.hledger/web/ - done, please run again.
$ ./hledger-web-0.13-mac-i386
Using support files in ./.hledger/web/
Starting http server on port 5000 with base url http://localhost:5000
Attempting to start a web browser

Original issue: http://code.google.com/p/hledger/issues/detail?id=35

feature; web-register; display matching accounts

Original author: [email protected] (December 02, 2010 02:36:13)

while viewing the register, especially after having drilled down to filter on a specific account, the "account" column often displays the same thing all the way down, and that's not very helpful.

I'd often like to see the matching accounts, either by adding a column, or with a button that changes "accounts" to "matching accounts".

Original issue: http://code.google.com/p/hledger/issues/detail?id=31

non-ascii file gives (Invalid or incomplete multibyte or wide character) even with locale set

Original author: [email protected] (December 18, 2010 20:56:50)

Current hledger built with ghc >= 6.12 is supposed to use the configured locale to decode non-ascii data in journal files. We have found and documented some quirks with this (locale must be installed, locale name must be exact on some platforms) but T. Daucourt is still seeing problems with this:

$ locale -a
C
en_AG
en_AU.utf8
en_BW.utf8
en_CA.utf8
en_DK.utf8
en_GB.utf8
en_HK.utf8
en_IE.utf8
en_IN
en_NG
en_NZ.utf8
en_PH.utf8
en_SG.utf8
en_US.utf8
en_ZA.utf8
en_ZW.utf8
fr_BE.utf8
fr_CA.utf8
fr_CH.utf8
fr_FR.utf8
fr_LU.utf8
POSIX
$ LANG=fr_FR.utf8 ~/hledger-0.13-linux-x86_64 --verbose --debug bal -f hledger_test_09
hledger-0.13-linux-x86_64: hledger_test_09: hGetContents: invalid argument (Invalid or incomplete multibyte or wide character)

I can't reproduce the problem. Apparently using the same 0.13 64-bit linux binary from http://hledger.org/DOWNLOADS.html , same ubuntu version, same locale and same journal file, it works for me:

$ locale -a
C
en_US.utf8
fr_BE.utf8
fr_CA.utf8
fr_CH.utf8
fr_FR.utf8
fr_LU.utf8
POSIX

$ LANG=fr_FR.utf8 bin/hledger-0.13-linux-x86_64 --verbose --debug bal -f tdaucourt-test-09.journal
(works)

Original issue: http://code.google.com/p/hledger/issues/detail?id=34

parsec-related ghc panic during install

Original author: [email protected] (September 09, 2010 22:03:32)

Got this error when attempting to install it?

(ghc is 6.10.4 from MacPorts in this case, updated using cabal)

Thanks,
Zack


$ cabal install hledger
Resolving dependencies...
Downloading split-0.1.2...
Configuring split-0.1.2...
Preprocessing library split-0.1.2...
Building split-0.1.2...
[1 of 2] Compiling Data.List.Split.Internals (
Data/List/Split/Internals.hs, dist/build/Data/List/Split/Internals.o )
[2 of 2] Compiling Data.List.Split ( Data/List/Split.hs,
dist/build/Data/List/Split.o )
Registering split-0.1.2...
Installing library in /Users/zdw/.cabal/lib/split-0.1.2/ghc-6.10.4
Registering split-0.1.2...
Downloading hledger-lib-0.12.1...
Configuring hledger-lib-0.12.1...
Preprocessing library hledger-lib-0.12.1...
Building hledger-lib-0.12.1...
[ 1 of 17] Compiling Hledger.Data.Utils ( Hledger/Data/Utils.hs,
dist/build/Hledger/Data/Utils.o )
[ 2 of 17] Compiling Hledger.Data.Types ( Hledger/Data/Types.hs,
dist/build/Hledger/Data/Types.o )
[ 3 of 17] Compiling Hledger.Data.Dates ( Hledger/Data/Dates.hs,
dist/build/Hledger/Data/Dates.o )
[ 4 of 17] Compiling Hledger.Data.Commodity (
Hledger/Data/Commodity.hs, dist/build/Hledger/Data/Commodity.o )
[ 5 of 17] Compiling Hledger.Data.Amount ( Hledger/Data/Amount.hs,
dist/build/Hledger/Data/Amount.o )
[ 6 of 17] Compiling Hledger.Data.AccountName (
Hledger/Data/AccountName.hs, dist/build/Hledger/Data/AccountName.o )
[ 7 of 17] Compiling Hledger.Data.Posting ( Hledger/Data/Posting.hs,
dist/build/Hledger/Data/Posting.o )
[ 8 of 17] Compiling Hledger.Data.Transaction (
Hledger/Data/Transaction.hs, dist/build/Hledger/Data/Transaction.o )
[ 9 of 17] Compiling Hledger.Data.TimeLog ( Hledger/Data/TimeLog.hs,
dist/build/Hledger/Data/TimeLog.o )
[10 of 17] Compiling Hledger.Data.Journal ( Hledger/Data/Journal.hs,
dist/build/Hledger/Data/Journal.o )
[11 of 17] Compiling Hledger.Read.Common ( Hledger/Read/Common.hs,
dist/build/Hledger/Read/Common.o )
[12 of 17] Compiling Hledger.Read.Journal ( Hledger/Read/Journal.hs,
dist/build/Hledger/Read/Journal.o )
[13 of 17] Compiling Hledger.Data.Account ( Hledger/Data/Account.hs,
dist/build/Hledger/Data/Account.o )
[14 of 17] Compiling Hledger.Data.Ledger ( Hledger/Data/Ledger.hs,
dist/build/Hledger/Data/Ledger.o )
[15 of 17] Compiling Hledger.Data ( Hledger/Data.hs,
dist/build/Hledger/Data.o )
[16 of 17] Compiling Hledger.Read.Timelog ( Hledger/Read/Timelog.hs,
dist/build/Hledger/Read/Timelog.o )
[17 of 17] Compiling Hledger.Read ( Hledger/Read.hs,
dist/build/Hledger/Read.o )
Registering hledger-lib-0.12.1...
Installing library in /Users/zdw/.cabal/lib/hledger-lib-0.12.1/ghc-6.10.4
Registering hledger-lib-0.12.1...
Downloading hledger-0.12.1...
[1 of 1] Compiling Main (
/tmp/hledger-0.12.147096/hledger-0.12.1/Setup.hs,
/tmp/hledger-0.12.147096/hledger-0.12.1/dist/setup/Main.o )
Linking /tmp/hledger-0.12.147096/hledger-0.12.1/dist/setup/setup ...
ld: warning: -read_only_relocs cannot be used with x86_64
Configuring hledger-0.12.1...
Preprocessing library hledger-0.12.1...
Preprocessing executables for hledger-0.12.1...
Building hledger-0.12.1...
[ 1 of 13] Compiling Hledger.Cli.Version ( Hledger/Cli/Version.hs,
dist/build/Hledger/Cli/Version.o )
[ 2 of 13] Compiling Hledger.Cli.Options ( Hledger/Cli/Options.hs,
dist/build/Hledger/Cli/Options.o )
[ 3 of 13] Compiling Hledger.Cli.Utils ( Hledger/Cli/Utils.hs,
dist/build/Hledger/Cli/Utils.o )
[ 4 of 13] Compiling Hledger.Cli.Commands.Balance (
Hledger/Cli/Commands/Balance.hs,
dist/build/Hledger/Cli/Commands/Balance.o )
[ 5 of 13] Compiling Hledger.Cli.Commands.Convert (
Hledger/Cli/Commands/Convert.hs,
dist/build/Hledger/Cli/Commands/Convert.o )
ghc: panic! (the 'impossible' happened)
(GHC version 6.10.4 for x86_64-apple-darwin):
applyTypeToArgs
parsec-2.1.0.1:Text.ParserCombinators.Parsec.Prim.a32{v r2M4} [gid]
@ csv-0.1.1:Text.CSV.CSV{tc rbIw}
(csv-0.1.1:Text.CSV.a22{v rbIs} [gid]
cast (ghc-prim:GHC.Prim.sym{(w) tc 34v}

((parsec-2.1.0.1:Text.ParserCombinators.Parsec.Prim.:CoGenParser{tc
r4L})
ghc-prim:GHC.Types.Char{(w) tc 3o}
ghc-prim:GHC.Unit.(){(w) tc 40}
csv-0.1.1:Text.CSV.CSV{tc rbIw})
::
<pred>parsec-2.1.0.1:Text.ParserCombinators.Parsec.Prim.State{tc r55}
ghc-prim:GHC.Types.Char{(w) tc 3o}
ghc-prim:GHC.Unit.(){(w) tc 40}
->
parsec-2.1.0.1:Text.ParserCombinators.Parsec.Prim.Consumed{tc r5z}

(parsec-2.1.0.1:Text.ParserCombinators.Parsec.Prim.Reply{tc r5y}
ghc-prim:GHC.Types.Char{(w) tc 3o}
ghc-prim:GHC.Unit.(){(w) tc 40}
csv-0.1.1:Text.CSV.CSV{tc rbIw})
~

parsec-2.1.0.1:Text.ParserCombinators.Parsec.Prim.GenParser{tc r4E}
ghc-prim:GHC.Types.Char{(w) tc 3o}
ghc-prim:GHC.Unit.(){(w) tc 40}
csv-0.1.1:Text.CSV.CSV{tc rbIw}))
csvfile{v scAD} [lid]
forall st{tv acrg} [tv] a{tv acrh} [tv].
parsec-2.1.0.1:Text.ParserCombinators.Parsec.Prim.GenParser{tc r4E}
csv-0.1.1:Text.CSV.CSV{tc rbIw} st{tv acrg} [tv] a{tv acrh} [tv]
-> [base:GHC.Base.String{tc 36u}]
-> parsec-2.1.0.1:Text.ParserCombinators.Parsec.Prim.State{tc r55}
csv-0.1.1:Text.CSV.CSV{tc rbIw} st{tv acrg} [tv]
-> parsec-2.1.0.1:Text.ParserCombinators.Parsec.Prim.Consumed{tc r5z}
(parsec-2.1.0.1:Text.ParserCombinators.Parsec.Prim.Reply{tc r5y}
csv-0.1.1:Text.CSV.CSV{tc rbIw} st{tv acrg} [tv] a{tv acrh} [tv])

Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug

cabal: Error: some packages failed to install:
hledger-0.12.1 failed during the building phase. The exception was:
exit: ExitFailure 1

Original issue: http://code.google.com/p/hledger/issues/detail?id=24

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.