Skip to content

Releases: moov-io/ach

Release v1.34.3

26 Feb 14:59
Compare
Choose a tag to compare

IMPROVEMENTS

  • fix: Correctly assign Category to IAT entries.

BUILD

  • build(deps): bump golang.org/x/net from 0.20.0 to 0.21.0
  • chore(deps): update dependency github-pages to v231

Release v1.34.2

07 Feb 23:23
Compare
Choose a tag to compare

IMPROVEMENTS

  • fix: skip reserved fields in Dishonored Returns

BUILD

  • build(deps): bump golang from 1.21 to 1.22
  • build: experiment with ARM M1 builders and releases
  • build: print crashers after fuzzing
  • fix(deps): update module github.com/aws/aws-lambda-go to v1.46.0

Release v1.34.0

25 Jan 21:48
Compare
Choose a tag to compare

IMPROVEMENTS

  • fix: use constructor to create IATEntryDetails in reader
  • test/issues: write up scenario for Issue 1312

BUILD

  • build(deps): bump actions/download-artifact from 1 to 4
  • build(deps): bump actions/upload-artifact from 1 to 4

Release v1.33.6

19 Jan 20:04
Compare
Choose a tag to compare

IMPROVEMENTS

  • api: fixup EntryDetail required fields
  • api: label required fields on EntryDetail
  • feat: Addenda99.SetOriginalEntryReturnDate
  • feat: Parse Addenda99.AddendaInformation
  • feat: improve addenda99 for dishonored returns
  • feat: add CheckingReturnNOCCredit to list of valid ATX txn codes (#21)
  • fix BatchHeader.EffectiveEntryDateField (#20)
  • fix: Don't truncate Addenda99.AddendaInformation
  • fix: trim "R" in dishonored and contested setter
  • test: verify "!" is allowed in isAlphanumeric

BUILD

  • build(deps): bump actions/download-artifact from 1 to 4
  • build(deps): bump actions/upload-artifact from 1 to 4
  • build(deps): bump github.com/moov-io/base from 0.48.2 to 0.48.3 (#1341)
  • build(deps): bump github.com/aws/aws-lambda-go from 1.41.0 to 1.43.0 (#1346)
  • build(deps): bump github/codeql-action from 2 to 3 (#1342)
  • build(deps): bump github.com/prometheus/client_golang
  • build(deps): bump github.com/aws/aws-lambda-go from 1.43.0 to 1.44.0
  • build(deps): bump golang.org/x/net from 0.19.0 to 0.20.0
  • build(deps): bump github.com/moov-io/base from 0.48.3 to 0.48.5
  • build(deps): bump actions/cache from 3 to 4
  • build(deps): bump github.com/aws/aws-lambda-go from 1.44.0 to 1.45.0
  • chore(deps): update dependency jekyll-feed to v0.17.0 (#1337)

Release v1.33.4

07 Dec 18:55
Compare
Choose a tag to compare

IMPROVEMENTS

  • all: fix errors found by nilaway
  • api: update amount to be long to allow handling of amounts larger than 21M (#1335)
  • webui: better overflow layout

BUILD

  • build(deps): bump actions/setup-go from 4 to 5
  • build(deps): bump golang.org/x/net from 0.18.0 to 0.19.0

Release v1.33.3

14 Nov 19:12
Compare
Choose a tag to compare

IMPROVEMENTS

  • docs: improve TraceNumber
  • fix: check .UnequalAddendaCounts in CTX validation

BUILD

  • build(deps): bump golang.org/x/net from 0.17.0 to 0.18.0
  • fix(deps): update module github.com/moov-io/base to v0.48.2

Release v1.33.2

31 Oct 14:27
Compare
Choose a tag to compare

IMPROVEMENTS

  • fix: Parse FileIdModifier from file header; don't assume 'A'
  • fix: revert "reduce allocations when parsing FileHeader"
  • test/issues: verify FileIDModifier is read

BUILD

  • build(deps): bump github.com/moov-io/base from 0.47.0 to 0.47.1

Release v1.33.1

26 Oct 14:44
Compare
Choose a tag to compare

This release contains multiple performance improvements ontop of what v1.33.0 has included. The comparison to v1.32.2 is below:

v1.32.2 compared to v1.33.1
BenchmarkParsing/Read_../testdata/20110805A.ach-16         	    1840	    632450 ns/op	   97797 B/op	    1953 allocs/op
BenchmarkParsing/Read_../testdata/20110805A.ach-16         	    1909	    606422 ns/op	   57270 B/op	     922 allocs/op

BenchmarkParsing/IAT-16                                    	    4615	    232996 ns/op	   45724 B/op	     410 allocs/op
BenchmarkParsing/IAT-16                                    	    4666	    230543 ns/op	   31823 B/op	     306 allocs/op

BenchmarkFile/String-16                                    	    5512	    206355 ns/op	   35503 B/op	    1282 allocs/op
BenchmarkFile/String-16                                    	    6181	    188959 ns/op	   30261 B/op	     639 allocs/op

IMPROVEMENTS

  • feat: optimize parsing of ADVBatchControl and FileControl
  • feat: reduce allocations when parsing records
  • fix: allocate returned array in ReadFiles and ReadDir once
  • fix: use shared buffer when rendering EntryDetail
  • test: verify IAT batches are skipped in Iterator

BUILD

  • chore(deps): update ossf/scorecard-action action to v2.3.1

Release v1.33.0

19 Oct 19:40
Compare
Choose a tag to compare

Moov ACH v1.33.0 has undergone some major performance tuning and improvements. Please let us know if you encounter any issues when using the improved code, thanks!

ADDITIONS

  • feat: add a File iterator
  • feat: add benchmark for ReadFile and Iterator
  • fix: produce entries from iterator that are outside of batches

IMPROVEMENTS

  • feat: check for valid JSON before parsing
  • fix: avoid nil panic with malformed readers
  • fix: process entry rune-by-rune without casting between string -> rune -> string
  • fix: skip directories in ReadDir
  • perf: reduce allocations in formatting strings
  • perf: reduce allocations when checking routing numbers
  • perf: use sync.Pool of bytes.Buffer objects grown to max field size
  • test: benchmark merging files in groups

BUILD

  • cmd/webui: force wasm_exec.js to go1.21.0 version
  • fix(deps): update module golang.org/x/net to v0.17.0
  • fix(deps): update module golang.org/x/oauth2 to v0.13.0

Release v1.32.2

11 Aug 20:17
Compare
Choose a tag to compare

IMPROVEMENTS

  • fix: Corrected Data is 29 characters, not 22
  • fix: don't print blank line for missing IAT addendas
  • test/issues: match IAT output byte-for-byte

BUILD

  • build(deps): bump golang from 1.20-alpine to 1.21-alpine