;doc: changelogs

This commit is contained in:
Simon Michael 2025-12-04 19:49:33 -10:00
parent 2f18c85879
commit 42b0f4a66f
5 changed files with 55 additions and 319 deletions

View File

@ -18,7 +18,7 @@ General changes in the hledger project.
For package-specific changes, see the hledger package changelogs.
# fc85fa26
# 2f18c858
Docs updated
@ -38,12 +38,11 @@ Docs updated
- ROADMAP
- tldr/README
Website
Infrastructure/Misc
- add performance tests, logged to perf.log, run by just perftest
- bump stack snapshots
- Dockerfile fixed (probably)
- drop the hledger-install script
- just changelogs* update
- just docupdatediag
@ -53,8 +52,15 @@ Infrastructure/Misc
- just releasediag update
- just rels-major
- just site-restart
- just: devtag-push: simplify
- just: ghrel-bin-upload
- just: manuals, manuals-site
- just: reltags: cleanup
- just: ver, majorver
- Justfile: less safari dependence
- Justfile reorg, cleanups
- release script updates
- Shake: drop mandates target, update manual dates automatically
- Shake manuals: more contributor instructions in the header comment [hledger_site#140]
- stack92: add valid hashtables version
- stack94: add valid hashtables version

View File

@ -17,51 +17,20 @@ API/developer-ish changes in hledger-lib.
For user-visible changes, see the hledger package changelog.
# fc85fa26
- ;doc: add the 1.50.3 changelogs
- dev: balanceTransaction -> balanceSingleTransaction
- imp:lib:Hledger.Read: safer defaultJournal* functions
- fix!: error if LEDGER_FILE points to a nonexistent file [#2485]
Avoiding potentially confusing silent fallback. Also,
- Drop support for Ledger's legacy LEDGER environment variable;
we now support only LEDGER_FILE, for simplicity.
- Clarify the behaviour, eg when a glob pattern matches multiple files
or when the value is empty.
- fix:journal: repair 1.50's journal reading slowness [#2493]
Since 1.50, sourceFilePath, which does IO operations, was being called for every item in the journal.
On my machine this was causing a ~40% slowdown,
but probably it could be more depending on storage system.
Now it's once again called only once per include directive.
Speed seems slightly better now than 1.43 for some reason
(eg: 13k txns/s -> 8k txns/s -> 14k txns/s).
- ;doc: update embedded manuals
- ;doc:changelogs
# 2f18c858
Breaking changes
Fixes
- Hledger.Data.Balancing: balanceTransaction -> balanceSingleTransaction
- Hledger.Utils.IO:
- inputToHandle -> textToHandle; set utf8 not utf8_bom
- readHandlePortably, readHandlePortably' -> hGetContentsPortably
Improvements
- Hledger.Utils.String:
quoteForCommandLine now quotes some additional problem characters, and no longer quotes "7".
[#2468]
- Hledger.Utils.IO:
- inputToHandle -> textToHandle; set utf8 not utf8_bom
- readHandlePortably, readHandlePortably' -> hGetContentsPortably
# 1.50.4 2025-12-04

View File

@ -23,53 +23,13 @@ User-visible changes in hledger-ui.
See also the hledger changelog.
# fc85fa26
- ;doc: add the 1.50.3 changelogs
- imp:cli,ui,web: always build with -threaded [#2495]
It's required for runPager and presumably for the web server among
other things. The old "threaded" build flag has been dropped.
- fix:pkg: make threaded (and dev and library-only) build flags manual [#2495]
The threaded runtime is required at least for hledger's pager output,
and probably for other things. It's controlled by the "threaded" build
flag for some historical reason. Now, that flag is marked as manual,
so that it can no longer be toggled by cabal. (Probably the build flag
should be dropped, that can be tried later.)
Related: Debian bug #1120833, causing an unusable hledger-1.50.2 package.
- ;doc: update embedded manuals
- ;doc:changelogs
Breaking changes
Fixes
- Re-check balance assertions properly when --pivot is used.
When hledger-ui is started with --pivot, re-enabling balance
assertions with the I key now does a full journal reload, to check
balance assertions accurately. It means that in pivot mode, the I key
can also show other data changes (as if you pressed the g key).
[#2451]
- Watch mode now detects changes made by editors that overwrite files (like VS Code).
(Caleb Maclennan)
Features
# 2f18c858
Improvements
- Allow brick 2.10, vty 6.5.
Docs
API
- Uses hledger 1.51.
# 1.50.4 2025-12-04

View File

@ -23,43 +23,11 @@ User-visible changes in hledger-web.
See also the hledger changelog.
# fc85fa26
- ;doc: add the 1.50.3 changelogs
- dev: balanceTransaction -> balanceSingleTransaction
- imp:cli,ui,web: always build with -threaded [#2495]
It's required for runPager and presumably for the web server among
other things. The old "threaded" build flag has been dropped.
- fix:pkg: make threaded (and dev and library-only) build flags manual [#2495]
The threaded runtime is required at least for hledger's pager output,
and probably for other things. It's controlled by the "threaded" build
flag for some historical reason. Now, that flag is marked as manual,
so that it can no longer be toggled by cabal. (Probably the build flag
should be dropped, that can be tried later.)
Related: Debian bug #1120833, causing an unusable hledger-1.50.2 package.
- ;doc: update embedded manuals
- ;doc:changelogs
Breaking changes
Fixes
Features
# 2f18c858
Improvements
Docs
API
- Uses hledger 1.51.
# 1.50.4 2025-12-04

View File

@ -26,236 +26,69 @@ API
User-visible changes in the hledger command line tool and library.
# fc85fa26
- pkg:Dockerfile: a likely fix, not tested
- ;dev: add performance tests, logging to perf.log, run by just perftest
- ;doc: update embedded manuals
- ;doc: update command docs
- imp:stats: one-line mode; fix -o; doc updates
The new -1 flag prints a single line of output in machine-friendly
tab-separated format, including the program version, journal file
name, and performance stats.
Also -o now redirects all output, including the performance stats.
- ;doc:csv: CSV fields and hledger fields: edits
- ;doc:csv: CSV fields and hledger fields: edits
- ;doc:csv: Regular expressions in CSV rules: edits
- ;doc:csv: Regular expressions in CSV rules: edits
- ;doc:csv: Regular expressions in CSV rules
- ;doc:csv: CSV fields and hledger fields
- ;doc: update embedded manuals
- ;doc: update command docs
- ;dev: update internal error message
- fix:add: clean up typos after an over-eager search-replace
- ;doc: add the 1.50.3 changelogs
- dev:add: refactor, simplify names
- dev: balanceTransaction -> balanceSingleTransaction
- ;dev:test:errors: make csvnoinclude test more robust
It was failing on github's machines.
- ;dev:add: add missing test file
- ;dev:test:errors: readme
- ;doc: Setting LEDGER_FILE: update
- ;dev:tests:errors: update readme, tests
- imp:setup: tidier output for missing LEDGER_FILE or default file
- fix!: error if LEDGER_FILE points to a nonexistent file [#2485]
Avoiding potentially confusing silent fallback. Also,
- Drop support for Ledger's legacy LEDGER environment variable;
we now support only LEDGER_FILE, for simplicity.
- Clarify the behaviour, eg when a glob pattern matches multiple files
or when the value is empty.
- ;doc:add: edits
- ;doc:add: now balance assignment adding, as a separate commit
- ;doc:add: don't mention balance assignment adding yet
It doesn't really belong in the upcoming minor release; but it got
committed along with a fix which does.
- fix:add: check balance assertions more accurately; allow balance assignments [#2478]
Balance assertions are now checked more accurately, with awareness of
how everything is ordered in the journal.
Also, it's now possible to add balance assignments.
- imp:cli,ui,web: always build with -threaded [#2495]
It's required for runPager and presumably for the web server among
other things. The old "threaded" build flag has been dropped.
- fix:pkg: make threaded (and dev and library-only) build flags manual [#2495]
The threaded runtime is required at least for hledger's pager output,
and probably for other things. It's controlled by the "threaded" build
flag for some historical reason. Now, that flag is marked as manual,
so that it can no longer be toggled by cabal. (Probably the build flag
should be dropped, that can be tried later.)
Related: Debian bug #1120833, causing an unusable hledger-1.50.2 package.
- ;doc:csv:if: link skip, end more clearly
- ;doc:print: note another way print can disrupt journal readability
(same-day balance assertions)
- ;doc:add: balance assertions/assignments: edits [#2494]
- ;doc:add: balance assertions/assignments: clarify, fix [#2494]
- ;doc:csv:source: wording
- ;doc:areg: edits
- ;doc:areg: formatting
- ;doc:check: edits, correction
- imp: Show parent accounts in tree mode for context (samahri)
- fix: html: Nested tables resulting in broken HTML on export (Joschua Kesper)
A HTML export results in a table which has a stylesheet and another table
nested inside. This is not valid HTML and gets auto corrected by closing the
first table and opening another table. The result is the heading of the table
can expand further than the remaining table.
This results in a few notable changes:
- The date is in a far bigger cell and it's very noticeable it's centered compared to the amounts
(we may want to right align the date, though I don't have any particular thoughts about this)
- We no longer have two consecutive lines with black background and the start
- The table is as big as the heading (+ the default left margin)
- Summary: ;doc:Value reporting: edits
- Summary: ;doc:Value reporting: edits
- ;doc:Value reporting: more advice, examples for COMM
- ;doc:Value reporting: warn about -V, emphasise -X
- ;doc:check: edit
- ;doc:check: edit
- ;doc:check: edit
- ;doc: update embedded manuals
- ;fix:check:doc: drop obsolete note about transaction balancing
- ;doc:argument files: edits
- ;doc:argument files: edits
- ;doc:argument files: corrections
- ;fix:close:doc:customisation: edit [#2492]
- ;fix:close:doc:customisation: edit [#2492]
- ;fix:close:doc:customisation: clarify [#2492]
- ;doc:depth: rewrite, note combining issue
- ;doc:CHANGES, relnotes:hledger 1.33: fix typo
- ;doc: Setting LEDGER_FILE: rewrite, new windows procedures
- ;doc: demote COMMON TASKS subheadings
- ;docs:manual: add info about the -c command line option in the commodity directy section (ooker)
- ;imp:setup: accounts of all types wording
- ;doc:changelogs
# 2f18c858
Breaking changes
Fixes
- Periodic reports involving dates 25 quadrillion years in the future
(on 64 bit machines; or 5 million years on 32 bit machines) were
showing wrong results. This was a regression in 1.50, now fixed.
(Simon Michael, [#2479])
- In `hledger check accounts` failure messages, non-ascii account names are no longer garbled.
This regressed in 1.27 or so.
[#2469]
- HTML output no longer contains invalid nested tables (Joschua Kesper). This may cause some visual changes, hopefully all for the better.
- `stats`: `-o` now redirects all output, including the performance stats.
Features
- `commodities`, `payees` and `tags` commands now have a `--find` mode
for finding the best match, like `accounts`.
- `commodities`, `payees` and `tags` commands now have a `--find` mode for finding the best match (like the `accounts` command).
- `stats`: A new `-1` flag prints a single line of output in machine-friendly tab-separated format, including the program version, journal file name, and performance stats.
Improvements
- `print`: rename --location to --locations for consistency with `accounts`.
(--location still works.)
- `accounts`: rename --positions to --locations for consistency with `print`.
(--positions still works, as a hidden deprecated flag.)
- Command line arguments being passed to addons no longer require extra escaping.
(Caleb Maclennan)
- Report robustness has been improved through internal refactoring, preventing some possible error messages.
(Stephen Morgan, Simon Michael)
- `hledger --pivot=type` tag now normalises its values to their short spelling (`A` instead of `Assets`, etc).
- `hledger accounts --types` no longer shows value-less type tags; untyped accounts are shown without a `type` tag.
- In journal format, an empty `{}` pair is now allowed in amounts, as in Ledger/Beancount (and ignored).
- In journal format, an empty `{}` pair is now allowed (and ignored) in amounts, slightly improving Ledger/Beancount compatibility.
- `accounts` in `--tree` mode, when showing a subset of accounts, now shows parent accounts for context, like the `balance` command.
(Sam Almahri, [#2427])
- `accounts --types` no longer shows value-less type tags; untyped accounts are shown without a `type` tag.
- When pivoting on account type with `--pivot=type`, account types will be normalised to their short spelling (`A` instead of `Assets`, etc).
- `accounts`: the `--positions` flag has been renamed to `--locations`.
- `print`: the `--location` flag has been renamed to `--locations`.
- `setup`: tidier output for missing LEDGER_FILE or default file; wording improvements
Docs
- aregister: clarify arguments
- Account names: rewrite, emphasise the two space delimiter
- accounts: improve/sync options order
- add: balance assertions/assignments: clarify, fix [#2494]
- aregister: formatting
- aregister: clarify arguments
- argument files: corrections
- check: drop obsolete note about transaction balancing
- check: edits, correction
- close: customisation: clarify [#2492]
- commodity directive: add info about the -c command line option (ooker)
- COMMON TASKS: demote subheadings
- csv: new "CSV fields and hledger fields" section
- csv: new "Regular expressions in CSV rules" section
- csv: link the `if`-specific `skip` and `end` ruels more clearly
- depth: rewrite, note combining issue
- print: clarify amount styling; note more parseability breakers
- print: note another way print can disrupt journal readability (same-day balance assertions)
- rename Editor configuration -> Editors
- Setting LEDGER_FILE: rewrite, new windows procedures
- Special characters: rewrite (Simon Michael, Caleb Maclennan, [#2468])
- Tags: rewrite [hledger_site#141]
- Account names: rewrite, emphasise the two space delimiter
- rename Editor configuration -> Editors
- Value reporting: more advice, examples for COMM
- Value reporting: warn about -V, emphasise -X
Examples
- examples: organise/start the CSV rules library
- Organise/rename examples/csv/ as the [CSV rules library](https://github.com/simonmichael/hledger/tree/master/examples/csv)
Scripts/addons
- bin: hledger-check-buynothing
- bin: sortandmergepostings: Overhaul for more robust determinism (Caleb Maclennan)
- `hledger-check-buynothing`: check Buy Nothing Day compliance
- `hledgerj1`: example of a wrapper for reading a custom data format
- `sortandmergepostings`: Overhaul for more robust determinism (Caleb Maclennan)
- Avoids non-deterministic flip-flopping when the alphabetical account sort has multiple commodities
- Sorts postings commodities so commodities are in the same order across transactions
- Sorts postings with matching commodity by posting amount
- scripts: hledgerj1: example of a wrapper reading a custom format
API
@ -679,7 +512,7 @@ Docs
- The hledger-print-location script, which shows transactions' file positions,
is now built in to `print` as the `--location` flag.
(Sam Salmahri, [#2368])
(Sam Almahri, [#2368])
## Improvements