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
 |