Simon Michael
207922a023
lib: Commodity now has a CommoditySymbol and style
2016-05-08 08:07:27 -07:00
Simon Michael
aac67b3d4d
lib: fix parsedate haddock
2016-05-06 19:02:48 -07:00
Simon Michael
ce344f9b96
lib: fix a haddock error
2016-05-06 18:16:12 -07:00
Simon Michael
e9c6c1ef5e
lib: convert date hunit tests to doctests
2016-05-06 18:10:49 -07:00
Simon Michael
c9a892eabe
lib: remove hopefully superfluous comment
2016-05-06 17:40:33 -07:00
Simon Michael
a52fd599c4
lib: more compact Show instance for datespans
2016-05-06 17:23:24 -07:00
Simon Michael
884c0b8a58
reg: fix sorting regression with --date2 ( #326 )
...
And rewrite/clarify postingsReport.
2016-05-06 17:19:43 -07:00
Simon Michael
6cbc0ceb0d
lib: note issues
2016-05-06 17:19:23 -07:00
Simon Michael
e7a1eb627f
journal: export parsing helpers, fix warning
2016-05-06 16:58:07 -07:00
Simon Michael
e2ce7c4802
doc, tests: clarify what --date2 does
2016-05-06 16:57:24 -07:00
Simon Michael
525ca6041d
lib: tweak balance assertion message
2016-05-04 09:08:53 -07:00
Simon Michael
9a424d77fc
lib: more thorough journal reloading
...
Reloading a journal should now reload all included files as well.
2016-05-02 20:07:53 -07:00
Simon Michael
7ec3ebb66b
update tested-with
...
Note we seem to have lost GHC 7.4 compatibility. It should be fixable if
anyone cares.
2016-04-28 17:32:17 -07:00
Simon Michael
856c0b3042
lib: fix bracketed posting dates, parser cleanup ( #304 )
...
Bracketed posting dates were fragile; they worked only if you wrote full
10-character dates. Also some semantics were a bit unclear. Now they
should be robust, and have been documented more clearly. This is a
legacy undocumented Ledger syntax, but it improves compatibility and
might be preferable to the more verbose "date:" tags if you write
posting dates often (as I do).
Internally, bracketed posting dates are no longer considered to be tags.
Journal comment, tag, and posting date parsers have been reworked, all
with doctests. Also the journal parser types generally have been
tightened up and clarified, making it much easier to know how to combine
and run them. There's now
-- | A parser of strings with generic user state, monad and return type.
type StringParser u m a = ParsecT String u m a
-- | A string parser with journal-parsing state.
type JournalParser m a = StringParser JournalContext m a
-- | A journal parser that runs in IO and can throw an error mid-parse.
type ErroringJournalParser a = JournalParser (ExceptT String IO) a
and corresponding convenience functions (and short aliases) for running them.
2016-04-28 13:34:57 -07:00
Simon Michael
259e7bfbe3
lib: add a doctest suite
2016-04-28 13:34:57 -07:00
Simon Michael
9946e7df88
lib: organise JournalReader a bit
2016-04-28 13:34:57 -07:00
Simon Michael
50aeb90596
lib, ui: GHC 8 compatibility
2016-04-28 12:55:19 -07:00
Simon Michael
91847fc6fd
data-files does not support wildcards after all
2016-04-20 13:23:05 -07:00
Simon Michael
33b5c5dc94
declare generated docs as data-files, sync hpack yamls
2016-04-20 12:47:17 -07:00
Simon Michael
80948d1db7
doc: also commit info files, should fix travis
2016-04-20 12:47:17 -07:00
Simon Michael
3d129f6d31
shake: also generate info manuals
2016-04-18 17:54:55 -07:00
Simon Michael
df4b82740b
lib: make the supported format names accessible
2016-04-18 16:43:57 -07:00
Simon Michael
82f35dddd0
doc: m4 macro for web table of contents
2016-04-16 11:00:39 -07:00
Simon Michael
4c291dc54e
doc: use macros not divs to select web/man content
...
Use slightly clearer m4 macros instead of special divs to mark content
as web only/man only. The temporary doc/*.md files are no longer needed,
slightly more redundant work is done.
2016-04-16 10:09:51 -07:00
Simon Michael
130d259cb1
site: show version links on manuals
2016-04-16 04:44:33 -07:00
Simon Michael
6a97a246dd
doc: use m4 for all manuals, shake cleanup
2016-04-16 03:50:30 -07:00
Simon Michael
e4cff6a30f
tools: .ghci for each package, sets shorter prompt
2016-04-15 16:06:45 -07:00
Simon Michael
b73bcda52a
include txt man pages in cabal tarballs
2016-04-13 22:38:53 -07:00
Simon Michael
bfa5e14373
doc: generate (and commit) text-rendred man pages
...
Intended for embedding in executables. Quick implementation,
hopefully these are fixed-width and compatible with all terminals.
2016-04-13 22:29:16 -07:00
Simon Michael
588f36d662
rename timelog format to timeclock
2016-04-12 21:13:19 -07:00
Simon Michael
8ee0c7fa76
doc: update man pages
2016-04-12 20:31:17 -07:00
Simon Michael
aecbcf9461
doc: merge last bits of old manual into new one
2016-04-12 20:22:40 -07:00
Simon Michael
b4d491791c
doc: include nroff man pages in cabal tarballs
2016-04-12 11:25:46 -07:00
Simon Michael
5e71d749c4
doc: ensure all five main packages have a README
2016-04-12 11:13:01 -07:00
Simon Michael
96a6d2239a
doc: CSV: headings, clarifications
2016-04-10 18:19:43 -07:00
Simon Michael
5754f2bb4a
doc: updates, merge some more from old manual
2016-04-09 14:23:55 -07:00
Simon Michael
5d9d155ca0
doc: misc cleanups
2016-04-07 21:59:30 -07:00
Simon Michael
443b870481
site: fix man page TOCs, add combined man page
2016-04-07 08:55:21 -07:00
Simon Michael
f3fb1a89f2
doc: exclude web content from nroffs
2016-04-06 08:20:27 -07:00
Simon Michael
24c2e7d471
doc: move man page source and nroff to PKG/doc/
2016-04-06 08:16:38 -07:00
Simon Michael
2089168e7d
doc: update hledger_journal.5 man page
2016-04-05 16:17:08 -07:00
Simon Michael
eab6b110bc
tools: simplify doc filtering class names
2016-04-05 16:17:08 -07:00
Simon Michael
31a754544a
journal: parse account directives
...
We now parse account directives, like Ledger's. We don't do anything
with them yet. The default parent account feature must now be spelled
"apply account"/"end apply account".
2016-04-04 11:35:39 -07:00
Simon Michael
671ade5062
site: simplify, clean up, refresh
...
- Docs are now collected on a single page
- Lots of copy updates
- The front page is less cluttered
- More whitespace at the sides
- The (still WIP) man pages are now linked
- Describe and link to plaintextaccounting.org
2016-02-21 12:39:32 -08:00
Simon Michael
9354687f4f
doc: commit a missing nroff file
2016-02-21 02:42:11 -08:00
Simon Michael
931a1d5b9e
hlint
2016-02-21 02:37:59 -08:00
Simon Michael
2dbe07a666
doc: mark up man pages for man/web rendering
...
And commit the latest nroff output. It'll need retesting.
2016-02-21 02:32:40 -08:00
Simon Michael
6259701842
prettify/hlint
2016-02-20 20:12:02 -08:00
Simon Michael
494c74f81b
tools: hide package.yaml files to fix travis
...
The latest stack runs a buggy hpack that generates invalid
cabal files. Rename them to future-package.yaml for now.
2016-02-20 19:07:49 -08:00
Simon Michael
c97d2cfe6b
doc: timedot: link to account aliases
2016-02-20 10:30:09 -08:00
Simon Michael
e5adaff188
doc: timedot: add sample reports
2016-02-20 10:26:42 -08:00
Simon Michael
a9afd7bcbe
lib: slightly better journal/time format detection
...
The Journal, Timelog and Timedot readers' detectors now check
each line in the sample data, not just the first one. I think
the sample data is only about 30 chars right now, but even so
this fixed a format detection issue I was seeing.
2016-02-19 23:02:10 -08:00
Simon Michael
70863ae40b
lib: timedot allow indenting
2016-02-19 22:58:08 -08:00
Simon Michael
4b4a4bacf7
lib: timedot parse order fix
2016-02-19 22:57:43 -08:00
Simon Michael
0adcdf21f8
lib: timedot parsing fix
2016-02-19 22:57:06 -08:00
Simon Michael
b26dd3d9b0
lib: fix timedot comments
2016-02-19 22:55:30 -08:00
Simon Michael
dd77ac4c0a
lib: note debugLevel gotcha in GHCI
2016-02-19 22:54:38 -08:00
Simon Michael
baeca07440
doc: note include does not support *
2016-02-19 22:51:18 -08:00
Simon Michael
c9937db10e
lib: show txn's file position in assertion errors
2016-02-19 22:48:59 -08:00
Simon Michael
1cf223a2db
lib: finish move of reading utils, useful for 320
...
It seems this already began in today's timedot commit.
2016-02-19 21:37:12 -08:00
Simon Michael
8badaf3b87
doc: timedot doc fixes
2016-02-19 18:04:33 -08:00
Simon Michael
06b54bf05e
lib: timedot format, convenient for time logging
...
Timedot is a plain text format for logging dated, categorised
quantities (eg time), supported by hledger. It is convenient for
approximate and retroactive time logging, eg when the real-time
clock-in/out required with a timeclock file is too precise or too
interruptive. It can be formatted like a bar chart, making clear at a
glance where time was spent.
2016-02-19 17:55:57 -08:00
Simon Michael
5da355c06f
lib: more ergonomic balance assertion errors
2016-02-10 07:40:18 -08:00
Simon Michael
a2b989d898
journal: support ledger3-compatible "apply account"
2016-01-29 07:39:26 -08:00
Simon Michael
8f432b651e
api: Typeable/Data/Generic instances for Account
2016-01-21 15:16:11 -08:00
Simon Michael
96e1ca7ea1
lib: refactor amount canonicalisation
...
Amount display style canonicalisation code and terminology has been
clarified a bit. Individual amounts still have styles; from these we
derive the standard "commodity styles". In user docs, we might call
these "commodity formats" since a Ledger-compatible commodity directive
would use the "format" keyword.
2015-11-24 01:40:10 -08:00
Simon Michael
4ed27d5d25
doc: add release date to changelogs
2015-10-30 14:09:19 -07:00
Simon Michael
a5fd56223c
bump version to 0.27
2015-10-30 13:21:51 -07:00
Simon Michael
36d97a2e50
update cabal docs and other fields
2015-10-30 13:08:03 -07:00
Simon Michael
0ee2ff7ab2
lib: fix off-by-one in transaction index
2015-10-30 10:41:42 -07:00
Simon Michael
2feace32dd
lib: number transactions as they are read
...
And allow looking up transactions by their read order (index),
or the previous/next transactions in the sequence.
2015-10-29 20:12:46 -07:00
Simon Michael
11fee9fbe8
ui: txn: show multi-commodity amounts on one line
...
In the transaction screen, show multi-commodity posting amounts on one
line, consistent with the rest of hledger-ui.
2015-10-29 18:10:06 -07:00
Simon Michael
76ab5df833
lib: credit pandoc for the charWidth function
2015-10-29 09:19:20 -07:00
Simon Michael
6ae14b3f56
doc: update changelogs
2015-10-26 06:09:57 -07:00
Simon Michael
191c2e533f
doc: generate man pages for each package ( #282 )
...
There are now six man pages, one for each main executable and file
format, generated from markdown by the mighty pandoc. They are basically
the content of the user manual, split up and moved into the appropriate
package directory. I've also committed the generated man files.
The man pages' markdown source (hledger/hledger.1.md,
hledger-lib/hledger_journal.5.md etc.) are now the master documentation
files. The plan is to concatenate them (with a little munging) to form
the all-in-one user manual for the website, at release time. This also
separates the hledger.org user manual from the latest doc commits, which
should simplify website management.
2015-10-20 06:26:09 -07:00
Simon Michael
d24b1b96f7
lib: parser cleanups
2015-10-17 12:09:03 -07:00
Simon Michael
bc43036117
lib: use consistent p suffix for parsers
2015-10-17 11:51:45 -07:00
Simon Michael
8214a6ccef
dangit.. simplify combineJournalUpdates for real
2015-10-13 11:54:15 -07:00
Simon Michael
3be88ad6b5
simplify combineJournalUpdates
...
I really don't see why that extra x parameter is needed or works..
rewrite it in simpler form.
I also might be introducing breakage for older GHC's by using
unconditionally <$>, but I'm not seeing that for some reason
(tested back to ghc 7.6).
2015-10-13 11:49:51 -07:00
Simon Michael
71921135f6
include P amounts in canonicalisation ( fixes #131 )
...
Since market price amounts didn't contribute to the canonical commodity
styles, they were being reset to the null style. And this propagated to
the reported amounts when -V was in effect, causing much confusion.
Now, market prices contribute to canonicalisation and the expected
styles are preserved even with -V.
cf https://github.com/simonmichael/hledger/issues/131#issuecomment-133545140
2015-10-11 16:07:31 -07:00
Simon Michael
eb75946e64
print: always right-align amounts
...
print now always right-aligns the amounts in an entry, even when they
are wider than 12 characters.
If there is a price, it's considered part of the amount for
right-alignment. Maybe it would be nicer to put amounts and prices in
separate columns ? That will get a little complicated, needs more
discussion/design.
Also some cleanup of postingAsLines.
2015-10-10 15:09:42 -07:00
Simon Michael
155722d7ee
make strWidth aware of multi-line strings ( #242 )
2015-10-10 15:08:28 -07:00
Simon Michael
1d944ac1a9
doc: balance --format does not support - any more
2015-10-10 15:07:49 -07:00
Simon Michael
3b40edba9c
print: fix wide char support, add tests ( #242 )
...
The print command wasn't lining up amounts with wide chars in account
names, fixed it properly this time. Transaction and Posting's Show instances
should also be wide-char-aware now.
2015-10-10 11:53:28 -07:00
Simon Michael
939f7184c9
journal: make "end comment" optional, like ledger
...
The "comment" directive longer requires an "end comment", and will
extend to the end of the file(s) without it.
2015-10-07 16:41:49 -07:00
Simon Michael
a2f344f6d9
journal: require dates to begin with a digit
2015-10-04 08:41:01 -10:00
Simon Michael
deea422dc1
fix build error ( #242 )
2015-09-29 21:16:51 -10:00
Simon Michael
58b98faf36
balance: wide-char-aware multicolumn reports ( #242 )
2015-09-29 20:54:05 -10:00
Simon Michael
ef27e5c427
string utils cleanup
2015-09-28 18:47:05 -10:00
Simon Michael
42e2da4bb6
balance, print; more wide char support ( #242 )
...
Simple (non-multicolumn) balance reports containing wide characters
should now align correctly (in apps and fonts that show wide chars as
double width). Likewise, the print command.
2015-09-28 18:33:18 -10:00
Simon Michael
5b5e5eeaf4
register: wide-character-aware layout ( #242 )
...
Wide characters, eg chinese/japanese/korean characters, are typically
rendered wider than latin characters. In some applications (eg gnome
terminal or osx terminal) and fonts (eg monaco) they are exactly double
width. This is a start at making hledger aware of this. A register
report containing wide characters (in descriptions, account names, or
commodity symbols) should now align its columns correctly, when viewed
with a suitable font and application.
2015-09-28 16:12:20 -10:00
Simon Michael
dafa8efada
note possible combineJournalUpdates inefficiency
2015-09-26 16:01:27 -10:00
Simon Michael
5048d3bf06
lib: memoise accountNameApplyAliases too ?
...
This adds a accountNameApplyAliasesMemo, which memoises the result of
applying a set of aliases (simple and regex) to an account name. In
theory this should reduce more repetitive work, but in practice it
doesn't seem to make a difference, so it's unused for now.
2015-09-26 15:58:12 -10:00
Simon Michael
4326f88c26
lib: memoise aliasReplace for fast regex aliases ( #244 )
...
Roughly speaking, the time to apply regular expression account aliases
was O(aliases x transactions), and should now be O(aliases x accounts).
Also, the constant factor was reduced a lot by the recent commit
memoising toRegex. So now, regex aliases should be "free" like simple
aliases - use as many as you want, the slowdown shouldn't be noticeable.
2015-09-26 15:45:44 -10:00
Simon Michael
041541e466
lib: memoised versions of regexReplace[CI] ( #244 )
2015-09-26 15:45:17 -10:00
Simon Michael
f8f2d457b9
lib: memoize toRegex[CI] ( #244 )
...
The regex helpers were converting strings to regex-tdfa regular
expressions on the fly every time, but this appears to be quite
expensive. The simplest memoisation lib seems to solve it nicely.
2015-09-26 15:39:21 -10:00
Simon Michael
591abefe9e
clarify modifiedaccountnamep
2015-09-24 14:23:52 -10:00
Simon Michael
f4c963b648
whitespace
2015-09-22 12:59:25 -07:00
Simon Michael
821f1b7120
lib: fix tests for zero amount style ( #230 , #276 )
2015-09-02 16:38:45 -07:00
Simon Michael
b770190942
lib: clarify flattenAccounts
2015-09-02 16:22:08 -07:00
Simon Michael
b8d75b7728
balance, etc: fix amount style loss ( fixes #230 , #276 )
...
hledger-lib-0.24's "track the commodity of zero amounts when
possible (useful eg for hledger-web's multi-commodity charts)" preserved
the commodity when normalising a zero mixed amount, but not the amount
style. This showed up as occasionally incorrect amount style (commodity
symbol placement, decimal point character, etc.) in balance reports with
certain journals, like this:
$ hledger bal
€3000.00 a <------ not using the canonical € style
4000,58€ 1
-1000,58€ D
-3000,00€ e
--------------------
0
I thought this would require a big rewrite of amount arithmetic, but it
seems that just being a little more careful is enough. When normalising
a mixed amount containing multiple zeros in the same commodity, we now
preserve the last zero with its amount style, instead of replacing them
all with a new one.
2015-09-02 16:21:56 -07:00
Simon Michael
92038b7d72
web: fix options breakage, add test code to tags
2015-08-28 15:23:49 -07:00
Simon Michael
74512814ec
cli/ui/web: rename X.Options modules to X.XOptions
...
Make these modules' names more like the heavily-used types they
define (CliOpts, UIOpts, WebOpts). This is consistent with
RawOptions and ReportOptions, and helps with code navigation.
2015-08-28 12:43:51 -07:00
Simon Michael
8673332c8e
ui, web: show fewer other accounts in acct register
...
To reduce noise in the "other accounts" field of hledger-ui's and
hledger-web's account register: if there are both real and virtual
postings to other accounts, show only the accounts posted to by real
postings.
Use case: in many transactions I have extra balanced-virtual postings
which adjust budget envelopes (subaccounts of checking). These clutter
up the register's other accounts field making it useless. Excluding them
(when there are also real postings) makes it more useful for me and
probably others.
2015-08-28 11:58:57 -07:00
Simon Michael
f3dd5eb830
fix options breakage with GHC < 7.10
2015-08-28 11:17:49 -07:00
Simon Michael
0d02262463
validate --depth/depth:'s argument is positive
2015-08-28 09:57:30 -07:00
Simon Michael
4dd1e9c725
clean up options validation a little
2015-08-28 09:57:01 -07:00
Simon Michael
5fa06453f1
lib: note depth's filtering and display control uses
2015-08-28 08:04:54 -07:00
Simon Michael
19c3749b50
balance: move -V helpers to the *Report modules
2015-08-26 10:38:45 -07:00
Simon Michael
d23d9acf33
fix haddock failures ( #281 )
2015-08-26 10:11:32 -07:00
Simon Michael
3a7a5d6035
lib: 6-tuple accessors
2015-08-24 16:24:11 -07:00
Simon Michael
866414a528
ui: provide a more useful transaction register
...
The register screen is now like the register view in hledger-web (and
other accounting systems), rather than hledger's register command.
This means:
- it shows transactions affecting a particular current account, rather
than postings matching a pattern.
- Each line represents a whole transaction.
- The account field shows the *other* account being transacted with.
When there is more than one, they are all listed, abbreviated and
marked with "(split)".
- The amount field shows the effect of the transaction on the current
account; positive for an inflow to this account, negative for an
outflow.
- The balance field should usually show the current account's historic
balance as of the transaction date, even when you change the report
start date. (Not working yet - currently it always shows the running
total).
- Transactions are listed most recent first, currently.
2015-08-24 16:24:11 -07:00
Simon Michael
6fd1e965ed
fix cabal file regression breaking GHC<7.10 ( #280 )
2015-08-21 12:19:43 -07:00
Simon Michael
cc98ee39f7
balance, lib: --format/StringFormat improvements
...
The balance command's --format option (in single-column mode) can now
adjust the rendering of multi-line strings, such as amounts with multiple
commodities. To control this, begin the format string with one of:
%_ - renders on multiple lines, bottom-aligned (the default)
%^ - renders on multiple lines, top-aligned
%, - render on one line, comma-separated
Also the final total (and the line above it) now adapt themselves to a
custom format.
2015-08-19 20:53:51 -07:00
Simon Michael
7aecbac851
lib: split up Utils more
2015-08-19 20:53:50 -07:00
Simon Michael
69c870c6f0
balance, lib: make StringFormat singular; cleanup
...
Pass around a StringFormat rather than [StringFormat].
Also more balance report item rendering refactoring.
2015-08-19 20:53:50 -07:00
Simon Michael
36dd64cf02
balance, lib: clarify --format implementation
...
The --format option's OutputFormat type was named confusingly like the
--output-format option. It has been renamed StringFormat to distinguish
it from StorageFormat (aka the data file format, referenced by
--output-format). Related code and types have been consolidated.
Also the (single-column) balance report's item rendering has had
some cleanup.
2015-08-19 20:53:49 -07:00
Simon Michael
2b339667e2
Merge branch 'perf-polyparse' (early part)
2015-08-13 13:10:10 -07:00
Simon Michael
632a000f08
derive NFData in a way compatible with GHC < 7.10
...
The DeriveAnyClass extension requires GHC 7.10, so instead do this in a
more verbose backwards-compatible way. Adds a dependency on deepseq.
2015-08-13 12:58:44 -07:00
Simon Michael
790d42bfa4
derive NFData (and Generic) for all types
...
so we can benchmark things more easily with criterion.
As well as NFData, the Generic instance and a bunch more GHC extensions
seemed necessary. This is a little scary, impact unknown.
2015-08-13 12:58:35 -07:00
Simon Michael
42d452f99c
abstract parsec's SourcePos so as to derive NFData
...
The NFData instance helps us time things with criterion.
2015-08-13 12:56:15 -07:00
Simon Michael
fcb7d297c8
use canonical bugs.hledger.org url in cabal yamls
2015-08-13 10:02:06 -07:00
Simon Michael
48e31d4f8c
bump version to 0.26.98
2015-08-12 22:49:04 -07:00
Simon Michael
a9b2e5409c
switch to hpack-generated cabal files
...
The hledger-lib, hledger and hledger-web cabal files are now generated
from the package.yaml files with hpack, plus some manual fixups.
2015-08-12 22:45:08 -07:00
Simon Michael
b91f2b85d0
update hpack package.yaml files
2015-08-12 09:25:28 -07:00
Simon Michael
94094252be
rename historical prices to market prices
...
Simpler and clearer. We now have "transaction prices" (recorded as part
of transaction amounts) and "market prices" (recorded with P
directives). Both are matters of historical record, also this avoids
confusion with the balance command's "historical balances".
2015-08-09 16:20:02 -07:00
Simon Michael
49be1f646e
balance: add -V/--value to show as market value
...
Initial support of market value reporting and currency conversion,
similar in spirit to Ledger's. The balance command now has a -V/--value
flag that converts all the reported amounts using their "default market
price". That is the latest market price (P directive, formerly called
"historical prices") found in the journal for their commodity that is on
or before the report end date.
Unlike Ledger, hledger's -V only uses the market prices recorded with P
directives, ignoring transaction prices recorded as part of posting
amounts (which -B/--cost uses). Using -B and -V together is allowed.
2015-08-09 16:03:16 -07:00
Simon Michael
040d00e8fb
also canonicalise historical price amounts
...
So that when we convert amounts to market value, the result will have
the canonical style of the target commodity.
2015-08-09 15:12:16 -07:00
Simon Michael
78018cc24d
tools: yaml definitions for the hledger cabal files
...
Here are hpack package.yaml files for the other hledger cabal files.
These remove a lot of human-error-prone duplication.
They are not used yet as hpack isn't quite mature enough -
when it supports flags and benchmarks we will probably switch.
2015-07-14 17:32:49 -07:00
Simon Michael
087f3a49bc
note older tested-with versions based on hackage builder
2015-07-13 20:23:59 -07:00
Simon Michael
0b2ccdd298
0.26 changelogs/release notes
2015-07-12 17:58:02 -07:00
Simon Michael
90ae65eda9
cherry pick 0.25.1 changelogs
2015-07-12 15:48:21 -07:00
Simon Michael
e5c0d75117
bump version to 0.26
2015-07-12 15:29:10 -07:00
Simon Michael
73e4ccee80
allow year parser to handle arbitrarily large years
2015-07-12 12:32:53 -07:00
Simon Michael
7a050d65c8
bs/is/cf: recognise "debt..." as a synonym for "liabilities..."
2015-07-12 12:32:53 -07:00
Simon Michael
cddaa2724d
rendering a June 30 date span properly ( #272 )
...
30 days hath september, april, JUNE and november
2015-07-02 20:44:39 -07:00
Simon Michael
b827f1a146
more balanceTransaction cleanup
...
Clarify: it's fine to try to infer prices on a transaction that has had
an amount inferred, it just won't have any effect.
2015-07-02 18:06:03 -07:00
Simon Michael
b735107f43
print: show inferred unit prices with at least 2 decimal places
...
We don't do a good job of calculating good-looking unit prices when the
commodity display precisions are low. Eg when a journal doesn't use any
decimal places, any inferred unit prices are shown by the print command
also with no decimal places, which makes them look wrong.
Now inferred unit prices always have a minimum display precision of 2,
which helps a bit. Could do better.
2015-07-02 17:36:09 -07:00
Simon Michael
5978a19b15
finish refactoring balanceTransaction
2015-07-02 16:59:43 -07:00
Simon Michael
61e4034de5
Journal's Show instance reported one too many accounts
2015-06-28 14:14:56 -07:00
Simon Michael
ba18f4a25a
begin refactoring balanceTransaction
2015-06-28 12:03:42 -07:00
Simon Michael
b9883d9eb1
query: make real: equivalent to real:1
2015-06-12 06:23:34 -07:00
Simon Michael
ba6269981b
begin reviving journalreader unit tests
2015-06-11 10:16:46 -07:00
Simon Michael
d1769d9d62
journal: allow journal entries with no postings
...
We now parse, and also print, posting-less journal entries, as I
proposed on the lists.
These are not real General Journal entries/transactions, but here is my
rationale:
- Ledger and beancount parse them
- if we parse them, we should print them
- they provide a natural way to record and report non-transaction events
- most of all, they permit more gradual introduction and learning of the concepts.
Eg a beginner can keep a simple journal even before learning about accounts and postings.
2015-06-11 10:16:46 -07:00
Imuli
49f1744ae5
read multiple files: internals
2015-05-28 10:40:48 -07:00
Simon Michael
46bbc9e0aa
fix simple aliases that match the whole account name
2015-05-28 10:40:48 -07:00
Simon Michael
ef890e1b23
add: quote file name consistently in output
...
Don't show quotes around the journal file path in the "Creating..."
message since there aren't any in the subsequent "Adding..." message.
2015-05-27 14:41:23 -07:00
Simon Michael
8d75635505
print: limit display precision of generated prices ( #262 )
...
When a transaction posts to two commodities without specifying the
conversion price, we generate a price which makes it balance
(cf http://hledger.org/manual.html#prices ).
Until now, these generated prices were always shown with full precision
(all available decimal digits) so that a manual calculation with the
displayed numbers would agree.
If there's just one posting in the commodity being priced, we can use an
exact total price and the precision is no problem.
But if there are multiple postings in the commodity being priced, we
must show the averaged unit price. This can be an irrational number,
which with our current Decimal-based implementation would display an
excessive 255 decimal digits. So in this case we now set the price's
display precision to the sum of the (max) display precisions of the
commodities involved. An example:
hledgerdev -f- print
<<<
1/1
c C 10.00
c C 11.00
d D -320.00
>>>
2015/01/01
c C 10.00 @ D 15.2381
c C 11.00 @ D 15.2381
d D -320.00
>>>=0
There might still be cases where this will show more price decimal
places than necessary. For now, YAGNI.
2015-05-27 14:21:19 -07:00
Simon Michael
87d5ddfb71
query: drop the empty: query term
...
This seems to be equivalent to the --empty option, and overlaps
a bit confusingly with amt:0. I think we can drop it.
2015-05-21 16:44:11 -07:00
Simon Michael
fdc507bd13
match tag names with a regexp, like everything else
2015-05-21 16:25:19 -07:00
Simon Michael
9e2111106b
drop regexpr dependency
2015-05-17 08:32:45 -07:00
Simon Michael
68c71de25d
tighten up status:X parsing, cleanups
2015-05-16 12:21:50 -07:00
Simon Michael
d1f63334ee
handle pending status correctly, add --pending ( #250 )
...
A transaction/posting status of ! (pending) was effectively equivalent
to * (cleared). Now it's a separate state, not matched by --cleared.
The new Ledger-compatible --pending flag matches it, and so does
--uncleared. The equivalent search queries are now status:*, status:!
and status: (the old status:1 and status:0 spellings are deprecated).
Since we interpret --uncleared and status: as "any state except cleared",
it's not currently possible to match things which are neither cleared
nor pending.
2015-05-16 11:51:35 -07:00
Simon Michael
934d217523
changelogs
2015-05-14 13:39:54 -07:00
Simon Michael
077e3c6a02
journal: re-add non-regex aliases, as default ( #252 )
...
The regex account aliases added in 0.24 trip up people switching between
hledger and Ledger. (Also they are currently slow).
This change makes the old non-regex aliases the default; they are
unsurprising, useful, and pretty close in functionality to Ledger's.
The new regex aliases are also available; they must be enclosed in
forward slashes. Ledger effectively ignores these, which is ok.
Also clarify docs, refactor, and use the same parser for alias
directives and alias options
2015-05-14 13:01:50 -07:00
Simon Michael
70d87613f2
some cleanup of debug trace helpers
2015-05-14 13:01:49 -07:00
Simon Michael
7c3379db63
journal: allow whitespace following a comment directive
2015-05-09 13:25:31 -07:00
Simon Michael
61423bdad4
consistently require latest base-compat for sanity
2015-04-29 07:16:08 -07:00
Simon Michael
52ce7c1d93
make recent timelog commit ghc 7.8 compatible
2015-04-29 07:10:13 -07:00
Simon Michael
bb71b077a2
fix runExceptT breakage from recent PR ( #248 )
2015-04-29 07:08:33 -07:00
Simon Michael
5102eca9c3
timelog: support the description field ( fix #247 )
2015-04-28 13:54:36 -07:00
Simon Michael
fb37e99bc8
lib: simple dates must start with non-space; docs
2015-04-28 13:50:58 -07:00
Simon Michael
dac8a784f4
bump version to 0.26 alpha
2015-04-28 13:48:23 -07:00
Simon Michael
1bc9b71f28
bump version to 0.25
2015-04-28 13:42:41 -07:00
Simon Hengel
964a410b24
hledger-lib: Update for base-compat-0.8.0 (see #245 )
2015-04-23 15:41:59 +08:00
Simon Michael
735f818c22
changelogs
2015-04-07 17:14:44 -07:00
Simon Michael
ab7ed99cc4
fix broken TimeLocale import for ghc 7.8 ( #239 )
2015-03-29 16:30:25 -07:00
Simon Michael
f8a24ccead
fix parseTime warnings with time 1.5+ ( #239 )
2015-03-29 16:12:54 -07:00
Simon Michael
e838ed0637
fix a Control.Monad.Error warning ( #239 )
2015-03-29 16:12:05 -07:00
Simon Michael
e7376e4ea5
unnecessary CPP pragma
2015-03-29 16:10:39 -07:00
Simon Michael
f75849cdd6
fix ghc 7.10 Applicative import warnings ( #239 )
...
Still needed CPP, despite using base-compat.
2015-03-29 16:09:41 -07:00
Simon Michael
8e50395b7c
ErrorT -> ExceptT, handle mtl <2.2.1 && >=2.2.1 ( #239 )
2015-03-29 14:16:42 -07:00
Simon Michael
216ebb8333
hledger-lib: mark the double flag as manual only
...
This would only be used for developer testing, cabal should never toggle
it automatically.
2015-03-27 15:46:57 -07:00
Simon Michael
b8b730226f
hledger/hledger-lib: update tested-with
...
Add 7.10 and drop 7.2-7.6 which haven't been tested recently (but should
still work)
2015-03-27 15:44:39 -07:00
Simon Michael
4538745005
adapt to GHC-7.10's foldable/traversable changes ( #239 )
2015-03-27 15:43:28 -07:00
Simon Michael
e60eb71467
adapt to GHC-7.10's time-1.5 ( #239 )
2015-03-27 15:42:32 -07:00
Simon Michael
414a33f3e4
merge changelog updates
2015-03-15 13:20:55 -07:00
Simon Michael
c47463332a
allow utf8-string-1 (fix fpco/stackage/#426)
2015-03-15 11:06:53 -07:00
Simon Michael
adf10c238d
update changelogs
2015-02-27 08:37:16 -08:00
Simon Michael
592ae9a28e
timelog: show hours with 2 decimal places, not 1
2015-02-27 08:37:16 -08:00
Simon Michael
099a1de3b6
clarify built-in commodities rounding
2015-02-27 08:37:16 -08:00
Simon Michael
d2877a919a
add some type signatures in Utils, helps ghci-web
2015-02-09 17:42:51 +00:00
Simon Michael
3d5b269b3d
fix rendering of week 52 heading in weekly reports
2015-01-18 09:32:14 -08:00
Julien Moutinho
af56ced3b0
lib: add eof parsing checks
2015-01-11 09:45:55 -08:00
Simon Michael
fabf8a743d
changelogs
2015-01-10 22:28:36 -08:00
Simon Michael
257ce57383
fix balance accumulation across assertions ( #195 )
...
A sequence of balance assertions asserting first one commodity, then
another, then the first again, was not working.
2015-01-10 22:17:19 -08:00
Simon Michael
6543f44d82
doc: forgot add release date to changelogs
2015-01-10 17:03:44 -08:00
Simon Michael
6da4942633
balance: tweak flags a bit; we now use -N and -T
...
-N doesn't seem to be used by Ledger currently; we'll
use it as shortcut for --no-total.
-T is used by Ledger to set a custom value expression for the final
total. I'm going to take it as a shortcut for --row-total instead.
2014-12-27 15:34:23 -08:00
Simon Michael
ba0623165f
balance: row totals/averages in multicolumn mode
2014-12-27 15:24:45 -08:00
Simon Michael
e794412a8f
fix JournalReader ctx warning
2014-12-27 15:24:02 -08:00
Simon Michael
9c68944c79
journal, csv: comment lines can also start with *
...
As in Ledger. This means you can embed emacs org/outline-mode nodes in
your journal file and manipulate it like an outline.
2014-12-27 14:41:28 -08:00
Simon Michael
a719cb8f6e
bump version to 0.25-unreleased
2014-12-26 11:08:20 -08:00
Simon Michael
e77225038f
bump version to 0.24
2014-12-25 11:42:39 -08:00
Simon Michael
62bad65e5b
tighten up status: docs and behaviour a bit ( fix #227 )
...
A status: query term no longer accepts * as a synonym for 1,
which was a bit confusing since 1 matches both * and !.
For now, it takes a value of 1 (true) or anything else (false).
2014-12-24 23:48:23 -08:00
Simon Michael
c138c35d3b
register: support date:/date2:/--date2 better ( fix #201 , #221 , #222 )
2014-12-24 16:11:30 -08:00
Simon Michael
d1404adf3f
note lack of date2 support in (eg) postingsReport
2014-12-24 14:54:56 -08:00
Simon Michael
6780c63ab3
simplify null Date2 queries too
2014-12-24 14:54:56 -08:00
Simon Michael
77c2c90290
cli: parse date2: correctly ( #222 )
2014-12-24 14:54:56 -08:00
Simon Michael
68a4adb0bd
doc: draft changelogs for all three packages
2014-12-21 12:01:11 -08:00
Julien Moutinho
c65fea2b4b
lib: fix combineJournalUpdates folding order
...
NOTE: this is important to correctly build JournalContext
NOTE: currently a list reverse must done at the end,
maybe using a Data.Queue would be more efficient.
2014-12-11 04:37:10 +01:00
Simon Michael
855d4e1131
balance: with --tree and --flat, use the last ( fix #219 )
2014-12-05 12:56:33 -08:00
Simon Michael
d352bbedd2
cli: with a repeated flag, the last takes precedence
...
This is helpful eg for customising your reporting command aliases on the fly.
2014-12-04 12:41:47 -08:00
Simon Michael
bd39e5df99
showDateSpan: handle boundary-crossing 1-day spans
...
Eg recognise that 2014/11/30-2014/12/1 can be abbreviated to
2014/11/30d, similarly 2014/12/31-2015/1/1. Doesn't handle feb 29th
correctly, so eg 2000/2/28-2000/3/1 is wrongly abbreviated to
2000/2/28d.
2014-12-03 18:18:05 -08:00
Simon Michael
1708f0b441
csv: try to preserve order of same-day transactions
...
If the CSV records appear to have been in reverse date order,
we'll now reverse them all before also sorting by transaction date,
so that the original order of same-day transactions is preserved.
We detect this using a simple heuristic: if the first converted
transaction's date is later than the last's.
2014-12-02 11:16:51 -08:00
Simon Michael
733a7b12ef
csv: include path is relative to current ( close #198 )
2014-12-02 10:50:31 -08:00
Julien Moutinho
cf28985cf2
lib: move from Text.ParserCombinators.Parsec to Text.Parsec
...
NOTE: required to use liftIO in includedirective
SEE: http://www.vex.net/~trebla/haskell/parsec-generally.xhtml#IO
2014-11-20 10:08:30 +01:00
Simon Michael
23fb4ffd84
export failIfInvalidMonth/Day ( fixes #216 )
2014-10-30 07:58:15 -07:00
Simon Michael
a2612f17c6
tweak wording
2014-10-29 08:27:52 -07:00
Simon Michael
d25fe21834
apply all matching account aliases, not just one directive and one option
2014-10-29 08:20:27 -07:00
Simon Michael
9fa22e0398
account aliases (and regexReplace) now support backreferences
2014-10-29 07:46:49 -07:00
Simon Michael
69636f70fb
extract debug helpers into a module
2014-10-28 18:40:22 -07:00
Gergely Risko
6e4a7dff8c
Add support for ledger3 style multi-line comments
2014-10-26 19:20:46 +01:00
Simon Michael
e892fdc6d5
parsing: aliases now match by regular expression
...
alias match patterns (the part left of the =) are now case-insensitive
regular expressions matching anywhere in the account name. The
replacement string (the part right of the =) can replace multiple
matches within the account name. The replacement string does not yet
support any of the usual syntax like backreferences.
2014-10-24 15:05:10 -07:00
Simon Michael
be9b637e0c
fix a regexReplaceCI bug
2014-10-24 15:04:21 -07:00
Simon Michael
bfedf367c4
export Regexp types, disambiguate CsvReader's
2014-10-24 14:30:49 -07:00
Simon Michael
f064ecf138
fix a splitAtElement bug with adjacent separators
2014-10-24 14:30:00 -07:00
Simon Michael
b6774f47a3
balance, print: add -o and CSV output here too
...
Not very elegant yet, but works.
2014-10-21 12:02:23 -07:00
Simon Michael
7f6cf1f849
balance, register, register-csv: depth 0 shows summary items ( #206 )
...
Previously, a depth:0 query produced an empty report (since there are no
level zero accounts). Now, it aggregates all data into one summary item
with account name "...".
This makes it easier to see the kind of data Gwern was looking for from
register-csv (net worth over time). Eg this shows one line per month
summarising the total of assets and liabilities:
hledger register-csv -- -MHE ^assets ^liabilities depth:0
Single and multi-column balance reports behave similarly.
2014-10-19 17:53:20 -07:00
Simon Michael
0620ec9840
fix redundant compilation in the hledger packages, at last
...
This seems to work well now with my haddock and GHC 7.8.
Not tested with GHC 7.6 though.
2014-10-19 09:37:18 -07:00
Simon Michael
e8a58d9388
cli: add a hidden --version+ flag showing number representation ( #118 )
2014-10-18 12:35:58 -07:00
Simon Michael
3b70362525
switch to Decimal for representing quantities ( closes #118 )
...
hledger has represented quantities with floating point (Double) until
now. While this has been working fine in practice, the time has come to
upgrade our number representation to something more principled: Decimal,
for now. As a bonus, this brings a ~30% speed boost to most reports.
We'll keep the old representation(s) around for a while, selectable via
hledger-lib cabal flag, for research/testing/benchmarking purposes. To
build with the old Double representation: cabal install -fdouble
hledger-lib hledger hledger-web
2014-10-18 12:33:31 -07:00
Simon Michael
e888be0bf4
clarify similarAmountsOp doc
2014-10-18 10:45:17 -07:00
Simon Michael
2b39f68682
fix a warning in TransactionsReports
2014-10-18 10:32:01 -07:00
Simon Michael
84a90374b4
make build warnings consistent
2014-10-18 10:16:22 -07:00
gwern
d1618aaca8
strip trailing whitespace from all Haskell files
2014-10-14 18:48:24 -07:00
Simon Michael
22279978af
revert an unnecessary "fix" in efe7c7a that broke tests
2014-09-13 21:28:48 -07:00
Simon Michael
5d403c2bb7
doc: changelogs (resolve conflicts)
...
Conflicts:
hledger-lib/CHANGES
hledger-web/CHANGES
2014-09-12 18:41:35 -07:00
Simon Michael
efe7c7a029
journal: dates should be followed by whitespace or newline
2014-09-06 09:20:22 -07:00
Simon Michael
aa85e786b9
register: describe datespans briefly, like balance
...
Eg instead of 2014/01/01 - 2014/01/31, show 2014/01, as in a multicolumn
balance report. The data model is not very elegant, but works for now.
2014-08-08 07:34:11 -07:00
Simon Michael
c485017ca6
journal: require consistent separators in a Y/M/D date
...
Date separators can be /, - or . but only one kind should be used in
each date. Eg we now reject 2014-8/1.
2014-08-08 07:29:02 -07:00
Simon Michael
3e27f4fb8b
journal: add p suffix to date[time] parsers
2014-08-08 07:29:02 -07:00
Simon Michael
a0010a294f
cli: smart dates must use a consistent separator
...
Along with the preceding commits, this means that date:2014-8/1 is now
parsed as 2014/01/01-2014/08/01 as intended, not 2014/08/01.
2014-08-08 07:21:02 -07:00
Simon Michael
632dee668d
parse period expressions and date: more strictly
...
Period expressions and date: query terms must now be parseable all the
way to their end; we won't ignore unparseable trailing bits.
2014-08-08 07:21:02 -07:00
Simon Michael
a675b99870
query: report an error when date:D fails to parse
...
Previously, a date:D query term was just ignored if D could not be
parsed as a date.
2014-08-08 07:21:02 -07:00
Simon Michael
f631e8e063
register: --average implies --empty
...
The -A flag now enables -E, so that with a report interval the averages
are always per-period and not per-report-line. (Without a report
interval, -E is already the default).
2014-08-07 14:03:56 -07:00
Simon Michael
d0ad571321
fix manual url in default CSV rules file
2014-08-07 13:15:40 -07:00
Julien Moutinho
a6190420b2
data: add source location to transactions
2014-08-07 16:38:44 +02:00
Simon Michael
3ce34b145c
add missing dbgN helpers
2014-07-28 18:57:54 -07:00
Simon Michael
40ab1e17f6
amounts cleanups, and support zeros with commodity
2014-07-28 18:45:13 -07:00
Simon Michael
1333b2650a
more showDateSpan cleanup
2014-07-26 17:07:36 -07:00
Simon Michael
a7f7c3181f
balance: show compact headings for common intervals
...
In periodic multicolumn balance reports, column headings now show a more
compact description of common periods (years, half-years, quarters,
months, weeks) for better readability and screen space efficiency.
2014-07-26 16:54:18 -07:00
Simon Michael
f2d9c6e9c1
web: more register chart improvements
...
- show a background color for future and less-than-zero regions
- show points for transactions, not all line corners
- hovering over point shows balance, date, posted amount and transaction
- clicking a point scrolls towards that date
2014-07-18 16:45:46 -07:00
Simon Michael
4333cae43f
web: register chart improvements
...
- bigger
- plot is horizontal when balance is not changing
- legend for commodities
- some work towards stable commodity colors
2014-07-17 18:56:55 -07:00
Simon Michael
663c68e8e2
web: fix 0s with search by acct within a register
2014-07-17 16:53:36 -07:00
Simon Michael
d3ede5d676
web: remove debug code
2014-07-17 16:29:14 -07:00
Simon Michael
441cae645f
web: account transactions report, register clarifications
...
Clarify the semantics and code of account transactions report a bit.
In the web account register view, emphasise the "historical balance" vs
"running total" distinction; show it as a label for the chart as well,
to reduce confusion.
2014-07-17 16:20:34 -07:00
Simon Michael
b3da48aaa0
identify the commodity in balance assertion errors
...
Now that balance assertions are checking only a single commodity, it can
be confusing. Eg say all your amounts are in dollars, an assertion like
"= 0" checked the dollar balance in hledger 0.23 but always succeeds in
hledger 0.24. When an assertion fails, we now report which commodity was
checked to help troubleshooting.
2014-07-17 15:23:03 -07:00
Simon Michael
528913d1bd
balance: -E adds all starting accounts to multicol rpts
...
multicolumn balance reports only show accounts with activity (postings)
during the report period, by default. Sometimes you want to show
accounts which have an interesting balance, even if they have no
activity during the period. -E now does this, in addition to showing
leading & trailing empty columns.
2014-07-17 15:18:40 -07:00
Simon Michael
8aec855d04
note dbg0 is like ltrace
2014-07-17 15:06:28 -07:00
Simon Michael
2bfbdd175b
queryEndDate
2014-07-15 07:01:01 -07:00
Simon Michael
19d42f8c99
clarify failed balance assertion message
2014-07-15 06:55:46 -07:00
Simon Michael
9f991fa94b
tweak Regex haddock
2014-07-08 11:50:19 -07:00
Simon Michael
5bebc2beb0
regex haddock fix
2014-07-06 14:08:45 -07:00
Simon Michael
3a16e6cfc7
mostly replace slow regexpr with regex-tdfa ( fixes #189 )
2014-07-06 14:03:28 -07:00
Simon Michael
04f6162e19
extract regular expression utils module
2014-07-06 10:11:02 -07:00
Simon Michael
16f8b78305
balance: show multi-commodity amts on one line ( fixes #186 )
...
To avoid totally breaking the layout of multicolumn balance reports when
there are multi-commodity balances, these are now rendered on a single
line, comma separated. Simple balance reports still use the old vertical
format for now.
2014-07-03 07:45:55 -07:00
Simon Michael
c31710d942
look harder for decimal point & digit groups ( fixes #196 )
...
Amount display styles have been reworked a bit; they are now calculated
after journal parsing, not during it. This allows the fix for #196 :
we now search through the amounts until a decimal point is detected,
instead of just looking at the first one; likewise for digit groups.
Digit groups are now implemented with a better type.
Digit group size detection has been improved a little:
1000,000 now gives group sizes [3,4,4,...], not [3,3,...], and
10,000 gives groups sizes [3,3,...] not [3,2,2,..].
(To get [3,2,2,...] you'd use eg 00,00,000.)
There are still some old (or new ?) issues; I don't think we handle
inconsistent decimal points & digit groups too well. But for now all
tests pass.
2014-07-02 23:26:16 -07:00
Simon Michael
647d5833ff
clarify dbgAtM issue
2014-07-02 23:24:58 -07:00
Simon Michael
330dfe6891
commodity & amount style parser cleanups, part 2
2014-07-02 17:41:33 -07:00
Simon Michael
9b4b85b4bf
commodity & amount style parser cleanups
2014-07-02 11:23:30 -07:00
Simon Michael
8ae303f685
assert only a single commodity, like Ledger ( fixes #195 )
...
This change means you can make assertions on a multi-commodity account
balance (asserting one commodity at a time). On the flip side, you can
no longer assert the complete balance of an account (new unexpected
commodities will not be detected.) We might restore that ability later,
using the == syntax.
2014-07-02 07:35:06 -07:00
Simon Michael
0c3148ac7b
add an --ignore-assertions flag
...
Can be helpful when reading Ledger files, where assertions may have
different semantics; or for getting some answers from your journal
to help you fix your assertions.
Could be called --no-assertions, but this might create surprise when it
has an effect contrary to --no-new-accounts.
I had to add another flag throughout the parsers & journal read
functions, ok for now.
2014-07-01 18:26:37 -07:00
Simon Michael
04cfdac0ce
query: add >= and <= for amt queries
2014-06-29 11:09:13 -07:00
Simon Michael
201521dc5a
a few tweaks
2014-06-24 14:51:09 -07:00
Simon Michael
2eb74d19c6
changelog
2014-06-21 20:14:11 -07:00
Simon Michael
6393293414
allow transformers 0.4*
2014-06-21 20:13:16 -07:00
Simon Michael
5af4ef33ab
web: fix a warning
2014-06-13 00:21:26 +01:00
Simon Michael
ec51d28839
web: a bunch of ui cleanup & improvement
...
- the web UI has been streamlined; edit form, raw & entries views dropped
- we now remember whether sidebar is open or closed
- better help dialog
- keyboard shortcuts are now available
- better add form
- more bootstrap styling
- static file cleanups
- report filtering fixes
- upgrade jquery to 2.1.1, bootstrap to 3.1.1, drop select2, add typeahead, cookie, hotkeys
- clarify debug helpers a little
- refactoring
2014-06-13 00:19:00 +01:00
Simon Michael
34f4800e82
Revert "remove Setup.hs files again, fixing a yesod devel warning"
...
Setup.hs are required by the Hydra buildbot.
This reverts commit 97ab3db8f0 .
2014-05-24 13:39:09 -07:00
Simon Michael
b22cb66319
refactor amount filtering helpers
2014-05-23 13:10:36 -07:00
Simon Michael
97ab3db8f0
remove Setup.hs files again, fixing a yesod devel warning
...
These were removed and re-added in 2011 because "hackage needed them".
Let's try again.
2014-05-23 09:04:00 -07:00
Simon Michael
cf3d21afef
csv and general reader fixes, cleanups
...
- The CSV reader no longer writes a "(stdin).rules" file when reading
from stdin.
- Selection of reader(s) is now smarter when input is coming from stdin.
Previously, all readers were considered applicable for stdin. This
meant that when reading a CSV file from stdin, the journal and timelog
readers were always tried first, and if the CSV file was unparseable,
you'd see the first (journal) reader's error instead of the CSV
reader's. Now, the readers do some basic content sniffing when
reading stdin, so it generally tries only the one right reader and
we'll see the right errors.
- The read system now has more debug output.
2014-05-09 17:55:32 -07:00
Simon Michael
6871c4cce5
dbgtrace, does a trace if --debug was used
2014-05-09 17:52:23 -07:00
Simon Michael
2bba4dbe3c
update changelogs
2014-05-08 14:35:20 -07:00
Simon Michael
25ccead21c
register: also fix date (or date2) sorting of postings ( #184 )
2014-05-08 14:20:12 -07:00
Simon Michael
2bd785c3fb
aregister: fix date filtering with disordered txns ( fixes #184 )
...
Fix a refactoring-related regression that the tests missed: if
transactions were not ordered by date in the journal, register
could include postings before the report start date in the output.
2014-05-07 06:31:34 -07:00
Simon Michael
88f18adbc4
show posting dates in debug output
2014-05-06 21:35:38 -07:00
Simon Michael
41add3ffeb
oh fine still cant do that, bump to 0.23.98
2014-05-03 17:18:12 -07:00
Simon Michael
87f1e83d78
bump version to 0.24dev
2014-05-03 15:51:57 -07:00
Simon Michael
4740c7082e
csv: allow an empty first name in fields list ( fixes #178 )
2014-05-03 15:05:35 -07:00
Simon Michael
dedd26bbf5
csv: don't count fields in skipped lines ( fixes #177 )
2014-05-03 14:54:15 -07:00
Simon Michael
07a82724ed
lib, cli, web: change from "beta" to "stable"
...
Also add the hackage Console category to the first two.
2014-05-01 08:20:05 -07:00
Simon Michael
1eeedfe551
bump versions to 0.23
2014-05-01 08:17:17 -07:00
Simon Michael
524bfe73c6
final changelogs
2014-05-01 08:14:36 -07:00
Simon Michael
a28d4fd400
register: drop --display, use --historical instead
...
We provided a very limited implementation of --display only for one use
case: to see an accurate running balance. Now that is achieved more easily
with -H/--historical, similar to the balance command, and --display
can be dropped.
2014-04-30 17:24:41 -07:00
Simon Michael
0132ed7bea
balance: a fix for starting balance with --date2
2014-04-30 17:20:02 -07:00
Simon Michael
70ad5b26ff
journal: really don't parse + before an amount as part of the commodity ( fixes #181 harder)
2014-04-30 11:28:47 -07:00
Simon Michael
8341b4a8d3
journal: don't parse + before an amount as part of the commodity ( fixes #181 )
2014-04-30 11:21:01 -07:00
Simon Michael
7d579adb0e
changelog updates
2014-04-28 00:55:14 -07:00
Simon Michael
084bf8fea8
queries: treat amt:>0 like amt:>+0
...
Similar to the special case for amt:<0, for convenience.
To test that the absolute quantity is greater than 0, ie that the
quantity is non-zero, use not:amt:0.
2014-04-27 23:59:11 -07:00
Simon Michael
eeb48c86d1
default report dates come from secondary dates with --date2
2014-04-24 14:44:30 -07:00
Simon Michael
3ed82bd231
default report dates now include postings dated outside the transaction dates span
...
journalDateSpan now looks at posting dates as well as transaction dates.
2014-04-24 14:28:20 -07:00
Simon Michael
c9d60fab73
balance, register: fix --date2 with report intervals
2014-04-19 15:54:58 -07:00
Simon Michael
d46b290287
update tested-withs
2014-04-19 12:16:14 -07:00
Simon Michael
4ef33c012a
register: report intervals now include all postings in the interval
...
As with balance. For example, register -p 'weekly in jan' generates
these intervals: 2013/12/30-2014/01/05, 2014/01/06-2014/01/12,
2014/01/13-2014/01/19, 2014/01/20-2014/01/26, 2014/01/27-2014/02/02.
With this change, postings on 2013/12/30-31 and 2014/2/1-2 will be
included in the report, so all period totals are complete and
comparable.
2014-04-19 11:47:05 -07:00
Simon Michael
6af5e6fe06
note potentially useful interval algebra link
2014-04-19 11:45:47 -07:00
Simon Michael
d0461c3ef7
cleanup
2014-04-19 11:26:01 -07:00
Simon Michael
3dd0894349
fix a warning
2014-04-19 11:25:45 -07:00
Simon Michael
6743f8c2a1
balance: multicolumn now includes all postings in the displayed periods
2014-04-19 08:45:46 -07:00
Simon Michael
1fca3e7472
orDatesFrom -> spanDefaultsFrom
2014-04-19 08:38:03 -07:00
Simon Michael
f94d784f48
changelog updates from release branch
...
give hledger-lib a changelog, update changelogs
(cherry picked from commit a67cee4e5f9e3dc09be86e7bc0e8fd77168a5070)
Conflicts:
hledger/CHANGES
update changelogs
(cherry picked from commit ef053a42523ff2d57921837896b9ccc0a260cc27)
web: changelog
(cherry picked from commit 105c1d01429680a4e8a11a8c4be06f4ceca4329e)
web: changelog
(cherry picked from commit 3d42c123be7dd51be6586549f1f057052cc6fff9)
2014-04-17 12:36:00 -07:00
Simon Michael
01e5a2245d
clarify balance assertion error slightly
2014-04-16 14:45:41 -07:00
Simon Michael
f0167013ce
queries: treat amt:<0 like amt:<+0 as a convenience
2014-04-16 10:48:56 -07:00
Simon Michael
dd1f58b785
balance: oops, note multicolumn reports not yet using all period data
...
87e2d49 seems to work only in GHCI, gives <<loop>> when compiled.
2014-04-15 17:19:55 -07:00
Simon Michael
9d10cfa180
fix single-quote-containing addon arguments harder
2014-04-15 13:07:43 -07:00
Simon Michael
0d1d3ed057
fix an error when running an addon with an argument containing a single quote
...
More crazy quote engineering.. seems more robust than before.
2014-04-15 11:45:30 -07:00
Simon Michael
87e2d49714
balance: multicolumn reports now use all data in the displayed periods
...
Previously, the first period's heading would show the start date of a
full period, but postings after this date but before the user-specified
report start date were not shown. Now those postings will be included,
making the first column's numbers more correct. Similarly, the report
end date is now adjusted to the displayed end date on the last column.
2014-04-14 13:10:34 -07:00
Simon Michael
d008c810dc
balance: restore prefix on debug output from multibalance reports
2014-04-14 12:08:06 -07:00
Simon Michael
5885914547
refactor & use reportSpans
2014-04-14 08:31:57 -07:00
Simon Michael
020975555e
clarify splitSpan function
2014-04-14 08:31:34 -07:00
Simon Michael
746f22458f
fix a warning
2014-04-14 08:31:11 -07:00
Simon Michael
a761ae5b86
balance: support --date2 in multicolumn reports (cf #174 )
2014-04-13 15:14:07 -07:00
Simon Michael
424db9a09e
register: support --date2 with a report interval ( fixes #174 )
2014-04-13 14:57:40 -07:00
Simon Michael
2af04ec2fc
balance: merge/improve multicol report implementations
...
Periodic, cumulative and historical multicolumn balance reports are now
generated by one code path, which helps with consistency and reducing
the bug/test surface. --tree now also works with --cumulative or
--historical.
2014-04-13 12:49:05 -07:00
Simon Michael
c93b19cb10
more debug utils, dbg0/dbg1/dbg2
2014-04-13 12:49:05 -07:00
Simon Michael
a4a332e64f
drop sym: entirely in favour of cur:
2014-04-08 15:55:40 -07:00
Simon Michael
7d99ae5033
balance: --tree makes multicolumn reports show hierarchy
...
Multicolumn balance reports can now be switched to a hierarchical view
with --tree. This is similar to the single column balance report with
--no-elide, ie we do not elide boring parents into the following line.
The --flat and --tree flags are opposites; the last one to appear on
the command line is decisive (in future, if not already).
2014-04-06 21:56:47 -07:00
Simon Michael
349bb1db01
forgot to import nullamt
2014-04-06 07:43:04 -07:00
Simon Michael
b689b791e3
fix amt: false positives on multi-commodity amounts
2014-04-05 19:33:44 -07:00
Simon Michael
125a72f874
avoid a haddock crash
2014-04-04 09:09:00 -07:00
Simon Michael
029528519c
remove out of date comment
2014-04-03 18:55:43 -07:00
Simon Michael
6a928a03a8
overhaul single- and multi-column balance reports
...
Changes include:
- flat mode now shows exclusive (subaccount-excluding) balances.
This is a deviation from ledger, but seems simpler and clearer
for users and implementors across the various modes.
- in flat mode, --depth now aggregates deeper accounts at the
depth limit, rather than just excluding them from the report.
This is more useful.
- in flat mode, --empty no longer shows parent accounts with
no postings.
- more tests, more debug output, clearer code
2014-04-03 18:49:57 -07:00
Simon Michael
4dc61e76bf
test and fix display of zero-balance leaves ( fixes #170 )
2014-04-03 18:49:57 -07:00
Simon Michael
cf254b0da3
show anumpostings in Account's show instance
2014-04-03 18:49:57 -07:00
Simon Michael
d21085cc6e
an Account now knows how many postings it has
2014-04-03 18:49:57 -07:00
Simon Michael
2844333857
less debug output from some low-level functions
2014-04-03 18:49:57 -07:00
Simon Michael
f409f72899
force DateSpans to line-wrap better in debug output
2014-04-03 18:49:57 -07:00
Simon Michael
577ff7902c
dbgAtM, monadic version of dbgAt
2014-04-03 18:49:56 -07:00
Simon Michael
21575ed47b
more verbose Amount debug output at level 6+
2014-04-03 18:49:56 -07:00
Simon Michael
874c467789
briefer mixed amount debug output below level 3
2014-04-03 18:49:56 -07:00
Simon Michael
a05810f8e0
dbgAt
2014-04-03 18:49:56 -07:00
Simon Michael
784e9eff8a
dbg(ppshow) output improvements
...
- align single-line output a little better
- start multi-line output on a new line and indent it
2014-04-03 18:49:56 -07:00
Simon Michael
c5a839b309
3/4/5-tuple accessors
2014-04-03 18:49:56 -07:00
Simon Michael
b69e6c6946
unused extensions
2014-03-28 16:23:40 -07:00
Simon Michael
ef1cc06cab
avoid pretty-show with GHC < 7.4; update tested-with ( fixes #155 )
...
hledger builds with GHC 7.2 through 7.8. 7.0 is not supported
because we require shakespeare which requires the DeriveGeneric extension.
2014-03-27 12:29:34 -07:00
Simon Michael
da0ce23144
don't let default commodity limit the max precision ( fixes #169 )
2014-03-26 17:25:59 -07:00
Simon Michael
882a9dbf1c
cli, report & raw options cleanups
2014-03-25 19:03:56 -07:00
Peter Simons
6319ecd0b7
showDateSpan: remove redundant local definition of showDate
2014-03-22 12:03:00 +01:00
Peter Simons
a56231751f
showDate: use '%0C' to get a two-digit century with time-1.4.0.1 or later
2014-03-22 12:02:22 +01:00
Simon Michael
25a8aa2970
fix hunit compilation warnings
2014-03-21 17:41:54 -07:00
Simon Michael
e99c3c4b01
queries: amt: compares unsigned by default, signed if number has + or -
2014-03-20 19:10:48 -07:00
Simon Michael
467c50e06c
fix a redundant import
2014-03-19 17:32:35 -07:00
Simon Michael
77d24fc241
split up Hledger.Reports
2014-03-19 17:31:18 -07:00
Simon Michael
59cbc230d8
drop data-pprint for now, does not support ghc 7.8
...
The data-pprint and pretty-show packages used for debugging
tend to be poorly supported, drop one of them for now.
2014-03-19 16:11:46 -07:00
Simon Michael
bff69227f7
balance: more comment cleanups
2014-03-18 18:16:47 -07:00
Simon Michael
4d8d0d9aa6
balance: make BalanceReport more like MultiBalanceReport, doc cleanups
2014-03-18 18:01:24 -07:00
Simon Michael
e42e58fd26
the sym: prefix seems unintuitive, try cur: as an alias
2014-03-16 09:43:15 -07:00
Simon Michael
e97b8b20b8
balance: make sym: filtering work as expected in multicolumn reports
2014-03-16 09:40:51 -07:00
Simon Michael
712e6f1e36
register: fix tag: matching all sibling postings
2014-03-05 14:43:58 -08:00
Simon Michael
97e3f852a1
bump version to 0.22.98 aka 0.23 alpha
2014-03-04 11:17:56 -08:00
Simon Michael
7291977e6f
rename Format to StorageFormat
2014-03-02 13:37:10 -08:00
Simon Michael
dd2f293094
rename FormatString to OutputFormat
...
It was going to be Format, but that clashes with file format. Press on.
2014-03-02 13:33:56 -08:00
Simon Michael
6f49263c9b
print: tag queries will match transactions whose postings contain the tag
2014-03-01 17:42:13 -08:00
Simon Michael
4b4715ab76
parsing: don't accept . as a valid amount
2014-03-01 10:26:20 -08:00
Simon Michael
46d594bada
balance, register now filter more strongly by sym:
2014-02-27 17:47:47 -08:00
Simon Michael
73c09f91d7
queryFromOptsOnly for when args aren't query terms
2014-02-27 17:46:05 -08:00
Simon Michael
762a1b4d74
parsing: comments can also start with # in col 0
2014-02-27 11:47:36 -08:00
Simon Michael
431ef894e0
cli: clarify "hledger add" command in no journal file error
2014-02-12 09:15:21 -08:00
Simon Michael
d158d401d9
fix some breakages found by Hydra
2014-02-05 19:30:01 -08:00
Simon Michael
5223bc5c41
lib: rename and expose more journal file parsers
2014-02-05 18:55:38 -08:00
Simon Michael
dc8b687056
extra: hledger-rewrite script
2014-02-05 13:03:06 -08:00
Simon Michael
f87a68999f
mention the often-overlooked 2-space rule in the too many missing amounts error
2014-01-24 15:28:37 -08:00
Simon Michael
d55f686f68
avoid a Text.Printf name collision with GHC 7.7+ ( fixes #153 )
2014-01-10 08:29:25 -08:00
Simon Michael
2ec6231a51
bump version to 0.22.1
2014-01-08 15:01:45 -08:00
Simon Michael
62b0461c0e
require latest pretty-show to allow install with standard happy and fix hackage docs
2014-01-08 15:00:41 -08:00
Clint Adams
cf365524cb
Use regex-tdfa instead of regex-compat-tdfa
2014-01-08 14:37:30 -08:00
Simon Michael
8befcb8354
bump version to 0.22, update tested-with & doc building
2013-12-13 18:28:45 -08:00
Simon Michael
8261ac0f56
three fixes to handle --debug=N like --debug
2013-12-07 06:09:39 -08:00
Simon Michael
c53732a4af
balance: new multi-column reports & documentation
...
Two new multi-column balance report modes show ending balance per
period: `--cumulative`, starting from 0, and `--historical`, starting
from the historical starting balance.
The balance command's specification has been clarified and consolidated
in the Balance.hs haddock. Reports.hs has also had haddock updates. The
old AccountsReport type is now BalanceReport, still used by
single-column balance report. The new MultiBalanceReport type is used by
the multi-column reports.
2013-12-07 05:43:31 -08:00
Simon Michael
b2c6a8e7d2
require data-pprint 0.2.3, works with ghc < 7.2
2013-12-06 13:58:06 -08:00
Simon Michael
13641eab66
debug level sets amount/journal show verbosity
...
Amounts and journal values are often rendered too verbosely in debug
output, obscuring what's important. Here we try adjusting the level
of detail in the Show instance based on the global debug level.
Needs more work.
2013-12-06 13:51:19 -08:00
Simon Michael
3cf53661f3
new debug helpers; --debug=N sets debugLevel
...
The debug level set by `--debug[=N]` is now available to pure and
startup code as debugLevel, using unsafePerformIO.
`dbg LABEL ...` is now the go-to helper for tracing values on the
console; it produces output when the debug level is non-zero. `dbgExit`
is similar but exits immediately, avoiding further output. The
`dbgshow`, `dbgppshow` and `dbgpprint` variants allow control over the
pretty-printing method and required debug level, allowing more control
over what is displayed when.
Other cleanups: lstrace -> ltrace, pdbgAt -> pdbg, tracewith -> traceWith.
2013-12-06 13:35:50 -08:00
Simon Michael
22a8020296
make most types instances of Data (and Typeable)
...
This allows them to be pretty-printed with pprint (from data-pprint)
when debugging, and shouldn't have much impact otherwise.
2013-12-06 13:19:43 -08:00
Simon Michael
2de58e2ec0
fix haddock errors in Reports.hs
2013-09-28 10:14:43 -07:00
Simon Michael
7e06a6a24c
balance: basic multi-column balance (change) reports
2013-09-26 15:06:48 -07:00
Simon Michael
d6c841d93b
show search queries more accurately in --debug output
2013-09-23 11:50:20 -07:00
Simon Michael
009c7e3f90
bump version to 0.22 alpha
2013-09-22 22:38:27 -07:00
Simon Michael
671bb6c4a2
require data-pprint as a debugging aid and make some types compatible with it
2013-09-21 13:36:43 -07:00
Simon Michael
8444be6f88
docs: report haddock cleanups
2013-09-10 13:42:57 -07:00
Simon Michael
f9656a21af
print: comment positions (same line or next line) are now preserved
2013-09-10 10:32:49 -07:00
Simon Michael
7ed0705398
register: --average/-A shows a running average, like ledger
2013-09-09 18:25:53 -07:00
Simon Michael
3d205ec03f
refactor: rename unclear helper
2013-09-09 17:41:29 -07:00
Simon Michael
060d1fdd1b
change comm: to sym: and require a match on the whole symbol
2013-09-09 15:26:45 -07:00
Simon Michael
957f57a07b
new comm:REGEXP query matches commodity symbols. Also some minor amt: fixes.
2013-09-09 15:04:43 -07:00
Simon Michael
73230838c5
parsing: amt queries use the = operator by default
2013-09-09 11:57:25 -07:00
Max Bolingbroke
e96fff7887
Upgrade to regex-compat-tdfa to squelch unicode problems
2013-08-20 21:19:28 +01:00
Simon Michael
eff1d3f1a5
csv reader: add the include directive, useful for factoring out common rules used with multiple CSV files
2013-08-03 20:53:41 -07:00
Simon Michael
318d36d712
bump version
2013-06-23 16:50:35 -07:00
Dmitry Astapov
ed58d815d6
Fix for multiple field assignments in CSV parsing
2013-06-19 08:30:33 +01:00
Simon Michael
4eda6119f8
bump version to 0.21.2
2013-06-04 19:07:22 -07:00
Simon Michael
080eb866ec
web: clean up language extensions a bit, make autoweb works again
2013-06-04 18:23:55 -07:00
Simon Michael
e13ea5706d
oops, missed a build failure
2013-06-04 11:43:26 -07:00
Simon Michael
557419de8c
bump version to 0.21.1
2013-06-03 23:18:30 -07:00
Simon Michael
fd8de9558e
web: show proper Y-values in register chart ( fixes #122 )
2013-06-03 23:15:30 -07:00
Simon Michael
4041f5a553
bump version to 0.21
2013-06-01 15:58:06 -07:00
Simon Michael
2e5718d5ea
web: show one line per commodity in charts. Needs more polish, but fixes #109 .
2013-06-01 15:33:33 -07:00
Simon Michael
95f909543a
fix a haddock failure reported by hydra
2013-06-01 13:55:34 -07:00
Simon Michael
c2fa4b3c21
parsing: make balance assertions more robust with different precisions ( #119 )
...
Also note another issue.
2013-06-01 13:39:00 -07:00
Simon Michael
44545d6ec7
parsing: update a csv reader error message
2013-06-01 12:38:58 -07:00
Simon Michael
a26ab926d8
parsing: don't fail when a csv amount has trailing whitespace ( fixes #113 )
2013-06-01 12:38:13 -07:00
Simon Michael
ce651bd614
Merge pull request #112 from clinty/testsuites
...
cabal testsuites for hledger-lib and hledger
2013-05-30 16:25:35 -07:00
Simon Michael
56a37aabcf
small cleanup
2013-05-30 15:17:21 -07:00
Simon Michael
6073b56b9e
parsing: order postings first by date, then by parse order when checking balance assertions
2013-05-30 15:16:54 -07:00
Simon Michael
5685b3dc9c
parsing: don't allow = in unquoted commodity symbols, fixes commodity-less balance assertion amounts
2013-05-30 15:15:38 -07:00
Simon Michael
87820705f5
parsing: after reading a journal file, check all balance assertions and continue only if they pass
2013-05-28 16:25:00 -07:00
Simon Michael
0be986fcb9
parsing: actually parse balance assertions
...
Parser unit test is commented out until HTF tests are fixed.
2013-05-28 16:22:30 -07:00
Clint Adams
1cbe6c95b2
Add cabal testsuite for hledger-lib.
2013-05-15 15:56:01 -04:00
Simon Michael
4ff2635bf8
bump version to 0.20.98 (0.21 alpha)
2013-05-14 10:30:46 -07:00
Simon Michael
1db8920644
bump version to 0.20.0.1
2013-05-04 07:26:15 -07:00
Simon Michael
28a605ceb0
docs: update bug tracker and repository locations in cabal files
2013-05-03 06:46:23 -07:00
Simon Michael
b89168d1b0
bump version number
2013-05-01 12:46:37 -07:00
Simon Michael
a32b0513bd
update tested-withs. hledger needs 7.2+, hledger-web needs 7.4+ for now
2013-04-19 12:26:05 -07:00
Simon Michael
fc39b4c25d
the version bump was premature, revert so I can push
...
This reverts commit 1bc8b73159 .
2013-04-19 11:54:26 -07:00
Simon Michael
1bc8b73159
bump version
2013-04-17 17:20:59 -07:00
Simon Michael
e89bd131e9
also fix warnings in UTF8IOCompat
2013-04-12 16:28:29 -07:00
Simon Michael
42385fc8bf
parsing: read dos line endings, deprecate encoding compatibility layer
...
We should now read all text in universal newline mode, so eg journal
files with DOS/windows line endings are fine.
This also deprecates and disables our IO encoding compatibility layer,
which prevented many encoding-related problems with certain platforms
and GHC versions. With modern GHC (7.x) this is now hopefully totally
unnecessary, but the module remains in place just in case.
2013-04-12 16:18:20 -07:00
Simon Michael
78837c66a6
parsing: fix test breakage due to new csv rules format ( fixes #102 )
2013-04-12 14:59:28 -07:00
Simon Michael
616a25979a
CSV reader version 2 with new rules syntax
...
At long last. The main change is a new rules file format that aims to
be more powerful and more intuitive than v1 (hledger 0.19.x and older).
Existing rules files will need to be adapted manually to the new format.
2013-03-29 22:56:55 +00:00
Simon Michael
af5c0e80e0
parsing: read files in universal newline mode
...
Line endings other than the unix style, are now accepted in journal and rules files.
2013-03-29 18:46:10 +00:00
Simon Michael
7b6a59123d
eolof parser matches end of line or end of file
2013-03-29 18:42:00 +00:00
Simon Michael
972106b145
update ptrace, add dbg, ppShow utilities
2013-03-29 18:40:10 +00:00
Simon Michael
3b5c0bc4a1
provide some regex-posix-based utilities that perform better than regexpr
2013-03-29 18:39:57 +00:00
Simon Michael
b780badd07
provide "when"
2013-03-29 18:38:43 +00:00
Simon Michael
70b171e018
querying by code:
2013-03-22 17:59:16 +00:00
Simon Michael
c39e424642
basic querying by amount: "amt:<0", "amt:=100", etc.
...
The syntax is "amt:ON", where O is "<", "=" or ">" and N is a number.
For simple (single-commodity) amounts, this matches if the amount's quantity has the specified relationship to N.
For multi-commodity amounts, it always matches.
If parsing fails, an error is raised.
This has not been tested for floating-point precision.
2013-03-20 16:36:00 +00:00
Simon Michael
a33b42bbd9
update tested-with in cabal files
2013-02-25 19:50:49 +00:00
Simon Michael
9ffb0b2d1f
export journal file code parser, part 2 - missed a bit >:|
2013-02-25 19:35:51 +00:00
Simon Michael
69f2491224
export journal file code parser
2013-02-24 21:07:54 +00:00
Simon Michael
33153851e9
words' on an empty string should return empty list
2013-02-24 20:04:28 +00:00
Simon Michael
2a6a028222
register: date display refinements
...
- when showing multiple postings from a transaction, show their individual dates accurately
- with --date2, use that date for sorting
2013-02-14 21:12:35 +00:00
Simon Michael
67d1f91909
web: fix compilation; also fixes some hardcoded static urls (Xinruo Sun)
2013-01-11 13:54:49 +00:00
Simon Michael
7175c57992
reg: --related/-r flag to show other postings in the transaction
2012-12-22 00:24:38 +00:00
Simon Michael
552a15a1ba
reg: --width/-w option to adjust register overall output width
2012-12-21 21:56:11 +00:00
Simon Michael
621a91807e
rename actual/effective dates to primary/secondary
...
The command-line flag is now --date2. Alternate spellings --effective and --aux-date
are accepted for compatibility.
2012-12-06 04:43:41 +00:00
Simon Michael
7d1fce42fe
refactor: dead code
2012-12-06 03:56:12 +00:00
Simon Michael
869ff2528a
accept normal simple date syntax in posting dates, give an error on bad date syntax here
2012-12-06 03:23:56 +00:00
Simon Michael
20e68f23a8
support effective dates on postings as well
...
We now preserve all dates while reporting, instead of overwriting one with the other.
2012-12-06 02:41:37 +00:00
Simon Michael
ccbc071289
more cleanup, fix duplicate tag display
2012-12-06 02:09:53 +00:00
Simon Michael
27621515ea
bal, reg: use posting date if specified, clarify posting effective date not yet supported
2012-12-06 01:10:15 +00:00
Simon Michael
dfeafa6064
export accountBalanceHistory
2012-12-06 01:09:12 +00:00
Simon Michael
e75abc4625
parse posting dates, better comment/tag handling, begin using HTF for unit testing
2012-12-06 00:28:23 +00:00
Simon Michael
4aafeb32e6
refactor: clean up Posting construction
2012-12-06 00:03:07 +00:00
Simon Michael
26ad56e1b2
untested accountBalanceHistory calculator
2012-12-05 23:52:46 +00:00
Simon Michael
0913e54e93
94: fix a regression with non-flat balance report, caused by previous fix
...
Correct in all cases now, hopefully.
2012-12-05 23:51:42 +00:00
Simon Michael
51a8adf273
regexSplit, ptrace (parsec trace) utilities
2012-12-05 23:49:50 +00:00
Simon Michael
f54e3299b9
94: fix 0.19 regression showing wrong total balance with balance --flat
...
and distinguish better between account depth and item indent level
2012-12-04 01:07:04 +00:00
Joachim Breitner
f0372bdd93
Also parse ! as a modifier, like *
2012-12-03 21:38:05 +00:00
Simon Michael
157c85a915
move stripbrackets to Utils
2012-12-04 00:03:42 +00:00
Simon Michael
6eda8c4bbf
csv reader: append ".rules" to the original file name instead of replacing its extension
2012-11-26 01:56:39 +00:00
Simon Michael
afb4fb0356
csv reader: parse parenthesised amounts as negative
2012-11-26 01:56:01 +00:00
Simon Michael
c553103caf
bump version
2012-11-27 23:53:16 +00:00
Simon Michael
1d8fe29c4c
docs: point to new repo location on darcs hub
2012-11-17 04:31:21 +00:00
Simon Michael
8b4a99c4d5
79: convert: add a skip-lines directive (Magnus Henoch)
2012-11-18 18:21:52 +00:00
Simon Michael
5c972ef00c
more correct debug util name
2012-11-19 21:17:43 +00:00
Simon Michael
79f0e98186
tools: fix haddock generation (web excluded)
2012-11-19 23:36:36 +00:00
Simon Michael
4248df5c6f
clarify historical price field and tests
2012-11-20 00:27:43 +00:00
Simon Michael
1c6a7d8a6f
rename the commodityless amount constructor to num
2012-11-20 02:22:20 +00:00
Simon Michael
45d4a38cc7
refactor: setAmountPrecision -> withPrecision
2012-11-19 23:24:04 +00:00
Simon Michael
9cd228329c
hledger-lib doesn't need shakespeare-text
2012-11-21 17:41:49 +00:00
Simon Michael
64180b18ef
refactor: clarify that price amounts have only a single commodity
2012-11-19 23:17:55 +00:00
Simon Michael
8c06553e3b
refactor: make amount price a non-maybe, reducing noise
2012-11-19 22:39:08 +00:00
Simon Michael
4567e91409
refactor: move amount display settings out of commodity, simplify amount construction
2012-11-19 21:20:10 +00:00
Simon Michael
7798744d60
should have released hledger-lib; bump all version numbers again
2012-11-24 16:01:19 +00:00
Simon Michael
cbc7661703
87: fix an arithmetic and transaction balancing bug with multiple total-priced amounts
2012-11-12 16:31:43 +00:00
Simon Michael
d2aa8ca6cb
note future debug tools
2012-11-15 17:46:48 +00:00
Simon Michael
1c1058be4e
70: ignore ledger's fixed lot price declarations
2012-11-17 02:40:27 +00:00
Simon Michael
28baf926f7
parsing: ignore ledger-style balance assertions ("= BAL" after a posting's amount)
2012-11-02 16:50:36 +00:00
Simon Michael
5b9c5459be
web: make hledger[-lib] compatible with all of yesod's language extensions
...
Useful when building all of hledger-web at once.
2012-11-14 17:25:02 +00:00
Simon Michael
9786894bbb
bump version, release notes
2012-11-17 03:32:48 +00:00
Simon Michael
c1ab41f0a9
hledger, hledger-lib: support GHC 7.6
2012-10-08 16:52:07 +00:00
Simon Michael
00f22819ae
balance report speedup
...
This refactoring fixes an O(n^2) slowdown in the balance command with
large numbers of accounts. It's now speedy, and the implementation is
clearer. To facilitate this, the Account type now represents a tree of
accounts which can easily be traversed up or down (and/or flattened
into a list).
Benchmark on a 2010 macbook:
+-------------------------------------------++--------------+------------+--------+
| || before: | after: | |
| || hledger-0.18 | hledgeropt | ledger |
+===========================================++==============+============+========+
| -f data/100x100x10.journal balance || 0.21 | 0.07 | 0.09 |
| -f data/1000x1000x10.journal balance || 10.13 | 0.47 | 0.62 |
| -f data/1000x10000x10.journal balance || 40.67 | 0.67 | 1.01 |
| -f data/10000x1000x10.journal balance || 15.01 | 3.22 | 2.36 |
| -f data/10000x1000x10.journal balance aa || 4.77 | 4.40 | 2.33 |
+-------------------------------------------++--------------+------------+--------+
2012-10-21 17:18:18 +00:00
Simon Michael
51a9f2a948
bump version
2012-10-21 20:20:35 +00:00
Simon Michael
7fec954cbf
support latest cmdargs, haskeline, split
2012-10-08 16:50:35 +00:00
Simon Michael
f8a9cce43d
bump base lower bound to 4.3 to enforce GHC 7 requirement
2012-07-08 00:22:20 +00:00
Simon Michael
63973c3728
bump version to 0.18.2
2012-07-08 00:24:40 +00:00
Simon Michael
2a4d89bb27
expose more utilities from CsvReader
2012-05-29 21:00:49 +00:00
Simon Michael
0b96a767b4
support tilde (~) in journal and rules file paths
2012-05-30 08:36:01 +00:00
Simon Michael
776ad2a098
remove ensureRulesFile debug trace
2012-05-30 08:36:34 +00:00
Simon Michael
ec2f35ef07
split up accountsReport unit tests
2012-05-30 11:23:03 +00:00
Simon Michael
e6de8df97f
balance: respect all query terms, not just acct
2012-05-30 11:24:08 +00:00
Simon Michael
34318906d8
register, print: fix reverse ordering of same-day transactions
2012-06-29 18:06:58 +00:00
Simon Michael
6ccecb6ae0
stats: list included journal files
2012-05-30 09:17:18 +00:00
Simon Michael
33b7c91e20
combine journal updates with foldl' instead of foldr
...
on general principles, even though it makes no measurable difference
2012-05-30 10:19:08 +00:00
Simon Michael
9a239789fa
apply journal updates in the order they were parsed, not the reverse (!)
...
Fixes the order of include files in stats command.
2012-05-30 10:16:37 +00:00
Simon Michael
9735d583d1
extra postingsReport test
2012-06-29 18:35:32 +00:00
Simon Michael
d4a897306c
combine command-line flags like --depth properly with non-flag query patterns
2012-06-29 22:36:30 +00:00
Simon Michael
5e944374de
web: don't auto-create a missing journal file at startup
2012-06-29 22:48:41 +00:00
Simon Michael
8f87585a86
hledger-lib now requires transformers explicitly
2012-06-29 23:06:28 +00:00
Simon Michael
6db9db0be1
bump version
2012-06-29 23:09:19 +00:00
Simon Michael
a6d93a164d
enable csv as a native data format (not yet obeying --rules-file)
2012-03-23 17:14:24 +00:00
Simon Michael
977fb2c3e8
make the utf8 IO compatibiity layer build on GHC 6.12.3, 7.0.4, 7.2.2, 7.4.1
2012-03-29 20:40:31 +00:00
Simon Michael
50068221c3
fix build warnings in all GHC versions
2012-03-29 21:19:35 +00:00
Simon Michael
18f8a5386a
docs: fix UTF8IOCompat haddock
2012-03-29 22:10:43 +00:00
Simon Michael
9ed8d8a8f6
docs: fix haddock hyperlink
2012-03-30 19:24:20 +00:00
Simon Michael
9b3486c14c
docs: fix incorrect haddock
2012-04-14 01:11:11 +00:00
Simon Michael
36534a9ef5
fix a misnamed var
2012-04-16 16:43:58 +00:00
Simon Michael
d30cd5847a
a simplistic cashflow statement to complete the trio
2012-04-17 17:32:56 +00:00
Simon Michael
df6ee91e38
hledger-lib, hledger will require GHC >= 7.0 due to use of shakespeare-text QQ in reports
2012-05-06 20:41:40 +00:00
Simon Michael
b77ba66fb1
haddock fix
2012-05-15 01:51:14 +00:00
Simon Michael
294a350993
promote Hledger.Query to second level
2012-05-16 07:57:10 +00:00
Simon Michael
91aae589ce
rename Hledger.Data.Matching to Hledger.Data.Query in cabal file too
2012-05-16 06:54:17 +00:00
Simon Michael
c1e8138609
more date utilities
2012-05-19 02:56:26 +00:00
Simon Michael
a03fd1d89f
fix haddock complaints
2012-05-27 18:20:18 +00:00
Simon Michael
9524e6d927
more metadata -> tag renaming in the parser
2012-05-28 00:24:49 +00:00
Simon Michael
1062e2f9a4
clean up reader selection, don't write a csv rules file on journal parse error
2012-05-28 18:40:36 +00:00
Simon Michael
0616499b97
update cabal files
2012-05-29 02:52:16 +00:00
Simon Michael
722c3a489f
update cabal dependencies after dropping convert
2012-03-26 00:36:41 +00:00
Simon Michael
88f69e12e2
fix Dates exports for hledger-web
2012-04-16 17:09:27 +00:00
Simon Michael
d0bf2667c2
bump version
2012-05-28 21:08:05 +00:00
Simon Michael
1f1a1eb16f
bump version
2012-03-30 00:27:23 +00:00
Simon Michael
a5b3f072b4
update query parser's prefix list
2012-05-29 17:02:18 +00:00
Simon Michael
e0d2530ff5
fix double quote matching everything
2012-05-29 17:02:57 +00:00
Simon Michael
cb905a741c
new query by tag implementation
2012-05-28 00:27:55 +00:00
Simon Michael
2fb2aea056
rename metadata fields to tags
2012-05-27 22:59:06 +00:00
Simon Michael
3ee6a351f3
big query/tests/show refactoring
...
- use new query system for command line too, filterspec is no more
- move unit tests near the code they test, run them in bottom up order, add more
- more precise Show instances, used for debugging not ui
2012-05-27 18:14:20 +00:00
Simon Michael
1654776f4a
refactor test runner
2012-05-14 19:23:12 +00:00
Simon Michael
db4d853a3f
refactor: move readJournal'
2012-04-14 01:10:39 +00:00
Simon Michael
1b7ffe2e5a
fix for haddock
2012-05-14 17:22:12 +00:00
Simon Michael
2f28931d83
fix build warnings in hledger-lib
2012-05-06 20:42:34 +00:00
Simon Michael
68966fe43b
begin cleaning up Dates api, move firstJust
2012-04-16 16:44:41 +00:00
Simon Michael
56cf9b21cb
fix txn & posting comment parsing & printing; better unit tests
2012-05-15 01:49:05 +00:00
Simon Michael
df74a3ed38
promote Hledger.Query part 2
2012-05-16 08:19:34 +00:00
Simon Michael
a628964016
prepare to support full query expressions on command line
2012-05-16 08:31:06 +00:00
Simon Michael
1e2c2bb10c
hook up more tests, begin converting remaining reports to Query
2012-05-17 04:21:34 +00:00
Simon Michael
2feb36e57f
query cleanups
2012-05-17 16:02:22 +00:00
Simon Michael
ddda6705c0
put query parsers first
2012-05-16 08:28:02 +00:00
Simon Michael
a58a5f96ad
more robust comments & metadata, on postings too, and document as "tags"
2012-05-14 18:52:22 +00:00
Simon Michael
88212f26e8
simplify journal parser names
2012-05-09 15:34:05 +00:00
xiaoruoruo
ce83876700
metadata parse and show for transaction
2012-04-08 19:13:56 +00:00
Simon Michael
c010448935
drop little-used clashing Ledger accessors
2012-05-09 15:33:16 +00:00
xiaoruoruo
dafa764a07
filter by metadata tag
2012-04-08 20:43:48 +00:00
Simon Michael
b6b5c5ffaa
explicit exports for Transaction and Posting
2012-05-07 14:36:40 +00:00
Simon Michael
c23d1793ae
docs: clarify supported GHC versions
2012-03-29 22:09:54 +00:00
Simon Michael
770136ec81
query tests cleanup
2012-05-17 14:59:38 +00:00
Simon Michael
08bbb832d0
more query cleanup
2012-05-16 07:50:22 +00:00
Simon Michael
e1b1b8bce8
rename Matcher to Query, simplify constructors
2012-05-16 07:12:49 +00:00
Simon Michael
8c7eea9ee0
make incomestatement respect options
2012-04-16 16:45:24 +00:00
Simon Michael
b4b2b67236
incomestatement: show revenue and expense accounts separately
2012-04-15 00:05:10 +00:00
Simon Michael
abb470aadb
use shakespeare-text to help lay out incomestatement's output
2012-04-14 20:35:51 +00:00
Simon Michael
a27eb7c29f
more matcher -> query renaming
2012-05-16 07:37:24 +00:00
Simon Michael
a7ef0ba8dd
basic understanding of balance sheet vs. profit & loss accounts
2012-04-14 01:12:42 +00:00
Simon Michael
51977f32e9
Journal.hs explicit exports, haddockification
2012-04-13 22:24:55 +00:00
Simon Michael
04dc5aed10
explicit imports for Matching
2012-05-16 06:43:13 +00:00
Simon Michael
43d78398bb
Hledger.Data.Matching -> Hledger.Data.Query
2012-05-16 06:50:08 +00:00
Simon Michael
8492f6cae4
fix unicode handling on GHC >= 7.2, unify utf8 IO compatibility layer
...
tests pass again from GHC 6.12.3 to 7.4.1
2012-03-29 19:06:31 +00:00
Simon Michael
d4451ce5e3
read system cleanup, require conversion rules from a file to simplify API
2012-03-24 18:08:11 +00:00
Simon Michael
00a43cd1bf
Hledger.Cli.Format -> Hledger.Data.FormatStrings
2012-03-10 19:20:15 +00:00
Simon Michael
e396c0dc8d
push csv rule and format string types down
2012-03-24 01:58:34 +00:00
Simon Michael
fdb3677129
try only as many data readers as needed for a successful read
2012-03-23 17:13:30 +00:00
Simon Michael
6eb7ad28e1
refactor/beef up readJournal/readJournalFile
2012-03-23 16:21:41 +00:00
Simon Michael
4d7a809c4a
cleanups and early code for csv reader based on convert
2012-03-10 21:55:48 +00:00
Simon Michael
2e8cf1c7f2
reader code cleanups
2012-03-10 18:13:32 +00:00
Simon Michael
120a9fd0e1
docs: readJournalFile haddock fix
2012-03-11 21:36:02 +00:00
Simon Michael
9bdb170a0a
inferred amounts use the cost commodity if known, like ledger ( #69 )
2012-01-03 08:15:48 +00:00
Simon Michael
470155dc63
docs: I don't think journalCanonicaliseAmounts affects price amounts
2012-01-03 08:17:04 +00:00
Simon Michael
26ad00a659
support and require latest cmdargs
2012-01-05 18:25:15 +00:00
Simon Michael
3e3af47b96
bump cmdargs upper bound in other places
2012-01-03 11:00:35 +00:00
Simon Michael
41c1fa636a
parsing: -B/--cost now ignores P historical prices, like ledger
2012-01-22 20:39:11 +00:00
Simon Michael
1bc4d4b395
refactor: clarify mixed amount normalising a bit
2012-01-01 00:39:13 +00:00
Simon Michael
6b784c0e65
bump version
2012-02-02 05:37:02 +00:00
Simon Michael
9329873cef
bump version to "0.17 alpha"
2012-01-31 05:18:18 +00:00
Simon Michael
62454b45ff
update tested-with fields
2012-01-30 04:21:03 +00:00
Simon Michael
381ebea35c
show correct line number for posting parse errors ( #67 )
2011-10-04 23:39:53 +00:00
Simon Michael
4fb325b92a
bump version
2011-10-04 23:53:50 +00:00
Simon Michael
3e3475bd76
web: fix "not:'multi word'" patterns
2011-09-21 00:28:32 +00:00
Simon Michael
de502e732b
drop unused TIMELOG env var
2011-09-21 23:12:53 +00:00
Simon Michael
556e3c9246
cli: give literal tilde error also with -f
2011-09-21 23:10:44 +00:00
Simon Michael
f5eecc34a3
cli: give a non-confusing error when literal tilde found in LEDGER_FILE
2011-09-21 22:58:47 +00:00
Simon Michael
f79b272ff3
balance: ledger compatibility fix: don't elide parent accounts with multiple displayed subaccounts
2011-09-22 20:40:06 +00:00
Simon Michael
c22e4e85d0
register: be better at showing empty intervals with --empty and a query pattern
2011-09-23 00:09:39 +00:00
Simon Michael
14881d0515
add: trim whitespace in auto-created journal
2011-09-26 20:56:01 +00:00
Simon Michael
5ccfb9cf7a
note the use of unix line endings on all platforms ( #51 )
2011-09-27 20:55:48 +00:00
Simon Michael
9b2a5f56e1
only the add and web commands auto-create the journal file
2011-09-23 03:53:14 +00:00
Simon Michael
35f3a4fa00
print, web: always show both dates, ignoring --effective ( #42 )
...
Ledger shows only the effective date with --effective, but not vice versa.
print is supposed to be information-preserving so this seems better.
This also fixes the web entries view.
2011-09-23 14:50:20 +00:00
Simon Michael
9a0a0be01c
docs: whitespace
2011-09-23 14:27:26 +00:00
Simon Michael
b0b1f7d733
bump version
2011-10-01 17:17:02 +00:00
Simon Michael
1de9cc1d80
fix a regression balancing a transaction containing different prices
...
And try to clarify amount arithmetic a bit more. More to come I expect.
2011-09-03 21:27:37 +00:00
Simon Michael
6142847dd2
web: fix wrong transaction amount in account register with virtual postings
2011-09-10 20:05:21 +00:00
Simon Michael
f37d7b5659
bump version
2011-09-12 22:52:24 +00:00
Simon Michael
b6f2650fb0
updated tested-with
2011-05-29 04:50:47 +00:00
Simon Michael
8521c07df7
assertParseFailure
2011-05-31 19:48:55 +00:00
Simon Michael
8d62452260
parsing: historical price directives may contain a numeric time zone, like ledger; note that the time is ignored
2011-06-01 01:50:04 +00:00
Simon Michael
946e5ffcbc
parsing: parse time of day more carefully
2011-05-31 22:45:54 +00:00
Simon Michael
1f24e025da
parsing: make bad date parse error more reliable
2011-05-31 19:49:37 +00:00
Simon Michael
2c68acdd03
lbi: add missing file to cabal
2011-06-06 19:04:38 +00:00
Simon Michael
f1fd9c3027
lib: add missing file to cabal
2011-06-07 06:11:59 +00:00
Simon Michael
35dcda9e8b
fix case insensitivity of command-line filter patterns
2011-06-08 21:52:10 +00:00
Simon Michael
238594d976
type signature for nullposting so tags can find it
2011-06-13 20:59:13 +00:00
Simon Michael
4e9c09fb87
refactor
2011-06-14 14:27:48 +00:00
Simon Michael
4228c901e8
change nulldate
2011-06-14 19:10:16 +00:00
Simon Michael
e36616999d
haddock correction: entry is a synonym for transaction, not posting
2011-06-17 18:18:03 +00:00
Simon Michael
92777edc99
docs: haddock tweaks
2011-04-29 03:25:52 +00:00
Simon Michael
287eb6bd00
refactor: drop dropws
2011-07-15 21:58:20 +00:00
Simon Michael
2aedd32690
journalAccountNamesUsed should be sorted
2011-07-17 15:54:21 +00:00
Simon Michael
f2171c1e02
choice' haddock
2011-07-17 17:16:40 +00:00
Simon Michael
9db32e0f60
haddock fix
2011-07-17 23:14:51 +00:00
Simon Michael
55033b6e79
mkdatespan haddock
2011-07-17 15:54:58 +00:00
Simon Michael
a44aa8d7d2
refactor: remove unnecessary LANGUAGE CPP pragmas
2011-07-17 23:29:57 +00:00
Simon Michael
47a9564bdb
showJournalDebug
2011-08-02 23:27:41 +00:00
Simon Michael
3364d344d1
refactor: simplify matchers, dropping sense argument
2011-08-07 15:31:00 +00:00
Simon Michael
68c2d0f513
fix matcher parse tests
2011-06-13 21:12:35 +00:00
Simon Michael
789be240b6
fix edate: matcher, should match actual date if no effective date defined
2011-07-01 17:20:04 +00:00
Simon Michael
77ca58269a
misc helpers
2011-08-07 15:31:36 +00:00
Simon Michael
b783f25fa8
type signature
2011-08-07 22:29:47 +00:00
Simon Michael
20a45c538d
also export trace from Hledger.Utils
2011-08-08 01:34:00 +00:00
Simon Michael
fd13689339
missing type signatures
2011-08-08 01:34:21 +00:00
Simon Michael
0cb0c61fcb
fix partial isSingleQuoted/isDoubleQuoted functions
2011-08-14 22:38:51 +00:00
Simon Michael
c24609f468
refactor fixSmartDate*
2011-08-14 22:39:48 +00:00
Simon Michael
931c64221e
more useful parse error from fixSmartDateStr
2011-08-08 01:34:43 +00:00
Simon Michael
666218dd62
more quoted string splitting/joining utils
2011-08-15 13:58:16 +00:00
Simon Michael
cbb0fc5c59
move basic reports into hledger-lib
2011-08-15 22:59:06 +00:00
Clint Adams
5ead6d05b1
update to cmdargs 0.8 API
...
Between 0.7 and 0.8, modeArgs changed from
modeArgs :: Maybe (Arg a)
to
modeArgs :: ([Arg a], Maybe (Arg a))
2011-08-30 21:41:25 +00:00
Simon Michael
b8aefb23cf
add missing cabal dependencies
2011-08-19 18:55:52 +00:00
Simon Michael
68f13e18af
amount haddock updates
2011-08-31 17:22:53 +00:00
Simon Michael
676845b269
trim even more fat from amounts
2011-08-31 17:44:20 +00:00
Simon Michael
06e224dc4a
haddock updates
2011-08-31 17:44:31 +00:00
Dmitry Astapov
2c01541de1
Fix for auto-balancing transactions which have negative amount in the first posting
2011-04-24 22:10:33 +00:00
Simon Michael
4104114d4e
harmonise package descriptions, make them hackage-compliant
2011-09-02 00:28:27 +00:00
Simon Michael
9e056d573e
Setup.hs is needed after all, by hackage
2011-09-02 00:29:50 +00:00
Simon Michael
5ce53abe6f
remove all Setup.hs, cabal no longer needs them and helps haddock
2011-06-03 17:09:54 +00:00
Simon Michael
b32ee2fa04
fix/rename convertMixedAmountToCommodity, yay release tests
2011-09-02 00:42:41 +00:00
Simon Michael
10fd7ebc42
simplify amounts code, make tests pass
2011-08-31 16:54:10 +00:00
Simon Michael
1273f02a9a
more balance/amount clarifications and a test
2011-08-30 11:37:36 +00:00
Simon Michael
059825a9b2
optionsgeddon.. port to cmdargs and a fully modal cli
2011-08-15 22:50:09 +00:00
Simon Michael
47b1142d49
move reports back to Hledger.Cli for now, forgot they still depend on cli options
2011-07-18 23:30:40 +00:00
Simon Michael
e4c4405c62
refactor: simplify some imports
2011-07-17 23:05:56 +00:00
Simon Michael
848a081d29
report haddocks
2011-07-18 00:21:13 +00:00
Simon Michael
df7dc1464e
refactor: move basic report generation to hledger-lib
2011-07-17 23:47:52 +00:00
Simon Michael
b27c90aea5
fix "import Hledger", and also include Hledger.Utils, for easier scripting
2011-06-13 20:46:29 +00:00
Simon Michael
35f145f03d
web: 1. move templates back into main code 2. begin adding content titles
2011-07-01 20:37:48 +00:00
Simon Michael
3dccfcad68
web: show account+subs by default
2011-07-01 00:32:09 +00:00
Simon Michael
05cd38458b
web: fix inacctsonly: with spaces
2011-06-24 19:15:00 +00:00
Simon Michael
4bb0f2efbd
web: "empty:" to select postings with zero or non-zero amount
2011-06-29 00:53:31 +00:00
Simon Michael
6b92997487
web: "real:1" to select real postings (or transactions with real postings)
2011-06-29 00:31:37 +00:00
Simon Michael
11409bb834
web: "status:" to filter by cleared status
2011-06-28 23:18:36 +00:00
Simon Michael
8d0b42e1d5
web: an "a" parameter specifies a query expression for filtering the accounts sidebar
...
Useful for ui experiments, at least
2011-06-28 22:34:45 +00:00
Simon Michael
d343614690
web: "inacctsonly:" narrows the sidebar to current account and subs
2011-06-24 18:52:40 +00:00
Simon Michael
d5ab811796
web: inacctsubs: -> inaccts:
2011-06-14 19:21:22 +00:00
Simon Michael
d35fbac422
web: inacctsubs: includes subs in an account register, with confusing balance
2011-06-14 14:29:31 +00:00
Simon Michael
94208e44d5
fix that silly pattern warning
2011-06-13 21:16:10 +00:00
Simon Michael
0c216cb2cd
distinguish query search criteria (like acct:) and query options (like inacct:)
2011-06-13 19:46:35 +00:00
Simon Michael
06331c71a8
account register balance not right.. more fixes and plans
2011-06-12 22:35:54 +00:00
Simon Michael
94709e5139
preliminary single-account register report
2011-06-11 16:11:38 +00:00
Simon Michael
d2e6b8cbae
query parser fixes, add date: and edate: matching
2011-06-12 18:30:18 +00:00
Simon Michael
957c349780
--alias command-line option
2011-08-05 00:05:39 +00:00
Simon Michael
30b7448f45
parsing: alias/end aliases directives, like ledger's but a bit more powerful
2011-08-04 08:45:18 +00:00
Simon Michael
4015e02097
account directive should preserve virtual/balanced virtual posting type
2011-08-02 23:29:13 +00:00
Simon Michael
345c2343b6
refactor ledgerDirective
2011-08-04 07:49:10 +00:00
Johann Klähn
8e7d20e4d5
parsing: support pop as well as end tag
2011-05-31 17:41:12 +00:00
Simon Michael
75f0886ad4
parsing: make the leading ! in directives optional, like ledger
2011-08-02 23:28:53 +00:00
Simon Michael
d4545966b5
amount code, test cleanups
2011-08-31 00:40:21 +00:00
Simon Michael
379184fd31
Amount haddock & code cleanups
2011-08-30 13:16:30 +00:00
Trygve Laugstol
28dbb8864f
Adding basic ledger FORMAT parser.
2011-06-20 21:33:26 +00:00
Simon Michael
96aa9bfc76
matcher improvements, tests
2011-06-11 18:35:20 +00:00
Simon Michael
6a185bc51f
refactor: abstract regular expression lib
2011-06-05 18:31:19 +00:00
Trygve Laugstøl
170154edfb
explicit-rules-file-argument-and-converting-stdin
...
* Adding support for telling which rules file to use with "--rules FILE".
* Adding support for using stdin when converting files.
2011-05-29 19:22:55 +00:00
Simon Michael
5084280879
imports, api cleanup
2011-05-28 04:11:44 +00:00
Simon Michael
b344f797d3
whitespace/quoting utilities
2011-06-05 18:34:12 +00:00
Simon Michael
bea6fb7464
matcher enhancements for account register
2011-06-11 16:00:00 +00:00
Simon Michael
a9eb8b57c2
fix warnings
2011-06-07 06:18:23 +00:00
Simon Michael
9734ed47a6
web: acct: -> in:/inacct:, match only one account (CI exact string match on full name), old acct: re-enabled
2011-06-08 22:02:49 +00:00
Simon Michael
f7956d1ab7
web: account matching works like --related by default; dim excluded accounts
...
A step closer to working like standard accounting programs where you click
an account to see transactions "in" that account. acct:PAT (or just PAT)
now matches the other postings in transactions matching the account
pattern, like ledger --related. When matching an account (or several) this
way, the unmatched accounts are dimmed to clarify what's happening.
Still to do: fix the sign of the running total, and find out how this
style of search will really coexist with the other ways of searching.
2011-06-07 06:11:38 +00:00
Simon Michael
32a1b921df
consolidate new matching support
2011-06-05 18:36:32 +00:00
Simon Michael
aa41350a16
begin more powerful query expressions (filter patterns)
2011-06-03 23:14:26 +00:00
Simon Michael
dc7a692a19
refactor: remove costbasis and whichdate from FilterSpec
2011-06-03 02:14:36 +00:00
Simon Michael
910e5c2bee
bump version
2011-09-02 00:42:50 +00:00
Simon Michael
ac5059ea53
bump version
2011-05-24 04:28:21 +00:00
Omari Norman
4ec0cc474f
Fix postingCleared for individually-cleared postings
...
The previous code simply looked directly to the parent transaction's
status to determine whether the posting was cleared. This gave
erroneous information for postings that were individually cleared
even though the parent transaction was not cleared.
2010-12-26 22:39:28 +00:00
Simon Michael
2b1ea5160f
change of mind: "every Nth X of Y" intervals' length shall be Y, not X
2011-01-14 05:01:00 +00:00
Simon Michael
810c6a5dac
print: don't show a trailing space when description is blank
2011-01-19 18:55:16 +00:00
Simon Michael
8980dd9336
parser cleanup
2011-01-19 23:27:44 +00:00
Simon Michael
0cda8e4c3f
add appendFile and hGetContents support to utf8 layer
2011-01-21 01:09:46 +00:00
Simon Michael
46422a7460
copy JGM's utf8 IO module from pandoc
2011-01-21 01:08:12 +00:00
Simon Michael
6a845eb5e4
i18n: always read and write UTF-8, ignoring current locale ( #34 )
...
Also remove a bunch of CPP conditions.
Uses the GHC-version-independent UTF-8 layer from pandoc.
2011-01-21 01:24:51 +00:00
Simon Michael
5f1ebc694a
parsing: assume current year when transaction dates have no year and there is no default year
2011-03-11 18:45:57 +00:00
Simon Michael
b4eca62334
switch default journal file name to ~/.hledger.journal, to avoid breaking mac filevault ( #41 )
2011-04-17 20:35:58 +00:00
Simon Michael
44709f1e16
handle a blank LEDGER_FILE or LEDGER value more gracefully (use the default file path)
2011-04-18 05:53:23 +00:00
Simon Michael
eefae63bb6
look at LEDGER_FILE for the journal path, otherwise LEDGER, like c++ ledger
2011-04-17 21:26:46 +00:00
Simon Michael
505d677461
docs: haddock fixes
2011-04-18 06:36:00 +00:00
Simon Michael
9bae97821a
really support "every N Xs" reporting intervals, also "every N(st|nd|rd|th) day of (month|week)"
2011-01-14 04:32:08 +00:00
Simon Michael
e96dfc639e
support "every N day/week/month/quarter/years" reporting intervals
2011-01-14 02:35:00 +00:00
Simon Michael
6de45f7d16
support "biweekly" and "bimonthly" reporting intervals
2011-01-14 01:22:53 +00:00
Simon Michael
b2f439eb11
try showing integral "maxprecision" amounts without the .0 (except in add's defaults, where it helps)
2011-01-20 00:17:32 +00:00
Simon Michael
7ee69f5ed8
docs: harmonise/update package descriptions
2011-04-19 00:50:47 +00:00
Simon Michael
bfe935e18c
fix a sign bug with negative total-priced (@@) amounts
2011-04-22 13:40:55 +00:00
Simon Michael
091ec4e51f
clarify that amount arithmetic does not handle multiple commodities
2011-04-22 13:44:08 +00:00
Simon Michael
137cc8292e
amount cleanups
2011-01-19 23:27:11 +00:00
Simon Michael
b159f74a4c
zero amounts have no sign or commodity, and amounts with different prices are aggregated, like ledger
2011-04-22 13:50:05 +00:00
Simon Michael
1c7ad7f421
parsing: more careful validation of eg leap years in transaction dates (only)
2011-04-22 13:55:42 +00:00
Simon Michael
e973868995
bump version
2011-04-18 06:53:50 +00:00
Simon Michael
9f66549b5a
bump version to alpha
2011-01-21 01:27:39 +00:00
Simon Michael
33bedcbab0
parsing: infer a conversion price in unpriced two-commodity transactions
2011-01-20 00:18:54 +00:00
Simon Michael
d3663b818e
parsing: better international number format support ( #32 )
...
This allows period and comma to be used for decimal point and digit group
separator or vice versa, and also flexible digit groups. See
http://en.wikipedia.org/wiki/Decimal_separator . Digit group separators
are possibly not worth the trouble and might not stay.
2011-01-19 12:32:18 +00:00
Simon Michael
dd9e78a67a
reorganize tests
2010-12-27 20:26:22 +00:00
Simon Michael
e03ada3bd3
parsing: support @@ syntax specifying total price
2011-01-15 02:04:53 +00:00
Simon Michael
a85e9bf68b
fix hledger cabal file, cleanup
2010-09-10 01:45:12 +00:00
Simon Michael
631215d5d7
parsing: accept (but ignore) c++ ledger's C commodity conversion directive
2010-11-12 23:55:40 +00:00
Simon Michael
d7617fe154
parsing: ignore cleared flags at the start of postings, parse account name correctly
2010-11-13 20:20:04 +00:00
Simon Michael
0d6e696699
some more tests and fixes for amount & price display precision
2010-11-14 23:29:04 +00:00
Simon Michael
811e71aba7
price precisions don't influence display precision; balancing is based on display precision ( #23 )
...
Like ledger, price amounts are now "unobserved", ie their precision does
not affect the canonical display precisions used when displaying amounts,
and transaction balancing is done based on display precision, ie amounts
are considered to balance if their sum appears to be zero when using the
canonical display precision.
2010-11-14 22:44:37 +00:00
Simon Michael
1551a6914b
still more amount display helpers
2010-11-13 15:10:06 +00:00
Simon Michael
77519e2c1d
remove debug code breaking reports
2010-11-14 18:10:48 +00:00
Simon Michael
e707f97847
parsing: parse transaction and posting metadata, though we don't use it yet
2010-11-13 22:17:32 +00:00
Simon Michael
17d5acf64b
refactor: more reader cleanups
2010-11-15 07:18:35 +00:00
Simon Michael
a3a7a346ac
uniquify reader module names
2010-11-15 07:01:46 +00:00
Simon Michael
cc2e5419f2
lib: cabal fix
2010-11-15 23:26:04 +00:00
Simon Michael
4e672f1722
comments
2010-11-19 17:25:39 +00:00
Simon Michael
1daed8120e
bump all but chart to beta status
2010-11-26 19:59:23 +00:00
Simon Michael
15518da4ac
bump version
2010-12-06 18:37:10 +00:00
Simon Michael
d6c2cf6a90
parsing: save final parse context with journal
2010-11-13 15:03:40 +00:00
Simon Michael
7714bab58d
web: offer a choice of files to edit when there are multiple (included) files
2010-09-24 01:56:11 +00:00
Simon Michael
78db98366f
parsing: support D default commodity directive
2010-11-12 23:54:21 +00:00
Simon Michael
8429df0f32
remember all included file paths, if any
2010-09-22 23:02:19 +00:00
Simon Michael
96036e56a0
docs: comments
2010-09-22 21:51:25 +00:00
Simon Michael
d132f5e45a
ledgerInclude cleanup
2010-09-22 21:52:04 +00:00
Simon Michael
9cb716d002
packagegeddon.. split off web/chart/vty, move hledger to a subdir
2010-09-09 22:54:34 +00:00
Simon Michael
314ff84fc1
installing: tighten up utf8-string dependency
2010-09-06 19:21:34 +00:00
Simon Michael
8052cb3364
bump version
2010-09-06 20:13:09 +00:00
Simon Michael
c42496b134
sign testing for amounts
2010-07-27 23:20:20 +00:00
Simon Michael
53ab61ea89
docs: haddock
2010-08-03 17:05:02 +00:00
Simon Michael
be94326a03
fix a build error with parsec 3 ( #22 )
2010-08-12 14:37:11 +00:00
Ben Boeckel
5e576e9ff0
fix-recursive-includes
...
Fix recursive includes beyond depth 3. Also add a test case for the bug.
2010-09-02 00:30:57 +00:00
Simon Michael
70bd8bb569
tools: handy monadic trace
2010-09-03 23:20:59 +00:00
Simon Michael
334974dedd
fix double error message output, clean up some ghc-version-specific imports
2010-09-03 23:39:11 +00:00
Simon Michael
0ea8a67c68
type signature
2010-09-05 16:05:38 +00:00
Simon Michael
d29b393ca2
fix a failing test, handle unicode better in errors
2010-09-05 18:18:50 +00:00
Simon Michael
4cd85ec767
encoded platform string helpers
2010-09-05 18:17:24 +00:00
Simon Michael
3531d4d54d
move split dependency to the right cabal file
2010-09-05 18:25:20 +00:00
Simon Michael
ce7e155934
parsing: fix obscured date parse errors with parsec 3; require split
...
With parsec 3, invalid date errors were not being reported properly.
This should be more robust.
2010-09-03 23:22:58 +00:00
Simon Michael
58e74ec857
bump version
2010-09-05 22:46:24 +00:00
Simon Michael
a8ab0906fd
bump version
2010-07-25 21:26:24 +00:00
Simon Michael
3436a27e68
installing: require cabal 1.6 or greater, set source-repository url
2010-09-05 22:49:20 +00:00
Simon Michael
cf62482102
web: show start and end dates of current filter period in heading, if any
2010-08-01 00:15:21 +00:00
Simon Michael
0773dde872
web: ui cleanups, replace balance/register with combo view
2010-07-27 22:49:45 +00:00
Simon Michael
0e40a9deee
bump version
2010-07-17 22:02:47 +00:00
Simon Michael
4120a874d8
test zero to 8 instead of 10 places, workaround for rounding error affecting a real-world transaction
2010-05-25 22:17:54 +00:00
Simon Michael
d52283f314
when reporting a balancing error, convert the error amount to cost
2010-05-25 22:18:36 +00:00
Simon Michael
586c824cac
display non-simple commodity names with double-quotes
...
This ensures print's output remains parseable. The other commands also
double-quote them, for consistency, like c++ ledger.
2010-05-27 01:38:23 +00:00
Simon Michael
63de5e0127
parsing: fix wrong parse error locations within postings
2010-07-08 02:51:17 +00:00
Simon Michael
3e9ad0ae13
parsing: don't let trailing whitespace in a timelog description mess up layout
2010-07-08 03:08:28 +00:00
Simon Michael
4f49094088
refactor: date spans, commodities
2010-07-11 18:56:36 +00:00
Simon Michael
e499efce77
type signature
2010-07-11 22:17:48 +00:00
Simon Michael
b5d1ebba30
print, register, balance: fix layout with mixed-commodity amounts
2010-07-11 22:51:36 +00:00
Simon Michael
2f6b82122f
tweak journal file auto-creation, add tests
2010-07-17 00:45:12 +00:00
Simon Michael
aaf14ffda1
fix a cabal dependency issue
2010-07-14 07:08:20 +00:00
Simon Michael
eefb04abfe
auto-create missing journal files rather than giving an error
2010-07-13 19:36:43 +00:00
Simon Michael
4dac3af181
bump convertible-text dependency to relax time dependency
2010-07-17 20:35:25 +00:00
Simon Michael
f9005f8aee
installing: constrain hledger-lib's time dependency to suit current hledger+yesod
2010-07-10 13:56:23 +00:00
Simon Michael
02706b66e7
update version
2010-07-17 21:01:07 +00:00
Simon Michael
4d5683d0a1
tools: bump version to indicate work-in-progress/prerelease status
2010-07-09 02:12:29 +00:00
Simon Michael
7d7159609b
refactor: much renaming of ledger -> journal, hopefully the right amount
2010-07-13 06:30:06 +00:00
Simon Michael
2a2b896c1d
webyesod: validate the journal before accepting an edit
2010-07-09 23:51:49 +00:00
Simon Michael
aa21f95b9e
webyesod: a destructive wiki-style edit form for journals
...
Warning: this is the first hledger feature which can alter your existing
journal data. You can now edit, or ERASE, the (top-level) journal file
through the web ui, and there is no access control. A numbered backup of
the file will be saved at each edit, in normal circumstances.
2010-07-09 23:00:04 +00:00
Simon Michael
73572e2d85
balance: with --flat, --drop N elides leading account name components. Feature or frill ?
2010-05-24 20:45:48 +00:00
Simon Michael
2f2e500eae
rename -fweb to -fweb610 and -fwebyesod to -fweb, misc cabal and docs cleanups
2010-07-10 13:58:35 +00:00
Simon Michael
8a64792ba7
smarter file reading: detect (or specify) intended data format and show appropriate error messages
...
New data reader modules need to provide just reader :: Reader, which is
the format name, a detector predicate, and a parser.
2010-06-25 14:56:48 +00:00
Simon Michael
1ec1f7c4ea
more file reading cleanup, try each known format in turn
...
Currently this is just the journal and timelog file formats. This is more
scalable, but when things go wrong there is no longer just a single parse
error. For now we'll just show the first error, the one from the journal
file parser.
2010-05-31 01:15:18 +00:00
Simon Michael
a848a835a2
clean up and combine I/O and parsing under Hledger.Read.*
...
This facilitates adding readers for new data formats. Timelog parsing is temporarily broken.
2010-05-30 19:11:58 +00:00
Simon Michael
f168124501
parsing: allow - before commodity symbol as well (also fixes a convert bug)
2010-05-26 23:44:08 +00:00
Simon Michael
b97d2690de
parsing: more robust double-quoted commodities - anything but a space or newline or double quote
2010-05-27 01:31:50 +00:00
Simon Michael
3305141206
parsing: allow spaces in double-quoted commodity symbols
2010-05-27 00:56:35 +00:00
Simon Michael
856f1f965a
docs: hledger-lib module haddock updates
2010-05-27 03:58:47 +00:00
Simon Michael
a048705542
doc: comment
2010-04-14 16:19:01 +00:00
Simon Michael
331ed6b407
refactor: cleanup
2010-04-14 21:37:03 +00:00
Simon Michael
b19b02962a
parsing: date parsing overhaul, don't exit on bad dates
...
- get rid of undefined parse errors due to guard
- don't call error from date parsers; let add re-prompt on bad dates
- years now must always have at least four digits
- clearer date parse errors
2010-04-14 21:49:34 +00:00
Simon Michael
a90d32ae78
hledger-lib requires safe
2010-04-14 22:38:54 +00:00
Simon Michael
f46cf82bed
parsing: simpler high-level parse error message
2010-04-15 16:14:50 +00:00
Simon Michael
bba4a32339
print: negative account patterns now exclude transactions containing any posting to a matched account
2010-04-15 23:08:27 +00:00
Simon Michael
ea14c64b20
bump version
2010-05-19 20:11:36 +00:00
Simon Michael
81e9e720ea
bump (and fix) version
2010-04-15 15:07:44 +00:00
Simon Michael
65cf381dbc
parsing: timelog entries now generate balanced transactions, using virtual postings
2010-05-23 18:54:14 +00:00
Simon Michael
be30aac3f5
fix an occasional stack overflow error due to infinite recursion in Posting/Transaction equality tests
...
This was happening with balance command on certain timelog entries, since 0.8.
Now, when testing two postings for equality, their parent transaction's identity is ignored.
2010-05-22 00:45:35 +00:00
Simon Michael
91b7736a8b
include file name in a journal's string representation
2010-05-23 22:15:08 +00:00
Simon Michael
a8d86fb5e5
web: fix loss of file path when reloading the journal
2010-05-23 22:24:30 +00:00
Simon Michael
bf5ee88a30
refactor: clarify the roles of Journal (primary data) and Ledger (derived report)
2010-05-23 17:41:25 +00:00
Simon Michael
70576e87d1
refactor: move post-parse processing into parseJournal
2010-05-22 23:35:34 +00:00
Simon Michael
10c0a9a958
refactor: take an axe to canonicaliseAmounts
2010-05-22 20:23:36 +00:00
Simon Michael
a430badb85
refactor: journalCloseTimeLogEntries
2010-05-22 19:00:20 +00:00
Simon Michael
11d354d426
refactor: renames and cleanups
2010-05-22 22:05:12 +00:00
Simon Michael
a3e5e7ce93
refactor: more ledger cleanup
2010-05-22 19:01:11 +00:00
Simon Michael
5982460782
refactor: clarify ledger construction a bit
2010-05-22 16:14:30 +00:00
Simon Michael
557746da5e
remove redundant imports revealed by ghc 6.12
2010-05-22 15:33:51 +00:00
Simon Michael
7d4593cee9
move Ledger.* to Hledger.Data.*
2010-05-19 23:08:53 +00:00
Simon Michael
5451e3ad40
parsing: balance real and balanced virtual postings separately, allow an amount-less balanced virtual posting
2010-04-14 16:59:02 +00:00
Simon Michael
77f64a7ddf
parsing: if there is no description, don't require a space after the transaction date
2010-04-15 20:44:04 +00:00
Simon Michael
4cd2364154
refactor
2010-02-27 17:50:25 +00:00
Simon Michael
6476d638f9
sumPostings should always preserve highest precision
2010-02-27 17:54:58 +00:00
Simon Michael
278e5dde64
amount display tests, fix a case where "auto" amount was displayed as 0
2010-03-09 04:11:23 +00:00
Simon Michael
3aa8613fa5
document some unsafe date parsing
2010-03-09 17:38:12 +00:00
Simon Michael
4973b82fb4
parsing: don't ignore trailing junk in a smart date, eg in web add form
2010-03-09 23:11:12 +00:00
Simon Michael
8daa9a33cd
refactor
2010-03-09 18:33:26 +00:00
Simon Michael
7b026ef6f4
parsing: allow transactions with empty descriptions
2010-03-10 01:25:02 +00:00
Simon Michael
a6b7ef597f
fix extra newline in balance error msg
2010-03-09 23:06:27 +00:00
Simon Michael
41b60bbcfc
when a transaction is unbalanced, show by how much; refactor
2010-02-27 18:06:29 +00:00
Simon Michael
723c96834c
tweak txn balancing error message
2010-03-09 18:34:20 +00:00
Simon Michael
5476a292ad
docs: haddock fixes
2010-03-13 00:17:47 +00:00
Simon Michael
d028e9eb17
refactor
2010-03-13 01:16:59 +00:00
Simon Michael
fd8ebd7c3d
parsing: more tests, ignore D, C directives; we should now accept any ledger 2.6 file
2010-03-13 01:10:10 +00:00
Simon Michael
8fd94ef6f5
refactor: parser cleanup
2010-03-12 23:46:20 +00:00
Simon Michael
dbb8576d8b
don't ignore unparsed text following an amount
2010-04-05 20:37:19 +00:00
Simon Michael
298d192678
register: fix a regression, register should not show posting comments
2010-02-15 20:33:49 +00:00
Simon Michael
e4cd127fc4
print: always show zero amounts as 0, hiding any commodity/decimal places/price, like ledger
2010-03-09 04:12:38 +00:00
Simon Michael
57c537de41
parsing: N, tag, end tag are now ignored; ledger sample.dat parses
2010-03-12 22:52:57 +00:00
Simon Michael
6977a0eecb
parsing: allow numbers in commodities if double-quoted, like ledger
2010-04-05 20:55:57 +00:00
Simon Michael
f92270dfa8
refactor: move parse tests
2010-03-11 17:16:03 +00:00
Simon Michael
903bf23afd
refactor
2010-03-09 04:03:51 +00:00
Simon Michael
eedf0b211a
refactor
2010-03-09 03:52:17 +00:00
Simon Michael
993972549a
refactor
2010-03-09 01:43:25 +00:00
Simon Michael
08607362b0
refactor assertParse/assertParseEqual
2010-03-10 19:48:46 +00:00
Simon Michael
f937f59276
assertParse now generates test failures
2010-03-10 19:17:32 +00:00
Simon Michael
b2c8933af4
parsing: show a better error for illegal month/day numbers in dates
2010-04-06 02:31:47 +00:00
Simon Michael
599398baa3
register: fix bad layout with years < 1000
2010-02-16 21:59:53 +00:00
Simon Michael
fad392e7e9
hledger-lib: docs update
2010-04-10 00:42:16 +00:00
Simon Michael
ca136dca7f
bump version
2010-04-10 00:51:06 +00:00
Simon Michael
1c46417bed
split off hledger-lib package, containing core types & utils
2010-03-22 01:44:59 +00:00