Releases: barend/java-iban
Releases · barend/java-iban
1.14.0: 18 May 2023
- Fixes exception when composing IBAN with check digit under 10 (#92).
- Update to revision 94 of the SWIFT IBAN Registry
- Mongolia (MN): added
- Nicaragua (NI): added, note that this entry was previously in the experimental list, and the IBAN length has changed.
- Somalia (SO): added
- Update to IBAN.com Experimental List
- Nicaragua (NI): removed
1.13.0: 16 September 2022
- All exceptions thrown now extend
IBANException
(#17) - No changes to country data
1.12.0: 27 May 2022
- Update to revision 92 of the SWIFT IBAN Registry
- Djibouti (DJ): added
- Russia (RU): added
- Sudan (SU): remove incorrect branch identifier field
- Update to IBAN.com Experimental List
- Djibouti (DJ): removed
1.11.0: 26 November 2021
- Update to revision 91 of the SWIFT IBAN Registry
- Burundi (BI): added
- Update to IBAN.com Experimental List
- Burundi (BI): removed
1.10.1: 20 August 2021
- Update to revision 90 of the SWIFT IBAN Registry
- Sudan (SD): added (#42).
- Update to IBAN.com Experimental List
- No changes
- Drop
template-maven-plugin
. It has proven to make the CI build very flaky. Removing this also lets us remove the third-party artifact repository from the pom (#33), simplifying the supply chain. It also makes the build a little quicker. The downside is that the build now requires Python 3 and a bourne shell. It should build on WSL2 just fine, but there is no pom profile to support Windows native builds.
1.9.0: 3 April 2021
- Compatible change: utility functions in
CountryCodes
now acceptjava.lang.CharSequence
(was String). - New API method:
IBAN.compose(CharSequence, CharSequence)
. - New API method:
Modulo97.calculateCheckDigits(CharSequence, CharSequence)
. - France (FR): add branch identifier (#30)
- Update to revision 89 of the SWIFT IBAN Registry
- Andorra (AD): is now SEPA
- Update to IBAN.com Experimental List
- No changes
- The project can now be compilead on Adopt-OpenJDK 11 HS. An outdated library used in the code generation step prevented this.
- The
@javax.annotation.Generated
annotation has been removed from theCountryCodesData
class. This annotation moved into a library package in newer Java versions, and does not justify taking on a library dependency.
1.8.0: 21 November 2020
- The
IBAN
class implementsjava.io.Serializable
(#23). The serialized form should stay valid across library version updates. There is one obvious backwards-incompatibility: deserializing after a version downgrade, of an IBAN whose country only exists in the newer version, will fail. - No updates to reference data.
1.7.0: 13 October 2020
- Packaging updated to support Java module system, see
docs/java-module.md
. - Update to revision 88 of the SWIFT IBAN Registry
- Albania (AL): bank identifier extended to 8 chars
- Egypt (EG): now in SWIFT registry; add embedded bank and branch identifier
- Iceland (IS): bank and branch identifier split
- Libya (LY): added
- Poland (PL): bank identifier changed to branch identifier
- Seychelles (SC): bank and branch identifier split
- Update to IBAN.com Experimental List
- No changes.
- Exception classes define
serialVersionUID
. - Uses build-time code generation to construct the reference data. The input YAML file is included in the distribution JAR for completeness, but it is not used at runtime.
- Add
CountryCodes.getLastUpdateDate()
andCountryCodes.getLastUpdateRevision()
. - Add spotbugs:check to the build definition.
- Moved some private fields. Any code that accesses these through reflection will break.
Maven
<dependency>
<groupId>nl.garvelink.oss</groupId>
<artifactId>iban</artifactId>
<version>1.7.0</version>
</dependency>
Gradle
dependencies {
compile 'nl.garvelink.oss:iban:1.7.0'
}
1.6.1: 20 September 2019
- Fixes #14
Download binaries from Maven Central: https://search.maven.org/artifact/nl.garvelink.oss/iban/1.6.1/jar
<dependency>
<groupId>nl.garvelink.oss</groupId>
<artifactId>iban</artifactId>
<version>1.6.1</version>
</dependency>
1.6.0: 23 August 2019
- Update to version 83 of the IBAN registry
- Adds Vatican City State (VA)
- (Ignores updated example IBAN for Sao Tome e Principe, because it fails checksum validation)
- Imports IBANs from the Experimental IBANs List on iban.com, update of 12 July 2019 (Closes issue #9)
- IBAN length for Algeria (DZ) changed to 26
- IBAN length for Burkina Faso (BF) changed to 26
- Adds Central African Republic (CF), Chad (TD), Comoros (KM), Djibouti (DJ), Equatorial Guinea (GQ), Guinea-Bissau (GW), Honduras (HN), Morocco (MA), Niger (NE), Nicaragua (NI), Togo (TG)
- New method
IBAN.isInSwiftRegistry()
indicates whether the IBAN country is listed in the SWIFT IBAN Registry - Factory methods in
IBAN
acceptCharSequence
instead ofString
- Upgrades to Java bytecode level 1.8. The 1.6 target was there to offer legacy Android support in 2013. This is no longer required in 2019.
- Drops the Sonatype OSS-parent POM (Closes issue #6)
Download binaries from Maven Central: https://search.maven.org/artifact/nl.garvelink.oss/iban/1.6.0/jar
<dependency>
<groupId>nl.garvelink.oss</groupId>
<artifactId>iban</artifactId>
<version>1.6.0</version>
</dependency>