Table of Contents

Release Notes

Version 2.2 (July-2026)

  • New: JOSE/JWT library updated to match the latest files of Delphi JOSE JWT library (https://github.com/paolo-rossi/delphi-jose-jwt), which we use as a base for our implementation. This includes various internal improvements and bug fixes that have been made upstream since our last sync, listed below for reference.

  • New: Support for X.509 certificate-based JWS signature verification. TJWS now provides a SetKeyFromCert method that extracts the public key from a PEM-encoded X.509 certificate, allowing VerifySignature to validate JWT signatures issued with certificate-bound keys.

  • New: TJWTClaims.ClaimExists is now a public method, enabling callers to check whether a named claim is present in the token without going through internal accessors.

  • New: TJSONUtils.SetJSONRttiValue now handles dynamic array values, so JWT claims that carry array-typed RTTI values are correctly serialized to JSON.

  • New: Added TJOSEBytes.IsValidString and TJSONUtils.IsValidJSON utility methods for safer token-part validation before deserialization.

  • New: Added TJSONUtils.IsJSONBool and TJSONUtils.GetJSONBool helper methods for reading JSON boolean values, and updated GetJSONValue to handle booleans correctly.

  • Improved: TJWS.CheckCompactToken now performs stricter validation: each decoded token part is verified to be a valid UTF-8 string and well-formed JSON before the token is accepted.

  • Improved: Error messages produced during JWT validation now include more descriptive details to simplify diagnosis of token failures.

  • Fixed: Corrected a Pointer/Integer cast that caused incorrect behavior on 64-bit platforms.

Version 2.1 (April-2026)

  • New: Support for WinArm64EC platform, introduced in Delphi 13.1.

  • Fixed: TLogManager.Release now uses an atomic exchange to nil the singleton reference before freeing it, preventing a potential race condition where a concurrent thread could obtain and use the instance while it was being destroyed.

Version 2.0 (February-2026)

  • New: Full documentation for TMS BIZ Core Library. Major aspects of the library are now documented, including the JSON framework, core types, logging, internationalization, and code generation features. Also a full API reference is available detailing all public types and members.