Releases: skwasjer/IbanNet
Releases · skwasjer/IbanNet
v5.8.1
What's Changed
- Upgraded SWIFT registry to Feb '23 release 93, which adds Somalia (SO) and fixes some misconfiguration for Finland (FI) removing the need for 'some' patching (no regression).
- Updated Wikipedia provider, which updates validation patterns for Dominican Republic (DO), Georgia (GE), Ireland (IE), Jordan (JO), Pakistan (PK), Palestinian territories (PS), Turkey (TR), British Virgin Islands (VG) and Burundi (BI).
Full Changelog: v5.8.0...v5.8.1
v5.8.0
What's Changed
- Update
FluentValidation
to v11.3.0 - Updated Wikipedia registry provider which corrects the IBAN and BBAN pattern for Azerbaijan (AZ). The Swift registry (which is the default) was already correct, so there is no regression if you do not use the Wikipedia provider.
- #116 Added .NET 7 target framework support
- Performance improvements (10-20%):
- Use
CollectionsMarshal.AsSpan
in some areas to improve enumeration perf - Use faster API's to change a
Span<char>
back to astring
- Use new .NET 7
char
API's and aggressive inline ownchar
extensions - Rework
Pattern
lazy init to improve init time - When parsing, will no longer allocate and return a new copy of the input if no normalization was performed but return the same string ref.
- Use
Full Changelog: v5.7.2...v5.8.0
v5.7.2
What's Changed
- Lazy initialization of
IbanRegistry
is now thread safe. - Add ctor overload to
IbanGenerator
which enables specifying a seed for consistent, reproduceable generation. - Enable deterministic build/assemblies
Full Changelog: v5.7.1...v5.7.2
v5.7.1
What's Changed
- Add "nl" resx files by @jeroenheijmans in #97
New Contributors
- @jeroenheijmans made their first contribution in #97
Full Changelog: v5.7.0...v5.7.1
v5.7.0
What's Changed
- Move normalization to
IbanParser
fromIbanValidator
. This means that the validator is now validating 100% strict according to character pattern rules (character class, case and whitespace, etc.).ValidationResult.AttemptedValue
will now also have the raw input. Whitespace/casing is still ignored by theIbanParser
. @skwasjer in #95 Note that some countries DO allow mixed character casing, don't assume all IBAN's are upper cased. - Add Strict-property (default true) to
IbanAttribute
andFluentIbanValidator
extension. When Strict=true, the input must strictly match the IBAN format rules. When Strict=false, whitespace is ignored and strict character casing enforcement is disabled (meaning, the user can input in lower and uppercase). This mode is a bit more forgiving when dealing with user-input. However it does require after successful validation, that you parse the user input withIbanParser
to normalize/sanitize the input and to be able to format the IBAN in correct electronic format. @skwasjer in #95 - When parsing, carriage return (CR) and line feed (LF) are no longer ignored and will cause parsing to fail.
IllegalCharactersResult
andInvalidStructureResult
have a propertyPosition
which indicates the 0-based position at which the first invalid character was encountered.- ~15-20% Performance improvements to pattern validator.
IbanNet.DependencyInjection.Autofac
- Fix registration bug where if custom registry was registered, it would still additionally register IbanNet's built-in registry service instead of ignoring.
Full Changelog: v5.6.2...v5.7.0
v5.6.2
What's Changed
- fix: regenerated Wikipedia registry which corrects IBAN pattern for Senegal (SN).
Full Changelog: v5.6.1...v5.6.2
v5.6.1
v5.6.0
What's Changed
- Remove non-LTS .NET 5.0 by @skwasjer in #76
- chore(deps): bump xunit.runner.visualstudio from 2.4.3 to 2.4.5 by @dependabot in #65
- Updated System.ComponentModel.Annotations to v5.0.0
- Updated Autofac to 6.4.0
- Updated FluentValidation to 11.1.0
Full Changelog: v5.5.1...v5.6.0
v5.5.1
What's Changed
- updated SWIFT registry to May '22 r92, which adds Djibouti (DJ) and fixes the bank pattern for Bahrain (BH)
- regenerated Wikipedia provider which adjusts English name for ST.
Full Changelog: v5.5.0...v5.5.1
v5.5.0
What's Changed
- fix: SWIFT country definitions for which the 'included country codes' contained inferred locales. The list now actually contains the expected country codes.
- feat: dropped support for .NET 4.5.2 and .NET Standard 1.2/1.3. Added .NET 4.6.2 by @skwasjer in #69
Full Changelog: v5.4.0...v5.5.0