224 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			Org Mode
		
	
	
	
	
	
			
		
		
	
	
			224 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			Org Mode
		
	
	
	
	
	
# -*- mode:org -*-
 | 
						|
 | 
						|
* 2016/mm/dd 0.28
 | 
						|
** general
 | 
						|
*** docs
 | 
						|
   * All of the hledger executables' manuals now include the full list of general and reporting
 | 
						|
     options; the assumption is that these options are harmlessly ignored when not supported.
 | 
						|
   * docs have been reorganised and are now also provided as built-in help, in plain text, man and
 | 
						|
     info formats, generated from the same source by a new Shake-based docs build system. (#292)
 | 
						|
   * misc documentation updates - layout/style cleanups, LEDGER_FILE, accounts, include directive,
 | 
						|
     CSV, timeclock, how to use dotted account names
 | 
						|
   * minor copyedits (jungle-boogie)
 | 
						|
   * The website is simpler, clearer, and more mobile-friendly.  Docs are now collected on a single
 | 
						|
     page and separated by type: getting started, reference, more.  Also separate web manuals are
 | 
						|
     available for each executable and file format. This should make it easier to see what's
 | 
						|
     available, and to read just what you need.
 | 
						|
   * add beancount's nice example journal, hledgerised This is the synthetic, somewhat realistic
 | 
						|
     example journal from Martin Blais' beancount project (of a few months ago), slightly tweaked
 | 
						|
     for hledger. It makes a nice example, eg for trying out hledger-ui.
 | 
						|
 | 
						|
*** cli
 | 
						|
   * The hledger executables have a new help system, making their manuals available for local
 | 
						|
     reading.
 | 
						|
     #+BEGIN_EXAMPLE
 | 
						|
     PROG -h              shows PROG's command-line usage
 | 
						|
     PROG --help          shows PROG's manual (fixed width)
 | 
						|
     PROG --man           shows PROG's manual with man (formatted/paged)
 | 
						|
     PROG --info          shows PROG's manual with info (hypertext)
 | 
						|
     hledger help [TOPIC] shows any manual
 | 
						|
     hledger man  [TOPIC] shows any manual with man
 | 
						|
     hledger info [TOPIC] shows any manual with info
 | 
						|
     #+END_EXAMPLE
 | 
						|
 | 
						|
   * When multiple files are specified with multiple -f options, we now parse each one individually,
 | 
						|
     rather than just concatenating them, so they can have different formats (#320).  Note this also
 | 
						|
     means that directives (like `Y` or `alias`) no longer carry over from one file to the next.
 | 
						|
 | 
						|
   * Parsing an argument-less --debug option is more robust.
 | 
						|
 | 
						|
** hledger-lib 0.28
 | 
						|
*** journal format
 | 
						|
   * try to parse standard input as journal format always, not just most of the time
 | 
						|
   * can now include timeclock/timedot files (#320)
 | 
						|
     journal files can now include journal, timeclock or timedot files
 | 
						|
     (but not yet CSV files). Also timeclock/timedot files no longer
 | 
						|
     support default year directives.
 | 
						|
   * support commodity directive and format subdirective, 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.
 | 
						|
   * lib: after reloading a journal, also refilter it (#314)
 | 
						|
   * 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.
 | 
						|
   * 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".
 | 
						|
   * support ledger3-compatible "apply account"
 | 
						|
   * lib: show txn's file position in assertion errors
 | 
						|
   * lib: more ergonomic balance assertion errors
 | 
						|
   * fixed an issue with ordering of included same-date transactions
 | 
						|
 | 
						|
*** 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).
 | 
						|
 | 
						|
*** 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.
 | 
						|
 | 
						|
*** misc
 | 
						|
   * lib: clarify balance assertion error again
 | 
						|
     "calculated" is better, "actual" implies the account's actual real-world
 | 
						|
     balance which might be something else again.
 | 
						|
   * Use hpack in hledger-ui (#356)
 | 
						|
   * always try parsing stdin as journal
 | 
						|
   * reduced memory usage by 30%+ on large files
 | 
						|
   * bump default stackage snapshot to lts-6.0
 | 
						|
   * git clone of the hledger repo on windows now works (#345)
 | 
						|
   * added missing benchmark file (#342)
 | 
						|
   * Add --pivot option with tests and docs (#323) (Malte Brandy)
 | 
						|
   * GHC 8.0.1 compatibility (except hledger-api)
 | 
						|
     Note we seem to have lost GHC 7.4 compatibility.
 | 
						|
   * more tests, start using doctests
 | 
						|
   * require stackage nightly, for newer pandoc/swagger
 | 
						|
     Move to a newer stackage snapshot. This helps ensure a new-enough pandoc
 | 
						|
     will more be available for doc building without needing extra
 | 
						|
     compilation. Also we get to use the latest swagger and servant-swagger
 | 
						|
     for hledger-api, but we have to go to stackage nightly. With luck there
 | 
						|
     will be a lts 6 before next hledger release.
 | 
						|
   * lib: slightly better file 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.
 | 
						|
   * make stack config more compatible across stack versions (#300)
 | 
						|
   * journalReloadIfChanged now reloads the full journal without filtering, like journalReload
 | 
						|
   * Reloading a journal should now reload all included files as well.
 | 
						|
   * lib: make Journal a monoid
 | 
						|
   * lib: 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 have moved to
 | 
						|
     Hledger.Read.
 | 
						|
   * use new file-embed to fix ghci cwd dependence, see
 | 
						|
     https://github.com/snoyberg/file-embed/issues/18
 | 
						|
   * 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.
 | 
						|
   * Most hledger types have been converted from String to (strict)
 | 
						|
     Text.  This reduces maximum residency (~30-50%) on large data
 | 
						|
     files and gives a slight speed increase.
 | 
						|
   * lib: simplify parsers; cleanups (#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 removes any possibility of the journal updates
 | 
						|
     being a space leak. (They weren't, in fact memory usage is now
 | 
						|
     slightly higher, but that will be addressed in other ways.)
 | 
						|
     Also:
 | 
						|
   * Journal data and journal parse info have been merged into one
 | 
						|
     type (for now), and field names are more consistent.
 | 
						|
   * The ParsedJournal type alias has been added to distinguish
 | 
						|
     being-parsed and finalised journals.
 | 
						|
   * Journal is now a monoid.
 | 
						|
   * expandPath now throws a proper IO error (and requires the IO monad).
 | 
						|
 | 
						|
** hledger 0.28
 | 
						|
*** balance
 | 
						|
   * output CSV item amounts on one line #336
 | 
						|
 | 
						|
*** register
 | 
						|
   * fix sorting regression with --date2 (#326)
 | 
						|
 | 
						|
*** stats
 | 
						|
   * fixed an issue with ordering of include files ?
 | 
						|
 | 
						|
** hledger-ui 0.28
 | 
						|
  * add vi-style movement keys, use ? for help (#357)
 | 
						|
  * basic manual integration
 | 
						|
  * E key runs editor, jumping to current txn or error location (emacs/vi)
 | 
						|
      The E key (on all screens) edits the journal file using
 | 
						|
      $HLEDGER_UI_EDITOR or $EDITOR or a default (emacsclient -a "" -nw).
 | 
						|
  * flat mode affects register too; doc updates
 | 
						|
  * at depth 0 call account "All" (and fix register)
 | 
						|
  * 0 now limits depth to 0 instead of resetting it
 | 
						|
  * briefer on-screen help, and a more detailed help dialog
 | 
						|
  * a key runs the addcommand
 | 
						|
  * ESC key cancels minibuffer/help or clears filter and jumps to top
 | 
						|
  * / key sets the filter query; backspace/delete clears it
 | 
						|
      I was planning to use this for search, but I can't help it, my hands
 | 
						|
      want to use / to adjust the filter.
 | 
						|
  * U key shows only uncleared transactions/postings
 | 
						|
  * accounts, register: Z key toggles zero items (--empty), and they are shown by default
 | 
						|
      -E/--empty is now the default for hledger-ui, so accounts with 0 balance
 | 
						|
      and transactions posting 0 change are shown by default.  The Z key
 | 
						|
      toggles this, entering "nonzero" mode which hides zero items.
 | 
						|
  * accounts, register: R key toggles --real
 | 
						|
  * register transactions are filtered by realness and status (#354)
 | 
						|
 | 
						|
      Two fixes for the account transactions report when --real/--cleared/real:/status: 
 | 
						|
      are in effect, affecting hledger-ui and hledger-web:
 | 
						|
    
 | 
						|
     1. exclude transactions which affect the current account via an excluded posting type.
 | 
						|
         Eg when --real is in effect, a transaction posting to the current account with only
 | 
						|
         virtual postings will not appear in the report.
 | 
						|
    
 | 
						|
     2. when showing historical balances, don't count excluded posting types in the
 | 
						|
         starting balance. Eg with --real, the starting balance will be the sum of only the
 | 
						|
         non-virtual prior postings.
 | 
						|
    
 | 
						|
     This is complicated and there might be some ways to confuse it still, causing
 | 
						|
     wrongly included/excluded transactions or wrong historical balances/running totals
 | 
						|
     (transactions with both real and virtual postings to the current account, perhaps ?)
 | 
						|
  * ui, web: when reloading a journal, keep aliases and pivot in effect
 | 
						|
  * preserve --ignore-assertions & flags on reload
 | 
						|
  * switch to the quicker-building microlens
 | 
						|
 | 
						|
** hledger-web 0.28
 | 
						|
  * update wai-handler-launch for better startup (fixes #226)
 | 
						|
  * show a proper not found page on 404
 | 
						|
  * focus the first field after clicking add a transaction (fixes #338)
 | 
						|
  * fix the add a transaction link's tooltip
 | 
						|
  * preserve initial command-line query when journal file is changed (#314)
 | 
						|
    The initial query specified by command line arguments is now preserved
 | 
						|
    when the journal is reloaded. This does not appear in the web UI, it's
 | 
						|
    like an invisible extra filter.
 | 
						|
  * leave date field blank, avoid problems with tab clearing it (#322)
 | 
						|
  * exit if something is already using the specified port (#226)
 | 
						|
  * don't open a browser page until the app is ready (#226)
 | 
						|
  * Terminate the server thread more carefully on exit, eg on control-C
 | 
						|
    in GHCI. May prevent stray background threads on windows.
 | 
						|
  * show the sidebar by default (#310)
 | 
						|
  * after following a link to a transaction, highlight it (Thomas R. Koll)
 | 
						|
  * use numeric id instead of date for linking to transactions #308 (Thomas R. Koll)
 | 
						|
  * misc. HTML/CSS/file cleanups/fixes (Thomas R. Koll)
 | 
						|
 | 
						|
** hledger-api 0.28
 | 
						|
  * add a web API server with examples (#316)
 | 
						|
  * start an AngularJS API client app (#316) (Thomas R. Koll)
 | 
						|
 | 
						|
* notes
 | 
						|
release commits by time
 | 
						|
git ll 0.27..
 | 
						|
release commits by component:
 | 
						|
git ll 0.27.. | sort -k3 -f, sort --reverse each part
 |