We are happy to announce v. 5.23.00 of the most complete development toolkit for Delphi and C++Builder for building native modular and fast multi-tier solutions.

5.23.00 is a major release which includes new RAD Studio and Delphi 12 support, JSON5 support and many additions, updates and fixes..

If you like kbmMW, please let others know! Share the word!

We strive hard to ensure kbmMW continues to set the bar for what an n-tier product must be capable of in the real world!

This release require the use of kbmMemTable v. 7.99.00 or newer.

The release includes:

  • RAD Studio and Delphi 12 support
  • NEW JSON5 support
  • NEW HTTP BearerAuthorization support
  • Many updates, additions and bugfixes

Please check the end of this post for a detailed change list.

Professional and Enterprise Edition is available for all with a current active SAU. If your SAU has run out, please visit our shop to extend it with another 12 months.

Community Edition (CE) can be used as a 60 day trial, alternatively as a free product, provided the license is followed. Please read license.txt file for details. CE supports a large subset of the Enterprise Edition features, but may have technical and artificial limitations in certain areas. It only supports a specific Delphi/Win32 SKU, produce Win32 executables and do not include source.

Please visit https://portal.components4developers.com to download.

Notice that Community Edition (CE) is currently only available on request, and after signing up with COMPLETE and CORRECT info on the portal, due to export restrictions to Russia and Belarusia.

—-

kbmMW is the premiere n-tier product for Delphi, C++Builder and FPC on Win32, Win64, Linux, Java, PHP, Android, IOS, .Net, embedded devices, websites, mainframes and more.

Please visit http://www.components4developers.com for more information about kbmMW.

—-

Components4Developers is a company established in 1999 with the purpose of providing high quality development tools for developers and enterprises. The primary focus is on SOA, EAI and systems integration via our flagship product kbmMW.

kbmMW is currently used as the backbone in hundreds of central systems, in hospitals, courts, private, industries, offshore industry, finance, telecom, governments, schools, laboratories, rentals, culture institutions, FDA approved medical devices, military and more.



5.23.00 Jan 14 2024

New stuff
=========

- Added support for Delphi 12.
- Added object notation support for JSON5.
- Added support for HTTP BearerAuthorization in kbmMWHTTPSysServerTransport,
kbmMWISAPIRESTServerTransport, kbmMWJSONRPCTransStream,
           kbmMWXMLRPCTransStream,
AJAX transport streamformat and REST transport streamformat.
- Added ListTableNames function to TkbmMWORM. It will return the tablenames
         based on the provided TkbmMWORMTableSelections options
          mwtsKnown,mwtsSurfaced,mwtsVirtual,mwtsBackend
- Added TkbmMWTime32 class and kbmMWTime32StartTime global variable
           to kbmMWGlobal.pas.
It will handle relative 32 bit date/time values. Used for low memory footprint
fast date/time calculation/registration.
- Added support for preserving knowledge about Object Notation native value format
bin/oct/hex or none to be able to regenerate it in same format on streaming.

Changes/minor additions
=======================

- Updated Remote Desktop Proxy demo.
- Updated Remote Desktop Server demo.
- Updated ObjectNotation demo.
- Updated kbmMWYAML.pas with different way to keep track of NUMBER fields as bit, oct or hex types.
- Added kbmMWHashFNV1A32 and kbmMWHashFNV1A64 operating on memory by pointer.
- Added IntToHex and HexToInt SQL function as alias for ToHex and FromHex functions.
- Improved ToHex SQL function to not require digit count.
- Improved kbmMWDependency.pas to provide better debug log and handle error cases during shutdown.
- Updated native TCP transports to better handle disconnection, improve performance,
giving access to current connections and listeners, and fixed KQueue variant to
work correctly with Android target.
- Improved connection loss detection in messaging transports.
- Updated TkbmMWCircularBuffer with new overloaded Read and Write methods.
- Updated kbmMWOpenSSL.pas to use static SSL library when compiling for IOS,
and added support for OpenSSL SSLv3 and TLSv3.
- Added HexToInt and IntToHex SQLite custom functions.
- Improved parsing returned string field data from SQLite depending on if Ansi or Unicode encoded.
- Added mwsloEmptyTextIsNullOnConversion to SQLite options. If empty string is returned will be
handled as NULL if set. Default not set.
- Added debug log in FindServiceDefinition (kbmMWServer.pas) when service definition found
based on a service path (REST). Similarly added warn log in same function when No
definitions found.
- Added StrictSyntaxOptions:TkbmMWXMLStrictSyntaxOptions to TkbmMWCustomSAXParser and
TkbmMWDOMXML. It controls how strict the XML parser must be. Can contain flags:
mwxml_ssoAllowRestrictedCharactersInAttributeValue,mwxml_ssoAllowDuplicateAttributeName,
mwxml_ssoAllowDuplicateIDs.
- Added new overloaded function IsAuthorized to TkbmMWAuthorizationManager.
- Added new TkbmMWORMQueryOption mwqoNoTransaction to ORM. If used will
force query not to run in a transaction.
- Added new function LoginWithCreateActor to TkbmMWAuthorizationManager which makes
it easy to login with an unknown actor and have it autocreated if not existing.
- Updated default random generators kbmMWRandom32 (TkbmMWRandomPCGUInt32)
and kbmMWRandom64 (TkbmMWRandomXoroshiro1024) to be initialized as threadsafe.
- Changed PreComment and PostComment to be TStrings based in TkbmMWONCustomObject.
- Added GetPreComment, GetPostComment, SetPreComment, SetPostComment,
AddPreComment, AddPostComment methods as shortcut access to comments.
- Added ToNative, ToObject and ToArray properties to TkbmMWONCustomObject which will
attempt to return the instance as one of the specific types. If not compatible
nil is returned.
- Added overloaded Byte2Hex, Hex2Byte to TkbmMWPlatformMarshal in kbmMWGlobal.pas.
- Added overloaded kbmMWBitStringToInt64, kbmMWInt64ToBitString,
kbmMWOctalStringToInt64, kbmMWInt64ToOctalString, kbmMWHexStringToInt64,
kbmMWIntegerToHexString, kbmMWInt64ToHexString to kbmMWGlobal.pas.

Fixes
=====
- Fixed CompileTool when auto compiling prerequisite kbmMemTable.
- Fixed XML default configuration file settings to AutoIndent and AutoLineFeed.
- Updated JSON streaming to do proper formating when Pretty=true.
- Fixed TkbmMWORM InternalUpgradeTable to create new sequencers and counters.
- Fixed problem compiling for IOSSIMULATOR.
- Fixed TkbmMWSortedList<T>.AppendKey returning invalid value.
- Improved TkbmMWCustomThread.Stop.
- Fixed class function TkbmMWTimeNS.NowUTC:int64; on IOS crashing.
- Fixed TkbmMWCustomLockFreeHashArray<K,T>.TryGetValue(const AKey:K; var AValue:T):boolean
to prevent invalid value return.
5.22.10 Jun 26 2023

Changes/minor additions
=======================
- Improved adding info about KBMMW_SUPPORT_KBMFMX in generated kbmMWConfig.inc.

Fixes
=====
- Fixed path bug to kbmMW.inc in FMX.kbmMWDIB.pas preventing compilation.
- Fixed compilation in XE5 due to newer Delphi syntax.

Loading

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.