Skip to content

Rebase upstream#71

Closed
aodhan-domhnaill wants to merge 14 commits intohoweyc:masterfrom
plenert-macdonald:rebase-upstream
Closed

Rebase upstream#71
aodhan-domhnaill wants to merge 14 commits intohoweyc:masterfrom
plenert-macdonald:rebase-upstream

Conversation

@aodhan-domhnaill
Copy link
Copy Markdown
Contributor

No description provided.

Aidan Macdonald and others added 14 commits March 21, 2026 10:02
adding test for conversion per ledger standards. test is correctly failing

separating posting parsing and adding test cases

posting parsing passes tests

passes more testing

posting parsing passes all tests

all tests passing
Previous

$ go test -bench=.
goos: linux
goarch: amd64
pkg: github.com/howeyc/ledger
cpu: Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz
BenchmarkGetBalances-8                45          26721471 ns/op
BenchmarkParseLedger-8               273           4209337 ns/op
PASS
ok      github.com/howeyc/ledger        3.273s

New

$ go test -bench=.
goos: linux
goarch: amd64
pkg: github.com/howeyc/ledger
cpu: Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz
BenchmarkGetBalances-8                12          99485602 ns/op
BenchmarkParseLedger-8               248           4376757 ns/op
PASS
ok      github.com/howeyc/ledger        4.825s
* moving balance computation into separate function for maintainability

* implicit conversion factor computation

* testing raw transaction block

* testing raw transaction block

* separated comment capture from parser

* remove postings from parser

* remove excess indexes

* separate out include

* separating block parsing from transaction parsing

* fixing decimal precision bug

* print currency

---------

Co-authored-by: Aidan Macdonald <aidan@apmac.us>
* adding qif code copied from qfx

* add QIF support and replace ParseQFX with ParseQIF

* add QIF import support

* fix unique accounts bug

* add override-currency flag and apply currency to imports

* fix currency override

---------

Co-authored-by: Aidan Macdonald <aidan@apmac.us>
* reducing duplicate code

* ledger optional on import

---------

Co-authored-by: Aidan Macdonald <aidan@apmac.us>
* iif format header parsing works

* record parsing working

* cleaner parser

* refactor: use type tag instead of iff in iif_trns.go

* iif parser into transactions passes tests

* iif works. tested on export from paypal

---------

Co-authored-by: Aidan Macdonald <aidan@apmac.us>
* replacing godate

* replacing github.com/alfredxing/calc/compute with github.com/expr-lang/expr

* fixing minor bug

* adding more linting

* fixing linting bugs

* linting fixes from go-critic

* fixing go version errors in ci

* fixing go version errors in ci

* migrate ci config

* removing golangci

* fix go mod

* deterministic implicit conversion

---------

Co-authored-by: Aidan Macdonald <aidan@apmac.us>
* removed callback flow and async, because it was overcomplicated

* flattened parsing code

---------

Co-authored-by: Aidan Macdonald <aidan@apmac.us>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant