Simon Michael
729a8b81e0
;doc: update changelogs
2022-06-05 00:03:10 +01:00
Simon Michael
9833482c06
;doc: update manuals
2022-06-05 00:02:59 +01:00
Simon Michael
d27a581e0f
;doc: update changelogs
2022-06-04 11:28:59 +01:00
Stephen Morgan
9155d679fe
fix!: Revert "fix!: utf-8: Use with-utf8 to ensure all files are read and written with utf8 encoding. ( #1619 )"
...
This reverts commit e233f001c5 .
This would break at least some people's workflow. A lighter touch is
probably sufficient.
2022-06-01 09:35:18 +10:00
Simon Michael
1085a2a777
;doc: update changelogs
2022-05-29 08:05:33 -10:00
Simon Michael
2bce910904
;doc: update manuals
2022-05-25 11:35:47 -10:00
Simon Michael
6b174ae8a5
;doc: csv: update link
2022-05-25 11:35:33 -10:00
Simon Michael
2d581d7d4d
;doc: update CLI usage texts
2022-05-23 05:42:27 -10:00
Simon Michael
52210cd114
;doc: clarify 1.25 changelog about cash account detection
2022-05-23 05:40:01 -10:00
Simon Michael
43c0ca06c5
doc: cf: update cash account inference description for 1.25
2022-05-23 05:28:27 -10:00
Simon Michael
307f723b0a
lib: simpler, more consistent names for check functions
...
API changes:
journalCheckAccountsDeclared
journalCheckCommoditiesDeclared
journalCheckPayeesDeclared
->
journalCheckAccounts
journalCheckCommodities
journalCheckPayees
2022-05-21 18:29:13 -10:00
Simon Michael
65e913b7c5
Merge pull request #1834 from Xitian9/utf8
...
Use with-utf8 and don't use Data.Text.IO.
2022-05-21 17:50:59 -10:00
Stephen Morgan
e233f001c5
fix!: utf-8: Use with-utf8 to ensure all files are read and written with utf8 encoding. ( #1619 )
...
May also fix #1154 , #1033 , #708 , #536 , #73 : testing is needed.
This aims to solve all problems where misconfigured locales lead to
parsers failing on utf8-encoded data. This should hopefully avoid
encoding issues, but since it fundamentally alters how encoding is dealt
with it may lead to unexpected outcomes. Widespread testing on a number
of different platforms would be useful.
2022-05-22 13:12:19 +10:00
Stephen Morgan
15a5d5d38b
Merge pull request #1814 from Xitian9/csverror
...
imp: csv: Give an error if unable to substitute csv templates. (#1803 )
2022-05-22 11:35:39 +10:00
Simon Michael
db26456e1c
imp: consolidate ordereddates check under Hledger.Read.Checks too
...
And remove the last vestiges of older more complex behaviour.
ordereddates now always checks all transactions in each file,
unaffected by a query. (But still affected by --date2).
2022-05-09 00:05:39 -10:00
Simon Michael
810a868c88
ref: consolidate most checks under Hledger.Read.Checks
...
and error message helpers in Hledger.Read.Error.
2022-05-09 00:04:33 -10:00
Simon Michael
74da8b80b8
;doc: hledger manual: fix help example
2022-05-05 22:59:44 -10:00
Simon Michael
ab62e44c5d
;doc: hledger manual: fix save frequently used options link
2022-05-05 22:42:16 -10:00
Simon Michael
d9d8a298ed
;dev: tests: errors: readme
2022-05-01 10:14:55 -10:00
Simon Michael
6f4a5830b2
dev: tests: errors: add missing test journal ( #1436 )
2022-04-25 02:56:59 -10:00
Simon Michael
a1c9aa4114
dev: tests: errors: update tests/readme ( #1436 )
2022-04-25 02:56:59 -10:00
Simon Michael
45981832a6
dev: tests: errors: generate more robust tests more robustly ( #1436 )
2022-04-25 02:56:59 -10:00
Simon Michael
1a08baccc4
doc: update errors status ( #1436 )
2022-04-25 02:56:59 -10:00
Simon Michael
a00dc04e0d
imp: check: uniqueleafnames: use the standard error format ( #1436 )
...
Hledger.Read.Common:
export makePostingErrorExcerpt
2022-04-25 02:56:59 -10:00
Simon Michael
7e45ab338f
imp: check: show column ranges properly ( #1436 )
2022-04-25 02:56:59 -10:00
Simon Michael
66d0beea5e
imp: check: ordereddates: use the standard error format ( #1436 )
...
Hledger.Read.Common:
export makeTransactionErrorExcerpt
2022-04-25 02:56:59 -10:00
Simon Michael
1ff0f76524
cli: generate/update tests and readme from error test journals
2022-04-25 02:56:59 -10:00
Simon Michael
1130ad1abd
doc: errors: update status ( #1436 )
2022-04-25 02:56:59 -10:00
Simon Michael
6ec0e05c42
imp: check: commodities: use the standard error format ( #1436 )
2022-04-25 02:56:59 -10:00
Simon Michael
cec1e8e3f1
doc: errors status update ( #1436 )
2022-04-25 02:56:59 -10:00
Simon Michael
f47d423a67
lib: error' now adds an Error: prefix
2022-04-25 02:56:59 -10:00
Simon Michael
0d232ed673
imp: check: exit with error' for consistent output
2022-04-25 02:56:59 -10:00
Jakob Schöttl
ae21ee5e00
Update bash completions
2022-04-17 14:48:09 -10:00
Simon Michael
183d8e6ef6
test: comment out failing test as intended
...
Fixes failing tests in master, which I had managed to merge because
of a ;-prefixed commit message.
2022-04-17 07:46:33 -10:00
Simon Michael
8801ee0085
;doc: errors: update
2022-04-15 16:03:22 -10:00
Simon Michael
6b7bc064d7
;doc: errors: update
2022-04-15 15:53:55 -10:00
Simon Michael
33d15df879
;doc: errors: update
2022-04-15 15:49:03 -10:00
Simon Michael
3123fe873a
;bs: disabled test for an account type detection bug ( #1858 )
2022-04-15 15:30:24 -10:00
Simon Michael
5ee1e1d62f
;doc: fixups suggested by afm
2022-04-15 15:07:17 -10:00
Simon Michael
133c54434a
;doc: changelogs
2022-04-14 13:59:03 -10:00
Simon Michael
8de85be658
;doc: update manuals
2022-04-14 12:39:18 -10:00
Simon Michael
9f8381426c
;doc: update CLI usage texts
2022-04-14 12:39:09 -10:00
Simon Michael
318ec0a701
doc: tags: move most docs after the flags, like some other commands
2022-04-14 12:37:13 -10:00
Simon Michael
5af224d534
fix: tags: also match accounts declared but not used ( #1857 )
...
By default, all account declarations and all transactions are searched;
but when there's a query involving transaction fields,
account declarations unrelated to the matched transactions are not searched.
added:
queryIsCode
queryIsTransactionRelated
2022-04-14 12:28:43 -10:00
Simon Michael
b82021e0b6
imp: accounts: demote --debug 1 output to a more appropriate 4
2022-04-14 10:58:31 -10:00
Simon Michael
7b4ab1e37a
ref: tags test
2022-04-14 10:58:31 -10:00
Stephen Morgan
8cc59df513
fix: Ensure date2 is used for journal valuation if requested. ( #1851 )
2022-04-14 07:27:17 -10:00
Simon Michael
f48ef6db83
doc: wording
2022-04-10 11:02:29 -10:00
Simon Michael
df8bfde04f
doc: --infer-market-prices is bad at guessing valuation commodity
2022-04-04 14:21:23 -10:00
Simon Michael
c185bfef58
doc: assertions: edit
2022-04-04 13:03:48 -10:00
Simon Michael
001f3f00a3
doc: clarify how assertions work with multiple files, auto postings
2022-04-04 12:46:42 -10:00
Stephen Morgan
c48d98c515
imp: csv: Substitute empty string if csv template fails. ( #1803 )
2022-03-29 18:03:33 +11:00
Simon Michael
db1818ac4a
imp: consistent ghc warnings
2022-03-26 08:27:29 -10:00
Simon Michael
5858bb7b6d
imp: ghc9.2: fix an incomplete-uni-pattern warning
2022-03-25 20:45:06 -10:00
Simon Michael
d9ecd1eb9d
imp: update to modern warning flags
2022-03-25 20:28:34 -10:00
Simon Michael
b3aff7a394
imp: add: avoid deprecated time function
2022-03-25 20:10:18 -10:00
Simon Michael
7092ef9a89
fix: commented test for #1849
2022-03-25 19:42:49 -10:00
Simon Michael
97e57c2cb5
imp: doc: clarify relative dates in periodic rules ( #1845 )
2022-03-25 16:44:57 -10:00
Simon Michael
9a8fb529f3
imp: add a test clarifying periodic txns with forecast ( #1845 )
2022-03-25 16:30:35 -10:00
Stephen Morgan
31c7c5d1ca
fix: Clean up build failures due to redundant imports and duplicate
...
function.
2022-03-26 11:37:32 +11:00
Stephen Morgan
603b2e9f09
ref: Use ExceptT String IO a instead of IO (Either String a).
...
This increases composability and avoids some ugly case handling. We
re-export runExceptT in Hledger.Read.
The final return types of the following functions has been changed from
IO (Either String a) to ExceptT String IO a. If this causes a problem,
you can get the old behaviour by calling runExceptT on the output:
readJournal, readJournalFiles, readJournalFile
Or, you can use the easy functions readJournal', readJournalFiles', and
readJournalFile', which assume default options and return in the IO
monad.
2022-03-25 14:23:27 -10:00
Simon Michael
4eeb646912
test: errors: doc updates
2022-03-20 07:21:31 -10:00
Simon Michael
5281c5d647
imp: allow pivoting on 'status' also
2022-03-18 21:38:31 -10:00
Simon Michael
2ed4201e36
test: errors: doc updates
2022-03-18 12:47:12 -10:00
Simon Michael
10160351e9
test: errors: doc updates
2022-03-18 12:32:54 -10:00
Simon Michael
81c7f91202
test: errors: doc updates
2022-03-18 12:31:28 -10:00
Simon Michael
726978d1c5
test: errors: doc updates
2022-03-18 12:22:36 -10:00
Simon Michael
78da46c789
test: errors: doc updates
2022-03-18 12:10:36 -10:00
Simon Michael
d3cabb5494
test: errors: doc updates
2022-03-18 12:01:50 -10:00
Simon Michael
25e706eca0
test: errors: doc updates
2022-03-18 11:03:21 -10:00
Simon Michael
8729fc0c47
test: errors: note versions
2022-03-18 09:02:06 -10:00
Simon Michael
512ebdfd5f
test: errors: fix link, update summary
2022-03-18 08:50:20 -10:00
Simon Michael
eaa6e202f3
test: errors: show current errors in doc, generated by showall
2022-03-18 08:25:58 -10:00
Simon Michael
f7625343f6
test: errors: rename tests like check command's checks
2022-03-18 07:16:04 -10:00
Simon Michael
2b2d643333
test: errors: make tests runnable
2022-03-18 06:59:33 -10:00
Simon Michael
3775b97f04
test: errors: document
2022-03-17 19:44:47 -10:00
Simon Michael
6510ba3c95
test: examples for reproducing journal errors
2022-03-17 17:38:26 -10:00
Stephen Morgan
e6bf04fce3
fix: aliases: Make sure we can escape forward slashes in account
...
aliases, but otherwise the regular expression handler handles escapes.
2022-03-16 19:01:03 -10:00
Stephen Morgan
cbdd86f4dc
imp: reg: areg: Align to first 1000 postings by default, rather than 100.
...
This has the same performance characteristics for a big decrease in alignment
issues. 1000 postings seems to still put it under the memory bottleneck.
2022-03-11 13:25:38 -10:00
Simon Michael
129f37cfe6
reg: tweak --align-all help ( #1839 )
2022-03-11 07:16:55 -10:00
Simon Michael
64d1927384
reg: document --align-all ( #1839 )
2022-03-11 07:16:33 -10:00
Stephen Morgan
c0cc9e73c1
dev: reg: areg: Be more clever about register and aregister alignment.
...
When rendering register or aregister reports, calculate the amount /
balance width based on the first 100 items, and start rendering in that
way. If you encounter a longer one, update and continue rendering. This
will result in adjustment of column width for long reports, but allows
us to save a lot more performant/efficient.
This can be disabled with the new --align-all flag.
We also only render each amount once, rather than twice as before, by
storing the rendered amount in a tuple.
2022-03-11 06:47:48 -10:00
Stephen Morgan
cbc985d411
dev: reg: areg: Speed up reg and areg by only aligning to first 1000 items.
2022-03-10 17:42:04 -10:00
Stephen Morgan
4a80551406
fix: price: Make sure inferred market prices have the correct sign with
...
total prices. (#1813 )
Also reduce duplication for inferring market prices (previously it was
done separately in both Hledger.Data.Journal and
Hledger.Cli.Commands.Prices), and remove *TotalPriceToUnitPrice
functions, since unit prices cannot represent all total prices.
Add a helper function numDigitsInt to get the number of digits in an
integer, which has a surprising number of ways to get it wrong.
2022-03-10 17:34:49 -10:00
Simon Michael
25e3cca2e1
doc: regex aliases update ( #1832 )
2022-03-10 17:13:34 -10:00
Stephen Morgan
a65e64115a
fix: alias: Allow escaped characters in regular expression aliases. ( #982 )
2022-03-10 17:00:03 -10:00
Stephen Morgan
19ed6d3f00
cln!: sourcepos: Use megaparsec-supplied sourcePosPretty.
...
Change showSourcePos to sourcePosPretty, and showSourcePosPair to
sourcePosPairPretty.
2022-03-10 16:56:28 -10:00
Simon Michael
f0e00b3a43
;doc: update changelogs
2022-03-10 16:55:46 -10:00
Simon Michael
460a1fc209
;doc: update manuals
2022-03-07 09:33:11 -10:00
Simon Michael
2b978869dd
doc: journal: clarify == assertions
2022-03-07 08:49:03 -10:00
Simon Michael
af7a5f98e3
;cabal: update cabal files
2022-03-05 13:24:48 -10:00
Simon Michael
5aab2cbf40
;pkg: bump version to 1.25.99
2022-03-05 13:24:48 -10:00
Simon Michael
5707abbd69
doc: changelog tweaks
2022-03-04 20:25:42 -10:00
Simon Michael
e4ca7187fe
doc: finalise changelogs for 1.25
2022-03-04 17:51:59 -10:00
Simon Michael
2ee914bdc7
;doc: update changelogs
2022-03-04 17:04:50 -10:00
Stephen Morgan
2f47ae05c6
fix: csv: Allow unicode in field references for csv. ( #1809 )
2022-02-06 14:16:17 -10:00
Simon Michael
71f9c7985f
doc: changelog updates from release branch
2022-02-05 22:09:20 -10:00
Simon Michael
ef4da90538
;doc: update changelogs
2022-02-05 14:57:53 -10:00
Simon Michael
5076389161
;doc: account types
2022-02-03 16:38:22 -10:00
Simon Michael
dea13e08ab
;doc: account account types tweak ( #1822 )
2022-02-03 16:27:19 -10:00
Simon Michael
8ef82f5cd8
;doc: account type updates ( #1822 )
2022-02-03 15:41:12 -10:00
Simon Michael
4ec441925a
;doc: account type updates ( #1822 )
2022-02-03 15:37:23 -10:00
Stephen Morgan
31fdcdb8ef
!imp: type: Change the default account inference for Cash accounts to only match
...
^assets?(:.+)?:(cash|bank|che(ck|que?)(ing)?|savings?|current)(:|$)
This should have no effect outside the cash report.
The rule for auto-detecting "Cash" (liquid assets) from account names
has changed in this release - see [Account types]. This is to simplify
how account types are detected and configured. If you use the cashflow
report without explicitly declaring accounts as Cash, you might notice a
change, and might need to add explicit account type: tags.
2022-02-03 15:32:00 -10:00
Stephen Morgan
2e4cfccf1b
fix: types: Make sure type: query will correctly match subtypes, so
...
type:a will also match cash accounts, and type:e will also match
conversion accounts.
2022-02-03 15:32:00 -10:00
Stephen Morgan
73925ae965
fix: types: Ensure auto postings can match against and be matched by type: queries.
...
This requires checking parent accounts for any new accounts introduced by auto postings which do not exist in the original journal.
Also refactor journalFinalise to only call journalPostingsAddAccountTags once, and use fewer intermediate variables.
2022-02-03 15:32:00 -10:00
Stephen Morgan
a16c88b1b1
fix: Make sure cash and conversion account types are correctly
...
determined when there are no explicit declarations.
2022-02-03 15:32:00 -10:00
Simon Michael
4aa06d7920
;doc: account types: edits
2022-02-02 17:40:47 -10:00
Simon Michael
b96b6c406e
;doc: account types: rewrite/expand
2022-02-02 17:15:39 -10:00
Simon Michael
807717805a
feat: accounts: --types shows account types ( #1820 )
2022-02-01 18:06:19 -10:00
Simon Michael
dbbd300aa2
;dev: accounts: test cleanup
2022-02-01 18:03:46 -10:00
Simon Michael
0f8ede3038
;doc: document how aliases can break account types ( #1820 )
2022-02-01 14:47:30 -10:00
Simon Michael
cb040dbe29
imp: type: forgot the tests
2022-01-31 16:44:13 -10:00
Simon Michael
336c4a7b33
imp: cleaner error messages when parsing cli (less "user error")
2022-01-31 16:44:13 -10:00
Simon Michael
9c872c2d9c
imp: areg: clearer, more consistent error messages
2022-01-31 16:44:13 -10:00
Simon Michael
45127dc5f5
feat: new type: query for easy matching by account type
...
type:TYPES, where TYPES is any of the (case insensitive) letters
ALERXCV, matches accounts by their declared or inferred type.
(See https://hledger.org/hledger.html#account-types .)
This should work with most commands, eg:
hledger bal type:al
hledger reg type:x
API changes:
Journal has a new jaccounttypes map.
The journalAccountType lookup function makes it easy to check an account's type.
The journalTags and journalInheritedTags functions look up an account's tags.
Functions like journalFilterPostings and journalFilterTransactions,
and new matching functions matchesAccountExtra, matchesPostingExtra
and matchesTransactionExtra, use these to allow more powerful matching
that is aware of account types and tags.
2022-01-31 16:44:13 -10:00
Stephen Morgan
91441bad8f
test: Make sure --today is passed to --forecast tests so they keep
...
working.
2022-01-31 15:12:04 -10:00
Simon Michael
248ddf9378
dev: more thorough Journal anonymisation, and a note ( #1817 )
2022-01-30 09:47:52 -10:00
Simon Michael
3472c3cb6d
;dev: number anon tests
2022-01-30 09:47:52 -10:00
Simon Michael
3d57fa32c2
;doc: querying by tags, on accounts and generally ( #1817 )
2022-01-30 09:47:52 -10:00
Simon Michael
56be63e6f1
feat: queries can now match account tags ( #1817 )
...
Accounts, postings, and transactions can now all be filtered by the
tags in an account's declaration. In particular it's now possible to
more reliably select accounts by type, using their type: tag rather
than their name:
account myasset ; type:Asset
account myliability ; type:Liability
$ hledger accounts tag:type=^a
myasset
Accounts inherit tags from their parents.
API changes:
A finalised Journal has a new jdeclaredaccounttags field
for easy lookup of account tags.
Query.matchesTaggedAccount is a tag-aware version of matchesAccount.
2022-01-30 09:47:52 -10:00
Simon Michael
2f48307c63
dev: query-tag.test -> format 3
2022-01-30 09:47:52 -10:00
Stephen Morgan
df4949ad1a
imp!: journal: Remove deprecated account type code syntax from account
...
directives.
Previously, you declare an account type with the following format:
account assets A
This has been deprecated since 1.13, and should now be declared with one
of:
account assets ; type:A
account assets ; type:asset
2022-01-28 12:38:38 -10:00
Stephen Morgan
1d9be4c2de
cln: print, close: Check the show_costs_ option instead of directly
...
checking the --show-costs flag.
2022-01-26 08:07:11 -10:00
Stephen Morgan
ba0eec9132
ref: Return the interval split in reportSpan, to reduce the number
...
of different places we call splitSpan and ease refactoring.
2022-01-26 08:05:37 -10:00
Stephen Morgan
2a51b6e9a4
fix: layout: Commodity symbols should be omitted in --layout=bare when
...
all amounts are zero. (#1789 )
2022-01-26 07:58:14 -10:00
Stephen Morgan
55a022a941
fix: strict: Make sure forecast transactions and auto postings are
...
checked with --strict. (#1810 )
2022-01-26 07:57:13 -10:00
Patrik Keller
2cf4c221de
Manual: clarify reference from --strict to check
2022-01-26 07:45:13 -10:00
Simon Michael
e16fa51dd5
imp: nicer invalid balance assignment errors (fix tests)
2022-01-21 17:45:23 -10:00
Stephen Morgan
8cd9e81c34
fix: budget: Make sure boring parents of unbudgeted accounts are not
...
elided if they have a budget. (#1800 )
This only affects calls with --budget and -E, but not with --no-elide.
2022-01-21 09:11:04 -10:00
Simon Michael
d9b0184720
;doc: changeslogs: edit
2022-01-21 08:38:59 -10:00
Simon Michael
41b68714ff
;doc: update manuals
2022-01-21 08:32:29 -10:00
Simon Michael
fbf826a813
;doc: update CLI usage texts
2022-01-21 08:32:29 -10:00
Simon Michael
8daef36c29
;doc: update changelogs
2022-01-21 08:32:29 -10:00
Simon Michael
1716a3e55c
;doc: roi: dear lord fix links again
2022-01-21 08:20:05 -10:00
Simon Michael
209a726e26
;doc: roi: make links useful in plain text docs
...
And update how-to url.
2022-01-21 08:17:55 -10:00
Simon Michael
beeb7b157c
;doc: roi: fix link
2022-01-21 08:13:26 -10:00
Simon Michael
bf2ac4f18b
;doc: roi: formatting
2022-01-21 08:13:26 -10:00
Stephen Morgan
57d055b643
fix: cost: Add inferred equity postings during journal finalisation, so
...
they can be matched by queries.
2022-01-16 18:37:18 -10:00
Simon Michael
f7a3f510be
;doc: describe no-symbol commodity checking ( #1772 )
2022-01-16 08:24:30 -10:00
Stephen Morgan
5006e26995
imp: check: Do not check commodities for zero amounts with empty
...
commodity. (#1767 )
2022-01-16 08:11:02 -10:00
Simon Michael
dbcd235f9e
;doc: update manuals
2022-01-15 08:56:45 -10:00
Simon Michael
6e12be15df
;doc: update CLI usage texts
2022-01-15 08:56:45 -10:00
Simon Michael
9444e20c3d
;doc: update changelogs
2022-01-15 08:56:45 -10:00
Simon Michael
fb834777a6
;fix: doc: update help/help-feedback links ( #1807 )
2022-01-15 08:53:48 -10:00
Stephen Morgan
f13ac2812f
imp: smartdates: Simplify and generalise the SmartDate constructor and
...
parsers to allow for arbitrary numbers of periods in relative dates.
We now accept smart dates like “in 5 days, 5 weeks ahead, in -6 months, 2 quarters ago”.
2022-01-11 13:31:29 -10:00
Simon Michael
0e5ae2baac
;doc: update changelogs
2022-01-06 06:42:34 -10:00
Simon Michael
d82210cea9
;doc: update changelogs
2022-01-05 18:09:23 -10:00
Simon Michael
757c548c17
;doc: update changelogs
2022-01-05 08:12:44 -10:00
Simon Michael
d1bc3bbb32
;doc: update changelogs
2022-01-01 15:55:08 -10:00
Simon Michael
326b2309bc
;doc: csv: tweak
2021-12-30 09:22:57 -10:00
Dmitry Astapov
ce54fb8ae9
;roi: fixes #1791 (fix TWR when investment=0, several pnls per day)
2021-12-27 08:10:22 -10:00
Simon Michael
737ab13284
journal: doc updates for aliases corrupting account names ( #1788 )
2021-12-22 15:14:37 -10:00
Simon Michael
713f7eab65
journal: doc updates for aliases corrupting account names ( #1788 )
2021-12-22 15:08:01 -10:00
Simon Michael
9c173bc18b
journal: tests/docs for aliases corrupting account names ( #1788 )
2021-12-22 14:59:13 -10:00
Simon Michael
cfee37ab36
;doc: fix conversion & cost lists
2021-12-21 11:01:39 -10:00
Simon Michael
e92a266064
;doc: update manuals
2021-12-21 10:55:05 -10:00
Simon Michael
d10f3df27b
;doc: fix conversion & cost depth
2021-12-21 10:54:47 -10:00
Simon Michael
4bf0d76a1f
;doc: update manuals
2021-12-21 10:53:19 -10:00
Simon Michael
82cd81c066
doc: new CONVERSION & COST section after #1554
2021-12-21 10:50:13 -10:00
Stephen Morgan
8eedbbbe87
imp: cost: Generate totally balanced conversion postings for amounts with costs.
...
Introduce --infer-equity option which will generate conversion postings.
--cost will override --infer-equity.
This means there will no longer be unbalanced transactions, but will be
offsetting conversion postings to balance things out. For example.
2000-01-01
a 1 AAA @@ 2 BBB
b -2 BBB
When converting to cost, this is treated the same as before.
When used with --infer-equity, this is now treated as:
2000-01-01
a 1 AAA
equity:conversion:AAA-BBB:AAA -1 AAA
equity:conversion:AAA-BBB:BBB 2 BBB
b -2 BBB
There is a new account type, Conversion/V, which is a subtype of Equity/E.
The first account declared with this type, if any, is used as the base account
for inferred equity postings in conversion transactions, overriding the default
"equity:conversion".
API changes:
Costing has been changed to ConversionOp with three options:
NoConversionOp, ToCost, and InferEquity.
The first correspond to the previous NoCost and Cost options, while the
third corresponds to the --infer-equity flag. This converts transactions with costs
(one or more transaction prices) to transactions with equity:conversion postings.
It is in ConversionOp because converting to cost with -B/--cost and inferring conversion
equity postings with --infer-equity are mutually exclusive.
Correspondingly, the cost_ record of ReportOpts has been changed to
conversionop_.
This also removes show_costs_ option in ReportOpts, as its functionality
has been replaced by the richer cost_ option.
2021-12-21 10:50:13 -10:00
Simon Michael
5561eeb8a4
;doc: fix two unlinked urls
2021-12-17 10:00:19 -10:00
Simon Michael
c23808a163
;doc: queries: fix "rewriting accounts" links
2021-12-15 11:14:01 -10:00
Simon Michael
45db32b84f
;doc: update changelogs
2021-12-10 12:50:21 -10:00
Simon Michael
a98e6125f1
;doc: changelogs: 1.24.1
2021-12-10 12:47:43 -10:00
Simon Michael
1ef8f329c6
lib: simpler more robust version strings, with date/without patchlevel
...
We no longer rely on git tags and git describe output, since it's
hard to reliably select the correct tag eg for minor releases.
We might use them again in future for dev builds, but it requires
adding git describe --match support to githash. For now,
* Program name, OS and architecture are always shown.
* The package version is always shown.
* If there is git info at build time, the latest commit hash and commit date are shown.
Example outputs:
A homebrew binary, not built in git repo: hledger-ui 1.24, mac-aarch64
A CI release build, built in git repo: hledger 1.24.1-g455b35293-20211210, mac-x86_64
API changes:
* new type synonyms ProgramName, PackageVersion, VersionString
* versionStringForProgname -> versionString with extra argument
* versionStringFor -> versionStringWith with extra argument
2021-12-10 12:42:40 -10:00
Simon Michael
1a646cd092
;doc: changelogs: 1.24.1
2021-12-09 14:52:23 -10:00
Simon Michael
f111274f25
;doc: update changelogs
2021-12-09 14:25:42 -10:00
Simon Michael
e532b7be49
;doc: update manuals
2021-12-09 14:03:58 -10:00
Simon Michael
d1a0d37bd1
fix: bal: --declared now respects not:ACCT ( fix #1783 )
2021-12-09 12:58:22 -10:00
Simon Michael
08b72ae9f7
dev: bal: note yet another --declared issue
2021-12-08 18:21:32 -10:00
Simon Michael
2e79e53f12
;dev: bal: note possible --declared issue
2021-12-08 18:14:23 -10:00
Simon Michael
e76cb1ae8c
;doc: csv: note hyphenated field names, fix formatting
2021-12-08 09:55:06 -10:00
Simon Michael
9c1c7aca83
;doc: csv: mention disabling of digit group marks in csv output ( #1771 )
2021-12-06 15:23:35 -10:00
Stephen Morgan
c4004fca28
imp: csv: Do not display thousands separators when outputting csv.
2021-12-06 15:17:46 -10:00
Simon Michael
76b5c5f2ac
;doc: update manuals
2021-12-06 15:04:17 -10:00
Simon Michael
763d171108
;doc: update CLI usage texts
2021-12-06 15:04:07 -10:00
Simon Michael
4d6f1ed0bf
;doc: bal: update tidy description, example
2021-12-06 15:03:40 -10:00
Simon Michael
ca44e092fd
;doc: update manuals
2021-12-06 14:50:49 -10:00
Simon Michael
5c597750fb
;doc: update CLI usage texts
2021-12-06 14:50:43 -10:00
Simon Michael
872bce55ef
;doc: bal: mention tidy's disabling of totals/averages ( #1773 , #1775 )
2021-12-06 14:49:59 -10:00
Stephen Morgan
29ee0c331f
imp: csv: Ignore --row-totals with tidy csv output.
2021-12-06 14:43:43 -10:00
Stephen Morgan
fb0472e0e9
imp: csv: Handle --layout=tidy with the legacy balance report.
...
Note that this gives output compatible with the multi balance report,
which means it is different from the csv with the legacy balance report.
This means tools only need to be able to handle one tidy csv format.
2021-12-06 13:49:01 -10:00
Stephen Morgan
71646f993c
imp: csv: Include the start and end dates of intervals, as well as
...
string representation of the period, in tidy csv output, and never
include row totals or averages.
2021-12-06 13:49:01 -10:00
Simon Michael
35c1c9b6a2
pkg: progress towards supporting GHC 9.2 and newer libs ( #1774 )
...
hledger-lib builds, hledger's deps don't (shakespeare).
2021-12-06 12:32:50 -10:00
Simon Michael
642102e291
;doc: update manuals
2021-12-05 16:34:01 -10:00
Simon Michael
ca0d9e2a0e
;doc: update CLI usage texts
2021-12-05 16:34:01 -10:00
Simon Michael
c250be1bb9
;doc: bal: document tidy; commodity -> data layout ( #1768 )
2021-12-05 16:33:56 -10:00
Stephen Morgan
e42120da26
;test: Rename commodity-column.test to layout.test, and replace
...
--commodity-column with --layout=bare in tests.
2021-12-05 16:06:44 -10:00
Stephen Morgan
7ccf7430d0
imp: csv: Allow for generating tidy csv with --layout=tidy.
...
This puts every date in a separate row, which is more suitable for
many graphing programs.
2021-12-05 16:06:44 -10:00
Stephen Morgan
3884f90cc6
lib!: Rename CommodityLayout to Layout and rename constructors.
...
Their scope is more than just commodities.
2021-12-05 16:06:44 -10:00
Simon Michael
6ce70351fd
;doc: cli, bal: improve table layout in non-html docs
2021-12-05 12:27:20 -10:00
Simon Michael
e5b924c390
;doc: update manuals
2021-12-05 12:25:49 -10:00
Simon Michael
ee9894f59e
;doc: update CLI usage texts
2021-12-05 12:25:44 -10:00
Simon Michael
08f95d051e
;doc: update manuals
2021-12-05 11:23:18 -10:00
Simon Michael
7b9cad6cdc
;doc: update CLI usage texts
2021-12-05 11:23:11 -10:00
Simon Michael
76f8ed1514
;doc: cli, bal: clarify output formats, layouts more
2021-12-05 11:23:00 -10:00
Simon Michael
2a58331024
;doc: update manuals
2021-12-05 10:56:41 -10:00
Simon Michael
fdc373f45c
;doc: update CLI usage texts
2021-12-05 10:56:38 -10:00
Simon Michael
371539e085
;doc: bal: clarify --layout a little
2021-12-05 10:56:17 -10:00
Simon Michael
1ba25f9714
;doc: cli: document which commands support which output formats
2021-12-05 10:24:24 -10:00