All Versions
70
Latest Version
Avg Release Cycle
8 days
Latest Release
514 days ago

Changelog History
Page 6

  • v1.5.1 Changes

    November 12, 2020

    ๐Ÿš€ There are no changes from v1.5.0. This release fixes issues during the release process.

  • v1.5.0 Changes

    November 12, 2020

    โž• ADDITIONS

    • ๐Ÿ“œ cmd/webui: initial setup for client-side ACH file parsing to their JSON forms
    • entries: allow custom TransactionCode validation
    • entries: allow custom TraceNumber values
    • writer: allow setting Writer.LineEnding to use custom values for ending each outputted
    • server: allow ValidateOpts to be set through HTTP query parameters

    ๐Ÿ‘Œ IMPROVEMENTS

    • ๐Ÿ‘• build: check and lint OpenAPI spec in CI
    • โšก๏ธ api: update summaries of endpoints
    • api: clean up OpenAPI spec after running Speccy
    • ๐Ÿ“„ docs: update content for moov-io.github.io/ach/
    • ๐Ÿ“„ docs: add page on return files
    • ๐Ÿ“„ docs: add link to Moov's ACH blog post
    • ๐Ÿ“„ docs: fix filepath example in segmented files
    • github: request version in bug reports
    • github: add codeowners
    • โšก๏ธ chore(deps): update golang docker tag to v1.15

    ๐Ÿ› BUG FIXES

    • server: fix batch additions by shimming JSON reading
  • v1.4.4 Changes

    August 04, 2020

    ๐Ÿ› BUG FIXES

    • ๐Ÿ–จ entries: detect overflow when printing large amounts
    • ๐Ÿ“œ reader: only parse IAT entries when we're accumulating an IAT batch

    ๐Ÿ‘Œ IMPROVEMENTS

    • ๐Ÿ–จ achcli: print BatchControl records as well
    • โšก๏ธ achcli: update help/usage text
  • v1.4.3 Changes

    July 23, 2020

    ๐Ÿ— BUILD

    • ๐Ÿš€ build: upload achcli binaries on each release
  • v1.4.2 Changes

    July 23, 2020

    ๐Ÿ‘Œ IMPROVEMENTS

    • api: add example plaintext file for create route
    • ๐Ÿ“„ docs: flip Usage section priority, link to godocs and examples
    • file: include the struct field in Unmarshal errors

    ๐Ÿ› BUG FIXES

    • api: clarify batchNumber in BatchHeader is an integer
    • ๐Ÿ“„ api: include missing CompanyIdentification field on BatchHeader docs
    • ๐Ÿ“„ api: include missing CompanyIdentification field on BatchHeader docs
    • api: quote number-looking example values
  • v1.4.1 Changes

    July 09, 2020

    ๐Ÿ› BUG FIXES

    • batch: error if our offset account type is unknown

    ๐Ÿ— BUILD

    • ๐Ÿ— build: add openshift docker image
    • ๐Ÿ— build: enable codeql via github actions
    • ๐Ÿš€ build: release via Actions, not TravisCI
  • v1.4.0 Changes

    June 29, 2020

    ๐Ÿ”– Version v1.4.0 of ACH adds several notable features such as custom validation, a command-line tool achcli to describe files, and improvements for verifying NACHA compatibility on slightly malformed files. This release also contains enhanced testing and documentation improvements.

    Custom Validation

    ๐Ÿ‘ The ACH library (and HTTP server) now supports custom validation with the ValidateOpts struct by calling File.SetValidation(..) and Reader.SetValidation(...). This offers various options:

    • RequireABAOrigin bool: Enable or disable routing number validation over the ImmediateOrigin file header field
    • BypassOriginValidation: Skip validation for the ImmediateOrigin file header field and allow custom TraceNumber values
    • BypassDestinationValidation: Skip validation for the ImmediateDestination file header field and allow custom TraceNumber values

    ๐Ÿ‘ The HTTP server also supports reading this struct with camel-cased names when calling the validation route.

    achcli

    achcli is a command-line utility for viewing ACH files in a more human readable format. This tool also allows masking DFIAccountNumber values with the -mask flag.

    $ achcli -mask 20200601-1002-01.ach
    Describing ACH file '20200601-1002-01.ach'
    
      Origin     OriginName               Destination  DestinationName     FileCreationDate  FileCreationTime
      691000134  ASF APPLICATION SUPERVI  091400606    FIRST BANK & TRUST  181017            0306
    
      BatchNumber  SECCode  ServiceClassCode  CompanyName  CompanyDiscretionaryData  CompanyIdentification  CompanyEntryDescription
      1            WEB      200               CoinLion                               123456789              TRANSFER
    
        TransactionCode  RDFIIdentification  AccountNumber  Amount  Name                    TraceNumber      Category
        26               09140060            *******89      12354   Paul Jones              091000017611242  Return
    
          Addenda99
          ReturnCode  OriginalTrace    DateOfDeath  OriginalDFI  AddendaInformation  TraceNumber
          R01         091400600000001               09100001                         091000017611242
    
      BatchCount  BlockCount  EntryAddendaCount  TotalDebitAmount  TotalCreditAmount
      1           1           1                  12354             0
    

    Malformed Files

    ACH files with lines that are not 94 characters are now adjusted in-memory (missing or extra spaces) in an attempt to comply with NACHA standards. The underlying file on disk is not modified during this reading.


    โž• ADDITIONS

    • ๐Ÿ“œ batches: Add LiftEffectiveEntryDate() to offer parsed time.Time values of EffectiveEntryDate
    • cmd/server: add version handler to admin HTTP server
    • file: add BypassDestinationValidation to ValidateOpts
    • 0๏ธโƒฃ file: add ValidateWith to override specific default validations
    • ๐Ÿ‘ file: support setting ValidateOpts on struct for calling Create()
    • reader: morph lines to 94 characters if they end in spaces
    • server: read ValidateOpts in HTTP validate route
    • server: return fileID on create errors, enforce marshaled errors as strings
    • ๐Ÿ‘ file: support setting ValidateOpts on struct for calling Create()
    • ๐Ÿš€ file: struct unmarshaling works again, it was depreciated for a couple releases
    • reader: morph lines to 94 characters with spaces if they are some other length
    • reader: allow setting ValidateOpts
    • ๐Ÿ–จ cmd/ach: initial setup of CLI tool to pretty print ACH files

    ๐Ÿ› BUG FIXES

    • all: replace ร‡ with C across the project
    • all: use filepath.Join instead of unix paths
    • api: fixup flatten files OpenAPI spec
    • api: note POST /files/create can return an error
    • file: don't validate before flattening batches
    • file: keep TraceNumbers when segmenting files
    • server: fix segment OpenAPI spec and accept config body
    • server: read empty SegmentFileConfiguration
    • file: don't validate before flattening batches

    ๐Ÿ‘Œ IMPROVEMENTS

    • api: used shared Error model
    • api: use shorter summaries
    • api: include AddendaXX, ADV, and IAT records that were missing from OpenAPI spec
    • โšก๏ธ chore(deps): update module prometheus/client_golang to v1.4.1
    • โšก๏ธ chore(deps): update module gorilla/mux to v1.7.4
    • โœ… reader: write a test for what partial file comes back from invalid EntryDetails
    • reader: allow zero-entry files if their controls signify as such
    • server: use FoundABug error with mismatched routing
    • validators: ensure alpha routing number check digit is invalid
    • all: use filepath.Join instead of unix paths
    • reader: append a lingering batch even if there's no batch control

    ๐Ÿ— BUILD

    • โšก๏ธ chore(deps): update golang docker tag to v1.14
    • ๐Ÿ— build: run sonatype-nexus-community/nancy in CI
    • ๐Ÿ‘• build: leverage moov-io/infra's Go linter script
  • v1.3.1 Changes

    January 22, 2020

    ๐Ÿ› BUG FIXES

    • ๐Ÿ“„ api,client: There was a mistaken character in the OpenAPI docs ร‡ which should have been C.

    ๐Ÿ‘Œ IMPROVEMENTS

    • โฌ†๏ธ build: upgrade golang.org/x/crypto

    ๐Ÿ— BUILD

    • ๐Ÿ— build: run sonatype-nexus-community/nancy in CI
  • v1.3.0 Changes

    January 20, 2020

    ๐Ÿ’ฅ BREAKING CHANGES

    • ImmediateOrigin values are written with a leading space instead of a zero (0) due to post-2013 NACHA guidelines.

    ๐Ÿ› BUG FIXES

    • ๐Ÿ“œ addenda98 fix parsing with no spaces between routing and account number

    โž• ADDITIONS

    • โž• Add random names, amounts, and memo lines in test file generation script cmd/writeACH/main.go
  • v1.2.1 Changes

    October 11, 2019

    ๐Ÿ› BUG FIXES

    • ๐Ÿšš fileHeader: Remove requirement of ImmediateOrigin to be a routing number