Recent Releases

1.0.314 Sep 2023 06:45 minor bugfix: * Fixes - OFConcreteData initWithItemSize: not setting freeWhenDone to true, which resulted in a memory leak * Fixes - OFData initWithContentsOfIRI: freeing the buffer in @catch instead of @finally, which resulted in a memory leak
1.0.211 Sep 2023 01:59 minor bugfix: * The build system has been updated to fix building .frameworks and to build them differently for macOS and iOS
1.0.110 Sep 2023 20:39 minor bugfix: * Hanging connections with OFTLSStream have been fixed when using OpenSSL * The same fix as for OpenSSL has been applied to GnuTLS and SecureTransport out of caution, even though there have been no hangs in practice * The build system has been updated to fix building .frameworks among other minor changes * Some headers have been changed to fix compatibility with ObjC++ * Warnings about empty .o files on x86_64 Darwin have been fixed * The OFDate documentation has been improved to list supported formats
1.029 Aug 2023 03:16 major feature: + First stable release with stable API and ABI. * Too many changes to list, as it has been almost 6 years since the last release. See commits in the repository for details.
0.90.223 Oct 2017 22:12 minor bugfix: * Fix shadowed variables which caused many bugs (e.g. using the wrong object) * Many, many nullability fixes * OFTCPSocket: Fix exception not being retained for async connect * OFThread: Fix setting the name on the wrong thread * OFMutableSet: Fix missing override for - copy * configure: Fix posix_spawnp check * Xcode project: Set the correct version for the bridge * Better check for iOS * tests: Fix testing the wrong OFKernelEventObserver
0.90.121 Aug 2017 07:25 minor bugfix: OFData: - description . OFFileManager: Set errno to 0 before readdir(). OFDate: Add - localMinute . OFTarArchiveEntry: prehandling for ustar. OFZIPArchive: uncompressed + data descriptor. OFArray: MessagePack encoding. of_asprintf: Don't require set up OFLocalization. OFGZIPStream: Add missing documentation. a linker warning on OpenBSD/SPARC64. Remove the OFFile b modes from MorphOS. (they were already removed for all other OSes).
0.9002 Aug 2017 08:25 minor feature: New classes: OFFileManager, OFGZIPStream, OFTarArchive, OFTarArchiveEntry OFHMAC, OFSandbox, OFHTTPCookie, OFHTTPCookieManager, OFLocalization. + New platforms: Nintendo 3DS, MorphOS. + New lookup assembly for platforms: SPARC64/ELF, ARM64/ELF. + New forwarding for: ARM64/ELF. + New tools: objfw-new (to create boilerplate code). + New options: --disable-unicode-tables. Required GCC version increased to 4.6. OFDataArray was split into OFData and OFMutableData. OFURL was split into OFURL and OFMutableURL. Most properties are now nonatomic. (this changes from returned retained + autoreleased to +0 retained). Correct handling of encoding on Win32 console. (stream is read and written in UTF-8 and translated to UTF-16 on the fly). Runtime is now built as a separate library. + More encodings for strings. Reworked OFOptionsParser API. Refactored OFKernelEventObserver. Better randomization of HTTP header order. Allow overriding all HTTP headers. Definition of thread priorities changed. + Key Value Coding. + Exceptions in ObjC++. OFHash was renamed to OFCryptoHash. + PBKDF2. + scrypt. + Xcode project to build for iOS. + String decomposition to NFD. OFFile modes simplified ('b' removed).
0.8.104 Oct 2015 12:42 minor bugfix: Adjust to __nullable / __nonnull being changed to _Nullable / _Nonnull in Clang 3.7. Blocks: Proper handling when called from a byref handler. compilation on Solaris. compilation for Wii, PSP and Nintendo DS. OFProcess: Send SIGTERM on instead of SIGKILL. OFZIPArchive: Throw invalid format exception on failed seeks. Make sure of_hash_seed is never initialized to 0. Special cases for the Wii's weird network stack. Better length checks for write / send calls. Don't use -pedantic on platforms where it's broken by the system headers. Documentation fixes.