Commit Graph

14165 Commits

Author SHA1 Message Date
Simon Michael
9849f196cb fix:timeclock: process in parse order; fully support overlapping sessions [#2417]
We no longer attempt to process timeclock entries in time order - that
was a wrong requirement, probably given by me, that can't work.  Now
we just process them in parse order. This plus a little tweaking of
error checking fixes several ordering bugs with overlapping sessions
and also allows same-named overlapping sessions.

More cleanup will follow. More testing might show that --old-timeclock
is no longer needed.
2025-09-01 08:27:08 +01:00
Simon Michael
7ac0fa1aaa dev:TimeclockReader, Timeclock: refactor/reindent [#2417] 2025-09-01 08:27:01 +01:00
Simon Michael
a2710a5c2b dev:timeclock: make --old-timeclock parser call itself, not new parser [#2417]
There was no known visible bug, but this seems more correct.
2025-09-01 08:26:44 +01:00
Simon Michael
c6140c1ef6 ;tools: just functest: hide successes again 2025-09-01 08:26:44 +01:00
Simon Michael
e37caf0f27 imp:journal: better error when attempting to include a rules file 2025-09-01 08:26:44 +01:00
Simon Michael
efe1d11edb fix:timeclock: --old-timeclock also affects included files [#2417]
This required changing the Reader type and passing InputOpts down to
journal's include directive parser.
2025-09-01 08:26:44 +01:00
Simon Michael
8bd9d92981 imp:timeclock: improve overlapping sessions error [#2417] 2025-09-01 06:03:26 +01:00
Simon Michael
04e6c140c0 imp:timeclock: more informative error output for clashing sessions [#2417] 2025-08-31 17:35:13 +01:00
Simon Michael
539a876e7a ;dev:Timeclock: indentation 2025-08-31 16:20:58 +01:00
Simon Michael
e6dbe5d231 fix:timeclock: sessions can begin at a same-named session's end time
Now we process entries in a more careful order: time, then parse
order, like journal format. This fixes the original issue and another
one mentioned at #2417.
2025-08-31 12:01:04 +01:00
Simon Michael
5a3e34cc55 imp:timeclock: syntax is more robust and featureful
The default timeclock parser (ie when not using --old-timeclock) has
the following changes, related to issues such as
[#2141], [#2365], [#2400], [#2417]:

- semicolon now always starts a comment; timeclock account names can't include semicolons
  (though journal account names still can)
- clock-in and clock-out entries now have different syntax
- clock-ins now require an account name
- clock-outs now can have a comment and tags
- the doc has been rewritten, and now mentions the --old-timeclock flag

- lib: accountnamep and modifiedaccountnamep now take a flag to allow semicolons or not
2025-08-31 10:58:37 +01:00
Simon Michael
0d0f2697de ;doc:timeclock: fix legacy anchor 2025-08-31 09:20:30 +01:00
Simon Michael
252f4bf13c ;dev:timeclock: tests cleanup 2025-08-31 09:20:30 +01:00
Stephen Morgan
db6714a120 fix: budget: Respect --summary-only flag. (#2443)
Budget reports will now respect the --summary-only flag.
2025-08-30 20:17:31 +01:00
Simon Michael
605444923e ;bin:simplefincsv: reorder fields, move ids to the end 2025-08-28 21:38:38 +01:00
Simon Michael
f2d2135ed8 ;bin:simplefincsv: clean up excessive spaces 2025-08-28 21:38:38 +01:00
Simon Michael
91b24df4b2 ;doc:csv:source: add data command examples 2025-08-28 21:38:38 +01:00
Simon Michael
a5ec1cb888 ;bin: paypal*, simplefin*: rename, improve UX, update to 1.1 2025-08-28 21:38:38 +01:00
Simon Michael
7de0c0ac7a imp:import: show briefer no txns output, just file names 2025-08-28 21:38:38 +01:00
Simon Michael
97899f9a9b feat:csv: support data generating scripts
and rewrite the rules reader.
2025-08-28 21:38:38 +01:00
Simon Michael
c7878e88da lib:Hledger.Utils.IO: add warnIO 2025-08-28 21:38:38 +01:00
Simon Michael
cffee7f546 imp:import: avoid extra newline after output 2025-08-28 21:38:38 +01:00
Simon Michael
b22f94007f dev: source, archive, rules reader: improve docs 2025-08-28 21:38:38 +01:00
Simon Michael
e796a00fc4 dev:import: drop archiving of original data
just archive clean data
2025-08-28 21:38:38 +01:00
Simon Michael
b64ddfe813 dev:rules reader: drop "fall back to reading latest archived" 2025-08-28 21:38:38 +01:00
Simon Michael
c60ec90756 dev:import: improve buggy detection of import command 2025-08-28 21:38:38 +01:00
Simon Michael
c515fedf70 feat:csv: support data cleaning scripts 2025-08-28 21:38:38 +01:00
Simon Michael
c3e85ce9f7 dev: valuation tests cleanup 2025-08-28 17:26:42 +01:00
Simon Michael
c930fd0952 imp:end value reports: future P directives don't influence report end/valuation date [#2445]
In end-value reports with unspecified end date, a market price later
than the latest transaction can extend the default report end date and
valuation date. Now, only market prices on or before "today" can do this;
market price declarations dated in the future will be ignored.

Report span and valuation date calculations have been clarified.
2025-08-28 17:26:42 +01:00
Simon Michael
4e52c7bd76 ;lib:spanExtend: improve doc 2025-08-28 17:26:42 +01:00
Simon Michael
5c6ea2f56e ;doc:valuation: drop mention of old hledger-ui bug 2025-08-28 17:26:42 +01:00
Simon Michael
ac7e2e931f ;doc:ISSUES: typo 2025-08-28 07:00:36 +01:00
Simon Michael
b64f7405dd ;doc:ISSUES: open issues link 2025-08-28 06:57:14 +01:00
Stephen Morgan
ef5c220690 fix: balance: Clip account names in generateMultiBalanceAccount, not before (#2434)
Previously accounts were clipped in getPostings, however compound
balance reports re-use the output of getPostings for the different
subreports. This caused a problem when clipping erased the information
needed to determine the account type, as would be used by e.g.
incomestatement.

Add some extra tests for --count.
2025-08-28 05:26:42 +01:00
Simon Michael
b5cb1d08d0 fix: add, commodities, diff: support the --conf and -n/--no-conf flags [#2446] 2025-08-26 14:01:48 +01:00
Simon Michael
a28c933677 ;doc: REGRESSIONS 2025-08-25 19:29:50 +01:00
Simon Michael
8951e11584 fix:import: don't erase .latest files when there are no new txns [#2444]
Fixes a regression caused by the #2125 fix.
2025-08-25 19:25:52 +01:00
Simon Michael
e2bb24e902 dev: make LatestDatesForFile showable 2025-08-25 19:24:38 +01:00
Simon Michael
a2a1124680 ;doc: update command docs 2025-08-24 09:02:49 +01:00
Simon Michael
4f4426dc24 ;doc: update embedded manuals 2025-08-24 09:01:04 +01:00
Simon Michael
4c1c44ce36 imp:cli: clearer help for -f, and the add and import commands
From euouae's irc feedback
2025-08-24 08:59:50 +01:00
Simon Michael
03262f3fff fix📟 don't use --mouse in default less options
Avoid an error on systems where less does not have mouse support.
2025-08-22 07:56:13 +01:00
Simon Michael
a4960649ad ;bin: readme: edits 2025-08-20 19:56:49 +01:00
Simon Michael
709471f164 ;bin: update readme 2025-08-20 19:54:45 +01:00
Simon Michael
54e711936f ;bin: helpers for downloading from simplefin.org, a bank aggregator 2025-08-20 19:48:06 +01:00
Simon Michael
bdf5e7d06e ;doc:import: use windows-compatible quotes in watchexec example 2025-08-15 04:13:15 +01:00
Simon Michael
cb1d6a71a6 dev:import:archive: fix bugs in new code
Too hard to rebase
2025-08-14 19:22:52 +01:00
Simon Michael
7dfe2d84e7 dev:import: fix debug message 2025-08-14 17:52:54 +01:00
Simon Michael
afdeaccd75 ;doc:csv: source, archive updates 2025-08-14 14:23:53 +01:00
Simon Michael
88b451d6eb imp: when source rule finds no files, read the latest archived 2025-08-14 14:23:53 +01:00