Artifact 08972294765dc4e60e1654d7ffb8f1aa9e7fa1c016a1f030cddc3de3c4463c06:
- File
ChangeLog
— part of check-in
[1d6a89a772]
at
2011-01-23 01:07:38
on branch 0.4
— Merge changes into 0.4 branch.
Changesets:
* 67f56a9b2701
* e93dc7881ac2
* 39cee2729741
* e3ae6cbe1a1d
* e60e7e4639b4
* d9ef36b4546b
* 4c582ed164a4
* 51f21db0e6e1
* 3da138c08f0b
* 2972e6711adc
* 1702fb32d80a
* 3ed63a403236
* a20f977e123d
* f567f4aeef62
* 09f1e3e3c19a
* d141b8e84772
* 5a56c5392288
* 1690e3a42d1c
* 82b11d582d4e
* e7d95ae95836
* 3b7d2b31079d
* b42a0f893345
* a3e7c9bc7fb6 (user: js, size: 7894) [annotate] [blame] [check-ins using]
Legend: * Changes of existing features or bugfixes. + New features. ObjFW 0.4-alpha1 -> 0.4-alpha2, XX.XX.2011 * Fixed a nasty typo in OFDate that could lead to date differences being wrong about a second. * Possible SIGPIPEs are now ignored when using OFStream. * Documentation fixes. * Replaced -[sleepForNMilliseconds:] with -[sleepForTimeInterval:microseconds:]. + Added +[sleepUntilDate] to OFDate. * Some systems don't allow usleep for values > 1000000, so we use sleep and usleep sequentially now to sleep the correct time. + Family is now autodetected in -[bindService:onNode:]. * -[writeLine:] does not send two packets anymore. + -framework is now allowed in ObjFW compile. * errNo of socket related exceptions is now correctly set to ENOTCONN on Win32. * Fixed missing retain + autorelease in TLS-object handling. * Renamed +[tlsKey] to +[TLSKey] to conform to the convention. * Added missing files to .xcodeproj. * Got rid of a few useless #ifdefs. * Fixed a missing include (about which for some strange reason only clang complains). + Added + as a prefix in -[OFString decimalValue]. * enums are now defined using typedef. * Updated the buildsys, fixes make install when only building a static library. * Made OFBlocks compile with ObjFW-RT. + Added +[thread] to OFThread and allow -[init]. * Removed useless variables from objfw-compile. ObjFW 0.3.1 -> 0.4-alpha1, 03.01.2011 * ObjFW is now available under the terms of the QPL, GPLv2 and GPLv3. + Support for blocks was added, including a blocks runtime. + Added support for the new GNU runtime, introduced in GCC 4.6. * Objects returned from collections are no longer retained and autoreleased. + Added new classes OFXMLParser, OFXMLElement, OFXMLAttribute and OFXMLElementBuilder. + Added new class OFStreamObserver to observe streams. + Added new class OFDate for storing dates. + Many new methods in almost all classes. * OFAutoreleasePool was optimized. * Handling of ASCII strings was optimized. * OFSocket was renamed to OFStreamSocket. * OFConstString was renamed to OFConstantString. * objfw-compile now has a new syntax. + objfw-compile can now compile libraries and plugins. * Many small changes and new features that would be too much to list here. The diff between 0.3.1 and 0.4-alpha1 has almost 24000 lines! ObjFW 0.3 -> 0.3.1, 19.06.2010 * Fix a typo in OFMutableDictionary that prevented termination in case the last bucket is already used when the dictionary is resized. * The mutations pointer is now correctly initialized in enumerators for immutable collections. * The objc_sync test was still using the old threads API and was updated to use the new one now. * PLATFORMS has been updated to be more specific. ObjFW 0.2.1 -> 0.3, 09.05.2010 + Many new methods were added to different classes. + A huge amount of methods was added to OFStream, allowing easy binary stream handling and even mixing string-based and binary operations. + An optional write buffer was added to OFStream. + OFSeekableStream was added for streams that allow seeking, for example OFFiles. * OFNumber was completely reworked and got many new features now. * Large parts of OFDictionary were rewritten for better readability, better memory usage and to fix a bug with removing objects. * OFThread has been greatly improved. * Many small optimizations. * Many documentation improvements. * Method replacing was reworked and the methods renamed. + Tests for OFStream were added. * A bug with building ObjFW as a Universal Binary Framework was fixed. + Support for ObjFW-RT, the ObjFW Objective C runtime, was added. * Sockets are now properly closed before an exception is thrown. * Error handling with sockets was improved. * OFFile now uses open(), read() and write(), thus allowing -[readLine] to be used on of_stdin and fixing many other annoyances. * A few misc methods were renamed. + OFApplication was added. * All tests and the table generator are now using OFApplication. + It is now possible to get the remote address of an OFTCPSocket. + OFString can now build paths in the OS-native format. + It is now possible to create a string with the contents of a file. + Many new file operations were added to OFFile. * The existing file operations in OFFile were improved. * Almost all functions that returned self before now return void. + OFHash was added as a superclass for OFMD5Hash and OFSHA1Hash and OFHashes renamed to OFHash. + objfw-compile was added for easy compilation of ObjFW projects, which includes dependency checking for headers etc. * The instance variable naming convention was changed so that properties work. + Properties were added to the interfaces and are used if they are supported by the compiler. + The library version is now included in the resulting dylib and libobjc is reexported now. Additionally, objfw-config offers --reexport now to produce libraries that link against ObjFW and reexport it. ObjFW 0.2 -> 0.2.1, 14.03.2010 * Fix for OFNumbers not doing calculations. * Improved -[hash] for OFNumbers with floats and doubles. + Tests for OFNumber. * Small optimization for OFArray's -[componentsJoinedByString:]. * Documentation improvements. * Updated copyright. ObjFW 0.1.2 -> 0.2, 01.02.2010 + Support for ObjC 2 Fast Enumerations on every platform which has compiler support for fast enumerations. + Support for ObjC 2 properties on every platform with compiler support. + Fast Enumeration through arrays and dictionaries. * OFIterator has been removed. + OFEnumerator was added to replace OFIterator, which is more general and works with arrays and dictionaries. + Portable implementation for atomic operations. + Portable implementation for spinlocks. They use atomic operations if available, if not they fall back to pthread spinlocks. If both are unavailable, mutexes are used as a last fallback. * -[retain] and -[release] are now atomic. If no atomic operations are available, spinlocks are used (which can fall back to mutexes, see above). * -[readLine] now handles \r\n without having the \r included in the returned line. + OFThread now has -[tryLock]. * Mutation methods have been removed from immutable interfaces, thus already giving an error at compilation instead of at runtime. * Dependencies between headers have been reduced, leading to faster compile times. * The interfaces of OFSocket and OFStream were cleaned up and some methods were moved to OFTCPSocket, as they make sense only there. * File methods unavailable on Windows don't throw an exception at runtime anymore, but instead are not even in the interface on Windows. This way, it is a compile time error instead of a runtime error. ObjFW 0.1.1 -> 0.1.2, 15.01.2010 * Fix a bug in OFMutableArray's -[removeObject:] and -[removeObjectIdenticalTo:] that could lead to not removing all occurrences of the object from the array and to out of bounds reads. * Change the URL in the framework plist to the homepage. ObjFW 0.1 -> 0.1.1, 04.01.2010 * Fix a missing out of range check for -[removeNItems:atIndex:] that allowed the programmer to specify too big ranges so it would crash instead of throwing an exception. * Fix missing calls to -[retain] and -[autorelease] when getting objects from an OFArray or OFDictionary. * Safer and more fault-tolerant way to remove objects from an OFMutableArray. * Calling +[dealloc] throws an exception now. If someone really calls [SomeClass dealloc], this should be punished and not ignored, as this is a serious programmer error. * -[readLineWithEncoding:] is more fault-tolerant now and does not lose data when it stumbles upon invalid encoding. Instead, it allows recalling with the correct encoding now. ObjFW 0.1, 24.12.2009 + Initial release