560 lines
		
	
	
		
			20 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			560 lines
		
	
	
		
			20 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| API-ish changes in the hledger-lib package. 
 | |
| Most user-visible changes are noted in the hledger changelog, instead.
 | |
| 
 | |
| 
 | |
| # 1.11 (2018/9/30)
 | |
| 
 | |
| * compilation now works when locale is unset (#849)
 | |
| 
 | |
| * all unit tests have been converted from HUnit+test-framework to easytest
 | |
| 
 | |
| * doctests now run quicker by default, by skipping reloading between tests. 
 | |
|   This can be disabled by passing --slow to the doctests test suite
 | |
|   executable.
 | |
| 
 | |
| * doctests test suite executable now supports --verbose, which shows
 | |
|   progress output as tests are run if doctest 0.16.0+ is installed
 | |
|   (and hopefully is harmless otherwise).
 | |
| 
 | |
| * doctests now support file pattern arguments, provide more informative output.
 | |
|   Limiting to just the file(s) you're interested can make doctest start
 | |
|   much quicker. With one big caveat: you can limit the starting files,
 | |
|   but it always imports and tests all other local files those import.
 | |
| 
 | |
| * a bunch of custom Show instances have been replaced with defaults,
 | |
|   for easier troubleshooting.  These were sometimes obscuring
 | |
|   important details, eg in test failure output. Our new policy is:
 | |
|   stick with default derived Show instances as far as possible, but
 | |
|   when necessary adjust them to valid haskell syntax so pretty-show
 | |
|   can pretty-print them (eg when they contain Day values, cf
 | |
|   https://github.com/haskell/time/issues/101).  By convention, when
 | |
|   fields are shown in less than full detail, and/or in double-quoted
 | |
|   pseudo syntax, we show a double period (..) in the output.
 | |
| 
 | |
| * Amount has a new Show instance.  Amount's show instance hid
 | |
|   important details by default, and showing more details required
 | |
|   increasing the debug level, which was inconvenient.  Now it has a
 | |
|   single show instance which shows more information, is fairly
 | |
|   compact, and is pretty-printable.
 | |
| 
 | |
|   ghci> usd 1
 | |
|   OLD:
 | |
|   Amount {acommodity="$", aquantity=1.00, ..}
 | |
|   NEW:
 | |
|   Amount {acommodity = "$", aquantity = 1.00, aprice = NoPrice, astyle = AmountStyle "L False 2 Just '.' Nothing..", amultiplier = False}
 | |
| 
 | |
|   MixedAmount's show instance is unchanged, but showMixedAmountDebug
 | |
|   is affected by this change:
 | |
| 
 | |
|   ghci> putStrLn $ showMixedAmountDebug $ Mixed [usd 1]
 | |
|   OLD:
 | |
|   Mixed [Amount {acommodity="$", aquantity=1.00, aprice=, astyle=AmountStyle {ascommodityside = L, ascommodityspaced = False, asprecision = 2, asdecimalpoint = Just '.', asdigitgroups = Nothing}}]
 | |
|   NEW:
 | |
|   Mixed [Amount {acommodity="$", aquantity=1.00, aprice=, astyle=AmountStyle "L False 2 Just '.' Nothing.."}]
 | |
| 
 | |
| * Same-line & next-line comments of transactions, postings, etc.
 | |
|   are now parsed a bit more precisely (followingcommentp). 
 | |
|   Previously, parsing no comment gave the same result as an empty
 | |
|   comment (a single newline); now it gives an empty string.  
 | |
|   Also, and perhaps as a consequence of the above, when there's no
 | |
|   same-line comment but there is a next-line comment, we'll insert an
 | |
|   empty first line, since otherwise next-line comments would get moved
 | |
|   up to the same line when rendered.
 | |
| 
 | |
| * Hledger.Utils.Test exports HasCallStack
 | |
| 
 | |
| * queryDateSpan, queryDateSpan' now intersect date AND'ed date spans
 | |
|   instead of unioning them, and docs are clearer.
 | |
| 
 | |
| * pushAccount -> pushDeclaredAccount
 | |
| 
 | |
| * jaccounts -> jdeclaredaccounts
 | |
| 
 | |
| * AutoTransaction.hs -> PeriodicTransaction.hs & TransactionModifier.hs
 | |
| 
 | |
| * Hledger.Utils.Debug helpers have been renamed/cleaned up
 | |
| 
 | |
| 
 | |
| # 1.10 (2018/6/30)
 | |
| 
 | |
| * build cleanly with all supported GHC versions again (7.10 to 8.4)
 | |
| 
 | |
| * support/use latest base-compat (#794)
 | |
| 
 | |
| * support/require megaparsec 6.4+
 | |
| 
 | |
| * extensive refactoring and cleanup of parsers and related types and utilities
 | |
| 
 | |
| * readJournalFile(s) cleanup, these now use InputOpts
 | |
| 
 | |
| * doctests now run a bit faster (#802)
 | |
| 
 | |
| 
 | |
| # 1.9.1 (2018/4/30)
 | |
| 
 | |
| * new generic PeriodicReport, and some report-related type aliases
 | |
| 
 | |
| * new BudgetReport
 | |
| 
 | |
| * make (readJournal|tryReader)s?WithOpts the default api, dropping "WithOpts"
 | |
| 
 | |
| * automated postings and command line account aliases happen earlier
 | |
|   in journal processing (see hledger changelog)
 | |
| 
 | |
| 
 | |
| # 1.9 (2018/3/31)
 | |
| 
 | |
| * support ghc 8.4, latest deps
 | |
| 
 | |
| * when the system text encoding is UTF-8, ignore any UTF-8 BOM prefix
 | |
| found when reading files.
 | |
| 
 | |
| * CompoundBalanceReport amounts are now normally positive.
 | |
| The bs/bse/cf/is commands now show normal income, liability and equity
 | |
| balances as positive.  Negative numbers now indicate a contra-balance
 | |
| (eg an overdrawn checking account), a net loss, a negative net worth,
 | |
| etc.  This makes these reports more like conventional financial
 | |
| statements, and easier to read and share with others. (experimental)
 | |
| 
 | |
| * splitSpan now returns no spans for an empty datespan
 | |
| 
 | |
| * don't count periodic/modifier txns in Journal debug output
 | |
| 
 | |
| * lib/ui/web/api: move embedded manual files to extra-source-files
 | |
| 
 | |
| * Use skipMany/skipSome for parsing spacenonewline (Moritz Kiefer)
 | |
| This avoids allocating the list of space characters only to then
 | |
| discard it.
 | |
| 
 | |
| * rename, clarify purpose of balanceReportFromMultiBalanceReport
 | |
| 
 | |
| * fix some hlint warnings
 | |
| 
 | |
| * add some easytest tests
 | |
| 
 | |
| 
 | |
| # 1.5 (2017/12/31)
 | |
| 
 | |
| * -V/--value uses today's market prices by default, not those of last transaction date. #683, #648)
 | |
| 
 | |
| * csv: allow balance assignment (balance assertion only, no amount) in csv records (Nadrieril)
 | |
| 
 | |
| * journal: allow space as digit group separator character, #330 (Mykola Orliuk)
 | |
| 
 | |
| * journal: balance assertion errors now show line of failed assertion posting, #481 (Sam Jeeves)
 | |
| 
 | |
| * journal: better errors for directives, #402 (Mykola Orliuk)
 | |
| 
 | |
| * journal: better errors for included files, #660 (Mykola Orliuk)
 | |
| 
 | |
| * journal: commodity directives in parent files are inherited by included files, #487 (Mykola Orliuk)
 | |
| 
 | |
| * journal: commodity directives limits precision even after -B, #509 (Mykola Orliuk)
 | |
| 
 | |
| * journal: decimal point/digit group separator chars are now inferred from an applicable commodity directive or default commodity directive. #399, #487 (Mykola Orliuk)
 | |
| 
 | |
| * journal: numbers are parsed more strictly (Mykola Orliuk)
 | |
| 
 | |
| * journal: support Ledger-style automated postings, enabled with --auto flag (Dmitry Astapov)
 | |
| 
 | |
| * journal: support Ledger-style periodic transactions, enabled with --forecast flag (Dmitry Astapov)
 | |
| 
 | |
| * period expressions: fix "nth day of {week,month}", which could generate wrong intervals (Dmitry Astapov)
 | |
| 
 | |
| * period expressions: month names are now case-insensitive (Dmitry Astapov)
 | |
| 
 | |
| * period expressions: stricter checking for invalid expressions (Mykola Orliuk)
 | |
| 
 | |
| * period expressions: support "every 11th Nov" (Dmitry Astapov)
 | |
| 
 | |
| * period expressions: support "every 2nd Thursday of month" (Dmitry Astapov)
 | |
| 
 | |
| * period expressions: support "every Tuesday", short for "every <n>th day of week" (Dmitry Astapov)
 | |
| 
 | |
| * remove upper bounds on all but hledger* and base (experimental)
 | |
|   It's rare that my deps break their api or that newer versions must
 | |
|   be avoided, and very common that they release new versions which I
 | |
|   must tediously and promptly test and release hackage revisions for
 | |
|   or risk falling out of stackage. Trying it this way for a bit.
 | |
| 
 | |
| 
 | |
| # 1.4 (2017/9/30)
 | |
| 
 | |
| * add readJournalFile[s]WithOpts, with simpler arguments and support
 | |
| for detecting new transactions since the last read.
 | |
| 
 | |
| * query: add payee: and note: query terms, improve description/payee/note docs (Jakub Zárybnický, Simon Michael, #598, #608)
 | |
| 
 | |
| * journal, cli: make trailing whitespace significant in regex account aliases
 | |
| Trailing whitespace in the replacement part of a regular expression
 | |
| account alias is now significant. Eg, converting a parent account to
 | |
| just an account name prefix: --alias '/:acct:/=:acct '
 | |
| 
 | |
| * timedot: allow a quantity of seconds, minutes, days, weeks, months
 | |
|   or years to be logged as Ns, Nm, Nd, Nw, Nmo, Ny
 | |
| 
 | |
| * csv: switch the order of generated postings, so account1 is first.
 | |
| This simplifies things and facilitates future improvements.
 | |
| 
 | |
| * csv: show the "creating/using rules file" message only with --debug
 | |
| 
 | |
| * csv: fix multiple includes in one rules file
 | |
| 
 | |
| * csv: add "newest-first" rule for more robust same-day ordering
 | |
| 
 | |
| * deps: allow ansi-terminal 0.7
 | |
| 
 | |
| * deps: add missing parsec lower bound, possibly related to #596, fpco/stackage#2835
 | |
| 
 | |
| * deps: drop oldtime flag, require time 1.5+
 | |
| 
 | |
| * deps: remove ghc < 7.6 support, remove obsolete CPP conditionals
 | |
| 
 | |
| * deps: fix test suite with ghc 8.2
 | |
| 
 | |
| 
 | |
| # 1.3.1 (2017/8/25)
 | |
| 
 | |
| * Fix a bug with -H showing nothing for empty periods (#583, Nicholas Niro)
 | |
| This patch fixes a bug that happened when using the -H option on
 | |
| a period without any transaction. Previously, the behavior was no
 | |
| output at all even though it should have shown the previous ending balances
 | |
| of past transactions. (This is similar to previously using -H with -E,
 | |
| but with the extra advantage of not showing empty accounts)
 | |
| 
 | |
| * allow megaparsec 6 (#594)
 | |
| 
 | |
| * allow megaparsec-6.1 (Hans-Peter Deifel)
 | |
| 
 | |
| * fix test suite with Cabal 2 (#596)
 | |
| 
 | |
| 
 | |
| # 1.3 (2017/6/30)
 | |
| 
 | |
| journal: The "uncleared" transaction/posting status, and associated UI flags
 | |
| and keys, have been renamed to "unmarked" to remove ambiguity and
 | |
| confusion.  This means that we have dropped the `--uncleared` flag,
 | |
| and our `-U` flag now matches only unmarked things and not pending
 | |
| ones.  See the issue and linked mail list discussion for more
 | |
| background.  (#564)
 | |
| 
 | |
| csv: assigning to the "balance" field name creates balance
 | |
| assertions (#537, Dmitry Astapov).
 | |
| 
 | |
| csv: Doubled minus signs are handled more robustly (fixes #524, Nicolas Wavrant, Simon Michael)
 | |
| 
 | |
| Multiple "status:" query terms are now OR'd together. (#564)
 | |
| 
 | |
| deps: allow megaparsec 5.3.
 | |
| 
 | |
| 
 | |
| # 1.2 (2017/3/31)
 | |
| 
 | |
| ## journal format
 | |
| 
 | |
| A pipe character can optionally be used to delimit payee names in
 | |
| transaction descriptions, for more accurate querying and pivoting by
 | |
| payee.  Eg, for a description like `payee name | additional notes`,
 | |
| the two parts will be accessible as pseudo-fields/tags named `payee`
 | |
| and `note`.
 | |
| 
 | |
| Some journal parse errors now show the range of lines involved, not just the first.
 | |
| 
 | |
| ## ledger format
 | |
| 
 | |
| The experimental `ledger:` reader based on the WIP ledger4 project has
 | |
| been disabled, reducing build dependencies.
 | |
| 
 | |
| ## Misc
 | |
| 
 | |
| Fix a bug when tying the knot between postings and their parent transaction, reducing memory usage by about 10% (#483) (Mykola Orliuk)
 | |
| 
 | |
| Fix a few spaceleaks (#413) (Moritz Kiefer)
 | |
| 
 | |
| Add Ledger.Parse.Text to package.yaml, fixing a potential build failure.
 | |
| 
 | |
| Allow megaparsec 5.2 (#503)
 | |
| 
 | |
| Rename optserror -> usageError, consolidate with other error functions
 | |
| 
 | |
| 
 | |
| # 1.1 (2016/12/31)
 | |
| 
 | |
| ## journal format
 | |
| 
 | |
| -   balance assignments are now supported (#438, #129, #157, #288)
 | |
| 
 | |
|     This feature also brings a slight performance drop (~5%);
 | |
|     optimisations welcome.
 | |
| 
 | |
| -   also recognise `*.hledger` files as hledger journal format
 | |
| 
 | |
| ## ledger format
 | |
| 
 | |
| -   use ledger-parse from the ledger4 project as an alternate reader for C++ Ledger journals
 | |
|     
 | |
|     The idea is that some day we might get better compatibility with Ledger files this way.
 | |
|     Right now this reader is not very useful and will be used only if you explicitly select it with a `ledger:` prefix.
 | |
|     It parses transaction dates, descriptions, accounts and amounts, and ignores everything else.
 | |
|     Amount parsing is delegated to hledger's journal parser, and malformed amounts might be silently ignored.
 | |
| 
 | |
|     This adds at least some of the following as new dependencies for hledger-lib:
 | |
|     parsers, parsec, attoparsec, trifecta.
 | |
| 
 | |
| ## misc
 | |
| 
 | |
| -   update base lower bound to enforce GHC 7.10+
 | |
|     
 | |
|     hledger-lib had a valid install plan with GHC 7.8, but currently requires GHC 7.10 to compile.
 | |
|     Now we require base 4.8+ everywhere to ensure the right GHC version at the start.
 | |
|     
 | |
| -   Hledger.Read api cleanups
 | |
| 
 | |
| -   rename dbgIO to dbg0IO, consistent with dbg0, and document a bug in dbg*IO
 | |
| 
 | |
| -   make readJournalFiles [f] equivalent to readJournalFile f (#437)
 | |
| 
 | |
| -   more general parser types enabling reuse outside of IO (#439)
 | |
| 
 | |
| 
 | |
| # 1.0.1 (2016/10/27)
 | |
| 
 | |
| - allow megaparsec 5.0 or 5.1
 | |
| 
 | |
| 
 | |
| # 1.0 (2016/10/26)
 | |
| 
 | |
| ## timedot format
 | |
| 
 | |
| -   new "timedot" format for retroactive/approximate 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.
 | |
| 
 | |
| ## timeclock format
 | |
| 
 | |
| -   renamed "timelog" format to "timeclock", matching the emacs package
 | |
| 
 | |
| -   sessions can no longer span file boundaries (unclocked-out
 | |
| 
 | |
|     sessions will be auto-closed at the end of the file).
 | |
| 
 | |
| -   transaction ids now count up rather than down (#394)
 | |
| 
 | |
| -   timeclock files no longer support default year directives
 | |
| 
 | |
| -   removed old code for appending timeclock transactions to journal transactions.
 | |
| 
 | |
|     A holdover from the days when both were allowed in one file.
 | |
| 
 | |
| ## csv format
 | |
| 
 | |
| -   fix empty field assignment parsing, rule parse errors after megaparsec port (#407) (Hans-Peter Deifel)
 | |
| 
 | |
| ## journal format
 | |
| 
 | |
| -   journal files can now include timeclock or timedot files (#320)
 | |
| 
 | |
|     (but not yet CSV files).
 | |
| 
 | |
| -   fixed an issue with ordering of same-date transactions included from other files
 | |
| 
 | |
| -   the "commodity" directive and "format" subdirective are now supported, allowing
 | |
| 
 | |
|     full control of commodity style (#295) The commodity directive's
 | |
|     format subdirective can now be used to override the inferred
 | |
|     style for a commodity, eg to increase or decrease the
 | |
|     precision. This is at least a good workaround for #295.
 | |
| 
 | |
| -   Ledger-style "apply account"/"end apply account" directives are now used to set a default parent account.
 | |
| 
 | |
| -   the Ledger-style "account" directive is now accepted (and ignored).
 | |
| 
 | |
| -   bracketed posting dates are more robust (#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.
 | |
| 
 | |
| -   balance assertion failure messages are clearer
 | |
| 
 | |
| -   with --debug=2, more detail about balance assertions is shown.
 | |
| 
 | |
| ## misc
 | |
| 
 | |
| -   file parsers have been ported from Parsec to Megaparsec \o/ (#289, #366) (Alexey Shmalko, Moritz Kiefer)
 | |
| 
 | |
| -   most hledger types have been converted from String to Text, reducing memory usage by 30%+ on large files
 | |
| 
 | |
| -   file parsers have been simplified for easier troubleshooting (#275).
 | |
| 
 | |
|     The journal/timeclock/timedot parsers, instead of constructing
 | |
|     opaque journal update functions which are later applied to build
 | |
|     the journal, now construct the journal directly by modifying the
 | |
|     parser state. This is easier to understand and debug. It also
 | |
|     rules out the possibility of journal updates being a space
 | |
|     leak. (They weren't, in fact this change increased memory usage
 | |
|     slightly, but that has been addressed in other ways).  The
 | |
|     ParsedJournal type alias has been added to distinguish
 | |
|     "being-parsed" journals and "finalised" journals.
 | |
| 
 | |
| -   file format detection is more robust.
 | |
| 
 | |
|     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. 
 | |
|     Also, we now always try parsing stdin as journal format (not just sometimes).
 | |
| 
 | |
| -   all file formats now produce transaction ids, not just journal (#394)
 | |
| 
 | |
| -   git clone of the hledger repo on windows now works (#345)
 | |
| 
 | |
| -   added missing benchmark file (#342)
 | |
| 
 | |
| -   our stack.yaml files are more compatible across stack versions (#300)
 | |
| 
 | |
| -   use newer file-embed to fix ghci working directory dependence (<https://github.com/snoyberg/file-embed/issues/18>)
 | |
| 
 | |
| -   report more accurate dates in account transaction report when postings have their own dates
 | |
| 
 | |
|     (affects hledger-ui and hledger-web registers).
 | |
|     The newly-named "transaction register date" is the date to be
 | |
|     displayed for that transaction in a transaction register, for
 | |
|     some current account and filter query.  It is either the
 | |
|     transaction date from the journal ("transaction general date"),
 | |
|     or if postings to the current account and matched by the
 | |
|     register's filter query have their own dates, the earliest of
 | |
|     those posting dates.
 | |
| 
 | |
| -   simplify account transactions report's running total.
 | |
| 
 | |
|     The account transactions report used for hledger-ui and -web
 | |
|     registers now gives either the "period total" or "historical
 | |
|     total", depending strictly on the --historical flag. It doesn't
 | |
|     try to indicate whether the historical total is the accurate
 | |
|     historical balance (which depends on the user's report query).
 | |
| 
 | |
| -   reloading a file now preserves the effect of options, query arguments etc.
 | |
| 
 | |
| -   reloading a journal should now reload all included files as well.
 | |
| 
 | |
| -   the Hledger.Read.\* modules have been reorganised for better reuse.
 | |
| 
 | |
|     Hledger.Read.Utils has been renamed Hledger.Read.Common
 | |
|     and holds low-level parsers & utilities; high-level read
 | |
|     utilities are now in Hledger.Read.
 | |
| 
 | |
| -   clarify amount display style canonicalisation code and terminology 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 they can be controlled by the
 | |
|     "format" subdirective in journal files.
 | |
| 
 | |
| -   Journal is now a monoid
 | |
| 
 | |
| -   expandPath now throws a proper IO error
 | |
| 
 | |
| -   more unit tests, start using doctest
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 0.27 (2015/10/30)
 | |
| 
 | |
| - The main hledger types now derive NFData, which makes it easier to
 | |
|   time things with criterion.
 | |
| 
 | |
| - Utils has been split up more.
 | |
| 
 | |
| - Utils.Regex: regular expression compilation has been memoized, and
 | |
|   memoizing versions of regexReplace[CI] have been added, since
 | |
|   compiling regular expressions every time seems to be quite
 | |
|   expensive (#244).
 | |
|  
 | |
| - Utils.String: strWidth is now aware of multi-line strings (#242).
 | |
| 
 | |
| - Read: parsers now use a consistent p suffix.
 | |
| 
 | |
| - New dependencies: deepseq, uglymemo.
 | |
| 
 | |
| - All the hledger packages' cabal files are now generated from
 | |
|   simpler, less redundant yaml files by hpack, in principle. In
 | |
|   practice, manual fixups are still needed until hpack gets better,
 | |
|   but it's still a win.
 | |
| 
 | |
| 0.26 (2015/7/12)
 | |
| 
 | |
| - allow year parser to handle arbitrarily large years
 | |
| - Journal's Show instance reported one too many accounts
 | |
| - some cleanup of debug trace helpers
 | |
| - tighten up some date and account name parsers (don't accept leading spaces; hadddocks)
 | |
| - drop regexpr dependency
 | |
| 
 | |
| 0.25.1 (2015/4/29)
 | |
| 
 | |
| - support/require base-compat >0.8 (#245)
 | |
| 
 | |
| 0.25 (2015/4/7)
 | |
| 
 | |
| 
 | |
| - GHC 7.10 compatibility (#239)
 | |
| 
 | |
| 0.24.1 (2015/3/15)
 | |
| 
 | |
| - fix JournalReader "ctx" compilation warning
 | |
| - add some type signatures in Utils to help make ghci-web
 | |
| 
 | |
| 0.24 (2014/12/25)
 | |
| 
 | |
| - fix combineJournalUpdates folding order
 | |
| - fix a regexReplaceCI bug
 | |
| - fix a splitAtElement bug with adjacent separators
 | |
| - mostly replace slow regexpr with regex-tdfa (fixes #189)
 | |
| - use the modern Text.Parsec API
 | |
| - allow transformers 0.4*
 | |
| - regexReplace now supports backreferences
 | |
| - Transactions now remember their parse location in the journal file
 | |
| - export Regexp types, disambiguate CsvReader's similarly-named type
 | |
| - export failIfInvalidMonth/Day (fixes #216)
 | |
| - track the commodity of zero amounts when possible
 | |
|   (useful eg for hledger-web's multi-commodity charts)
 | |
| - show posting dates in debug output
 | |
| - more debug helpers
 | |
| 
 | |
| 0.23.3 (2014/9/12)
 | |
| 
 | |
| - allow transformers 0.4*
 | |
| 
 | |
| 0.23.2 (2014/5/8)
 | |
| 
 | |
| - postingsReport: also fix date sorting of displayed postings (#184)
 | |
| 
 | |
| 0.23.1 (2014/5/7)
 | |
| 
 | |
| - postingsReport: with disordered journal entries, postings before the
 | |
|   report start date could get wrongly included. (#184)
 | |
| 
 | |
| 0.23 (2014/5/1)
 | |
| 
 | |
| - orDatesFrom -> spanDefaultsFrom
 | |
| 
 | |
| 0.22.2 (2014/4/16)
 | |
| 
 | |
| - display years before 1000 with four digits, not three
 | |
| - avoid pretty-show to build with GHC < 7.4
 | |
| - allow text 1.1, drop data-pprint to build with GHC 7.8.x
 | |
| 
 | |
| 0.22.1 (2014/1/6) and older: see http://hledger.org/release-notes or doc/CHANGES.md.
 |