Skip to content

Reject SEPA purpose codes that sit between Z and a - #6

Merged
mtgrosser merged 1 commit into
mtgrosser:masterfrom
SashaMIT:codered-purpose-class
Sep 26, 2026
Merged

mtgrosser merged 1 commit into
mtgrosser:masterfrom
SashaMIT:codered-purpose-class

Conversation

@SashaMIT

@SashaMIT SashaMIT commented Sep 25, 2026 •

Copy link
Copy Markdown
Contributor

Summary

purpose= accepted [ because the pattern was [A-z0-9]. That range includes the six characters between Z and a. A purpose of [ was written into the QR payload. The pattern is now letters and digits. GDDS still passes.

Test plan

  • bundle exec ruby -Itest test/girocode_test.rb -n test_purpose_rejects_gap_characters fails on master because no error is raised
  • bundle exec ruby -Itest test/girocode_test.rb passes on this branch (6 runs, 0 failures)

The purpose pattern used A-z, so a bracket was accepted and written into the QR payload. Letters and digits still pass.
@mtgrosser
mtgrosser merged commit 81f49f6 into mtgrosser:master Sep 26, 2026
5 checks passed
@SashaMIT

Copy link
Copy Markdown
Contributor Author

Thanks for merging this.

SashaMIT added a commit to SashaMIT/oss-contributions that referenced this pull request Sep 26, 2026
A SEPA purpose code no longer accepts the characters between Z and a.
@mtgrosser

Copy link
Copy Markdown
Owner

Thank you for your PR! Released v1.2.0.

@SashaMIT

Copy link
Copy Markdown
Contributor Author

Thank you. Glad it made v1.2.0.

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.

2 participants