2009-08-20 Douglas Simons * Source/NSUserDefaults.m: Protect locks against being lost if an exception is raised. 2009-04-18 10:15-EDT Gregory John Casamento * Source/GSURLPrivate.h: Addition of private method to NSURLProtocol category. * Source/NSURLConnection.m: Changes to use the new method and to correct bug #26107. Patch by: doug@riverrock.org * Source/NSURLProtocol.m: Addition of static method to look up class which can handle the given connection protocol. Patch by: doug@riverrock.org 2009-04-16 Richard Frith-Macdonald * Headers/Foundation/NSHasTable.h: new OSX 10.5 API * Source/NSHashTable.m: New abstract class * Source/NSConcreteHashTable.m: concrete implementation * Source/NSKeyValueObserving.m: Fix incorrect hash table references. 2009-04-13 Richard Frith-Macdonald * Source/GSString.m: Change placeholder string initialisation so that, in a GC world, it checks to see if the buffer passed to it is collectable and forces a copy if it isn't. This prevents memory leaks when a malloc'ed buffer is passed to the initialiser. 2009-04-11 Richard Frith-Macdonald * Source/GSPrivate.h: New private functions. * Source/NSObject.m: Add function to swizzle isa pointer safely. * Source/NSZone.m: Add function to check for collectable memory. * Source/NSData.m: Add finalisation for shared memory and mapped files. Add finalized subclasses to deal with memory which must be freed when the NSData is collected. 2009-04-11 01:12-EDT Gregory John Casamento * Source/NSLock.m: Move the warning to a debug log. 2009-04-10 Richard Frith-Macdonald * Source/cifframe.m: * Source/callrame.m: Update for GC to use scanned memory to hold pointers we got from the stack so that memory will persist as long as the invocation needs it. 2009-04-10 Richard Frith-Macdonald * Source/GSPrivate.h: * Source/NSString.m: * Source/NSObject.m: * Source/GSString.m: * Source/NSZone.m: GC tweaks ... Improve realloc when in gc world. 2009-04-03 Adam Fedor * Source/NSObject.m: Revert previous patch (David to fix up later). 2009-03-31 Richard Frith-Macdonald * Headers/Foundation/NSInvocation.h: * Source/NSInvocation.m: Remove unused private method pointed out by David Chisnall. 2009-03-31 Richard Frith-Macdonald * Headers/Foundation/NSDebug.h: * Source/mframe.m: * Source/NSObject.m: Cleanups for building with other compilers as suggested/provided by David Chisnall. 2009-03-29 Richard Frith-Macdonald * Source/NSString.m: Fix error in parsing root of UNC path 2009-03-28 Fred Kiefer * Source/NSSocketPort.m (-receivedEvent:...forMode:): Fix usage of ET_WDESC for MINGW32. 2009-03-24 Richard Frith-Macdonald * Source/GSSocketStream.h: * Source/GSSocketStream.m: Avoid unnecessary memory allocation. Use weak pointers to break finalisation cycles. * Source/NSZone.m: Use GC debug unless built with 'debug=no' Allocate memory ignoring pointers into the allocated data. 2009-03-21 Richard Frith-Macdonald * configure.ac: * configure: * Headers/Additions/GNUstepBase/config.h.in: * Source/NSDebug.m: Try using sigsetjmp for dealing with signals during stack trace, in case it helps work arouns bugs in signal handling. 2009-03-21 Richard Frith-Macdonald * Source/NSMessagePort.m: * Source/NSSocketPort.m: Fix to treat exceptional (out of band) event as meaning a readable rather than a writable descriptor. 2009-03-20 Richard Frith-Macdonald * Source/NSURLCredential.m: * Source/NSURLAuthenticationChallenge.m: * Source/NSURLDownload.m: * Source/NSURLCredentialStorage.m: * Source/NSURLResponse.m: * Source/NSURLProtocol.m: * Source/NSURLCache.m: * Source/NSHTTPCookieStorage.m: * Source/NSCachedURLResponse.m: * Source/NSHTTPCookie.m: * Source/NSURLProtectionSpace.m: * Source/GSHTTPAuthentication.m: * Source/NSURLRequest.m: * Source/NSXMLParser.m: * Source/NSURLConnection.m: Fix some errors in header comments. 2009-03-18 Richard Frith-Macdonald * Source/NSNotificationQueue.m: Fix dealloc bug pointed out by Larry Campbell. 2009-03-18 Richard Frith-Macdonald * Source\win32\GSFileHandle.m: * Source\win32\NSMessagePort.m: * Source\win32\NSMessagePortNameServer.m: * Source\NSConcreteMapTable.m: * Source\Additions\GSCompatibility.m: * Source\Additions\GSCategories.m: * Source\NSData.m: Fixes for windows and changes to GC code, plus changes for old compilers which don't support anonymous unions, plus improvement to error reporting on windows, plus fix to correctly rename protected files if possible. 2009-03-16 Richard Frith-Macdonald * Source/NSConcretePointerFunctions.h: Minor GC tweaks * Source/NSMessagePortNameServer.m: Fix map table declaration * Source/NSKeyedUnarchiver.m: ditto * Source/NSKeyValueObserving.m: ditto * Source/NSObject.m: ditto * Source/GNUmakefile: Add NSConcreteMapTable.m * Source/NSConcreteMapTable.m: New file for new class * Source/NSMapTable.m: Change to be an abstract class * Headers/Foundation/NSMapTable.h: Add new MacOS-X 10.5 API * Headers/Additions/GNUstepBase/GSIMap.h: Some changes for new map table API. 2009-03-12 Bernard Cafferelli * configure.ac: Add --disable-zeroconf option to control whether NSNetServices (and a dependency on libdns_sd) is enabled. 2009-03-10 Richard Frith-Macdonald * Headers/Additions/GNUstepBase/GSIArray.h: * Source/NSNotificationCenter.m: * Source/NSRunLoop.m: * Source/NSZone.m: Various small GC bugfixes to get more of testsuite passing. 2009-03-09 Richard Frith-Macdonald * Headers/Additions/GNUstepBase/GSIArray.h: * Headers/Additions/GNUstepBase/GSIMap.h: * Headers/Foundation/NSZone.h: * Source/Additions/GSInsensitiveDictionary.m: * Source/Additions/Unicode.m: * Source/GSAttributedString.m: * Source/GSCountedSet.m: * Source/GSDictionary.m: * Source/GSPrivate.h: * Source/GSSet.m: * Source/NSArchiver.m: * Source/NSConnection.m: * Source/NSHashTable.m: * Source/NSKeyedArchiver.m: * Source/NSKeyedUnarchiver.m: * Source/NSMapTable.m: * Source/NSNotificationCenter.m: * Source/NSPortCoder.m: * Source/NSRunLoop.m: * Source/NSSerializer.m: * Source/NSURL.m: * Source/NSZone.m: * Source/unix/GSRunLoopCtxt.m: * Source/win32/GSRunLoopCtxt.m: More moves towards OSX 10.5 GC compatibility. With GC add some use of typed memory and remove the old GNUstep specific GSAtomicMallocZone() from public API. Still needs new NSHashTable and NSMaptable implementations. 2009-03-08 Richard Frith-Macdonald * Source/GSSocketStream.m: * Source/GSStream.m: * Source/NSConnection.m: * Source/NSKeyedArchiver.m: * Source/NSKeyedUnarchiver.m: * Source/NSObject.m: * Source/NSPort.m: * Source/NSXMLParser.m: GC tweaks to use new API. 2009-03-06 Richard Frith-Macdonald * Source/NSObject.m: Remove unused code for holding reference counts in an external map. 2009-03-02 Richard Frith-Macdonald * Source/GSHTTPURLHandle.m: Implement new mechanism for handling SOAP responses with HTTP status 500. Interim measure lntil the NSURLConnection family of class is more complete. 2009-03-01 Fred Kiefer * Source/NSBundle.m (-localizedStringForKey:value:table): Correct output when NSShowNonLocalizedStrings is YES. 2009-02-28 Richard Frith-Macdonald * Source/NSURLProtocol.m: Fix for retry with authentication based on patch by Philippe Roussel 2009-02-27 Richard Frith-Macdonald * Source/NSKeyValueCoding.m: Fix for bug #25720 as suggested by Michael Johnston 2009-02-26 Richard Frith-Macdonald * Source/NSCharacterSetData.h: * Source/GSRunLoopWatcher.h: * Source/GSRunLoopWatcher.m: * Source/GSRunLoopCtxt.h: Add missing copyright/license comments. 2009-02-25 Richard Frith-Macdonald * Source/NSUndoManager.m: Revert last change (to match OSX 10.5) Also rework a little to recreate undocumented OSX behavior of implicitly creating a top-level undo group if -beginUndoGroup is called for a manager configured with groupByEvent. 2009-02-23 Richard Frith-Macdonald * Source/NSIndexPath.m: * Source/GSSocketStream.h: * Source/NSTimeZone.m: * Source/NSNetServices.m: * Source/NSURLCredential.m: * Source/GSSocketStream.m: * Source/NSURLAuthenticationChallenge.m: * Source/NSCalendarDate.m: * Source/NSPropertyList.m: * Source/GSConcreteValueTemplate.m: * Source/NSAffineTransform.m: * Source/NSConcretePointerFunctions.h: * Source/NSPathUtilities.m: * Source/NSScanner.m: * Source/NSProcessInfo.m: * Source/NSDistributedNotificationCenter.m: * Source/NSNotificationQueue.m: * Source/NSGeometry.m: * Source/NSConcretePointerFunctions.m: * Source/NSRunLoop.m: * Source/NSAttributedString.m: * Source/NSUndoManager.m: * Source/NSMethodSignature.m: * Source/NSUserDefaults.m: * Source/NSArray.m: * Source/GSStream.h: * Source/GSStream.m: * Source/NSKeyedArchiver.m: * Source/NSDebug.m: * Source/unix/NSStream.m: * Source/NSKeyedUnarchiver.m: * Source/NSURLDownload.m: * Source/NSPredicate.m: * Source/NSAssertionHandler.m: * Source/NSZone.m: * Source/NSPort.m: * Source/GSPrivate.h: * Source/win32/NSStream.m: * Source/NSInvocation.m: * Source/NSFileManager.m: * Source/NSURLResponse.m: * Source/NSURLCache.m: * Source/NSCoder.m: * Source/NSException.m: * Source/NSCopyObject.m: * Source/NSURL.m: * Source/NSString.m: * Source/NSObject.m: * Source/NSDecimalNumber.m: * Source/cifframe.m: * Source/Additions/GCArray.m: * Source/Additions/GSXML.m: * Source/Additions/GCDictionary.m: * Source/Additions/GSCategories.m: * Source/Additions/GSMime.m: * Source/NSNumber.m: * Source/NSDecimal.m: * Source/GSString.m: * Source/NSThread.m: * Source/NSHTTPCookie.m: * Source/NSData.m: * Source/NSProxy.m: * Source/NSURLProtectionSpace.m: * Source/NSError.m: * Source/NSDictionary.m: * Source/NSURLRequest.m: * Source/NSValue.m: * Source/NSCountedSet.m: * Source/NSIndexSet.m: * Source/GSFileHandle.m: * Source/NSLock.m: * Source/NSSet.m: * Source/NSArchiver.m: * Source/NSXMLParser.m: * Source/GSURLPrivate.h: * Headers/Foundation/NSTimeZone.h: * Headers/Foundation/NSNetServices.h: * Headers/Foundation/NSCoder.h: * Headers/Foundation/NSException.h: * Headers/Foundation/NSHTTPCookieStorage.h: * Headers/Foundation/NSURLAuthenticationChallenge.h: * Headers/Foundation/NSCompoundPredicate.h: * Headers/Foundation/NSObject.h: * Headers/Foundation/NSSpellServer.h: * Headers/Foundation/NSString.h: * Headers/Foundation/NSCalendarDate.h: * Headers/Foundation/NSDecimalNumber.h: * Headers/Foundation/NSURLHandle.h: * Headers/Foundation/NSPropertyList.h: * Headers/Foundation/NSAffineTransform.h: * Headers/Foundation/NSPathUtilities.h: * Headers/Foundation/NSScanner.h: * Headers/Foundation/NSProcessInfo.h: * Headers/Foundation/NSDistributedNotificationCenter.h: * Headers/Foundation/NSStream.h: * Headers/Foundation/NSComparisonPredicate.h: * Headers/Foundation/NSGeometry.h: * Headers/Foundation/NSNotificationQueue.h: * Headers/Foundation/NSRunLoop.h: * Headers/Foundation/NSDecimal.h: * Headers/Foundation/NSAttributedString.h: * Headers/Foundation/NSUndoManager.h: * Headers/Foundation/NSMethodSignature.h: * Headers/Foundation/NSUserDefaults.h: * Headers/Foundation/NSThread.h: * Headers/Foundation/NSData.h: * Headers/Foundation/NSHTTPCookie.h: * Headers/Foundation/NSArray.h: * Headers/Foundation/NSObjCRuntime.h: * Headers/Foundation/NSProxy.h: * Headers/Foundation/NSURLProtectionSpace.h: * Headers/Foundation/NSKeyedArchiver.h: * Headers/Foundation/NSDebug.h: * Headers/Foundation/NSError.h: * Headers/Foundation/NSURLDownload.h: * Headers/Foundation/NSKeyValueObserving.h: * Headers/Foundation/NSDictionary.h: * Headers/Foundation/NSURLRequest.h: * Headers/Foundation/NSZone.h: * Headers/Foundation/NSValue.h: * Headers/Foundation/NSIndexSet.h: * Headers/Foundation/NSPort.h: * Headers/Foundation/NSLock.h: * Headers/Foundation/NSSet.h: * Headers/Foundation/NSExpression.h: * Headers/Foundation/NSInvocation.h: * Headers/Foundation/NSFileManager.h: * Headers/Foundation/NSXMLParser.h: * Headers/Foundation/NSURLResponse.h: * Headers/Foundation/NSIndexPath.h: * Headers/Foundation/NSURLCache.h: * Headers/Additions/GNUstepBase/GSXML.h: * Headers/Additions/GNUstepBase/GSCategories.h: * Headers/Additions/GNUstepBase/GSMime.h: * Headers/Additions/GNUstepBase/GSFileHandle.h: * Tools/gdnc.h: * Tools/gdnc.m: Conversion of everything to use the new MacOS-X 10.5 API where return values and arguments use the NSInteger, NSUInteger, and CGFloat types. For now, as suggesed by David, the proper 10.5 behavior is turned off and those types are equivalent to the types used by the old API. Edit Headers/Foundation/NSObjCRuntime.h to turn on the new behavior where the integer types are the same size as a pointer, and the float type is actually a double on 64bit processors. 2009-02-23 Richard Frith-Macdonald * Source/NSPortCoder.m: make float and double interchangable to cope with MacOS-X 10.5 API which can use either for CGFloat. 2009-02-23 Richard Frith-Macdonald * Headers/Foundation/NSGeometry.h: * Source/NSGeometry.m: Inspired by Matt Rice's comments on NSEqualRects(), moved the equality testing functions from the header to the implementation file and added conditionally compiled code to allow us to do a fuzzy equality test. Still need to decide whether this is actually the correct thing to do though. 2009-02-22 Richard Frith-Macdonald * Source/NSUnarchiver.m: make float and double interchangable to cope with MacOS-X 10.5 API which can use either for CGFloat. * Source/NSXMLParser.m: optimize sloppy parser somewhat. 2009-02-21 Richard Frith-Macdonald * Source/mframe/i386/linux: * Source/mframe/i386/sysv4.2MP: * Source/mframe/i386/linux-gnu: * Source/mframe/i386/sysv4.2uw2.1.3: * Source/mframe/i386/freebsd: * Source/mframe/i386/openbsd: * Source/mframe/i386/generic: Update/fix macro to build method signature information. 2009-02-20 Richard Frith-Macdonald * configure.ac: Add checks for backtrace() function * Headers/Additions/GNUstepBase/config.h.in: regenerate * configure: regenerate * Source/NSDebug.m: Use backtrace() to get stack if possible ... it's more reliable than gcc's __builtin_frame_address() function. * Source/cifframe.m: Allocate a slightly larger buffer when processing invocations ... somehow this fixes a write outside allocated memory by the ffi library on my 64bit debian system. 2009-02-17 Richard Frith-Macdonald * Source/NSUndoManager.m: Don't post checkpoint notification when beginning top level group. Fix for #25607 2009-02-16 Adam Fedor * configure.ac: Look in LOCAL for headers/libs * Headers/Foundation/NSObjCRuntime.h: Define NSINTEGER_DEFINED. * Headers/Additions/GNUstepBase/GSCategories.h, Headers/Additions/GNUstepBase/GSUnion.h: Additional definitions to compile with apple-apple-apple. 2009-02-16 Richard Frith-Macdonald * Source/pathconfig/configure.ac: Warn if gnustep-config not found. * Source/pathconfig/configure: regenerate * Headers/Foundation/NSPointerArray.h: Add more comments. 2009-02-15 Richard Frith-Macdonald * Source/NSPointerArray.m: Initial implementation. Untested. No coding/decoding support. 2009-02-14 Richard Frith-Macdonald * Source/NSPointerFunctions.m: Add some more functions to be set by options. 2009-02-12 Richard Frith-Macdonald * Source/NSPortCoder.m: Use scanned memory to hold array * Source/NSKeyedUnarchiver.m: ditto * Source/NSFileManager.m: ditto 2009-02-11 Richard Frith-Macdonald * Source/NSUnarchiver.m: * Source/NSString.m: * Source/Additions/GSMime.m: * Source/NSData.m: * Source/GSHTTPAuthentication.m: * Source/NSSerializer.m: * Source/unix/GSRunLoopCtxt.m: * Source/win32/GSRunLoopCtxt.m: Various changes to use unscanned collectable memory with GC. 2009-02-11 Richard Frith-Macdonald * Source/NSNotificationCenter.m: Fix bug removing observations for collected observers. * Headers/Foundation/NSGarbageCollector.h: * Source/NSGarbageCollector.m: * Source/NSObject.m: Update the behavior of the -zone method to match MacOS-X 10.5 and always return the default zone when used with GC. 2009-02-10 Richard Frith-Macdonald * Source/NSConcretePointerFunctions.h: * Source/NSConcretePointerFunctions.m: * Source/NSPointerFunctions.m: * Source/NSPointerArray.m: * Source/GNUmakefile: Partial implementation of concrete pointer functions class. 2009-02-09 Xavier Glattard * Headers/Foundation/NSPredicate.h: * Source/NSPredicate.m: Declare and implement two new methods for filtering NSSet: * [-filterUsingPredicate:] * [+filteredSetUsingPredicate:] 2009-02-09 Richard Frith-Macdonald * Source/win32/NSMessagePortNameServer.m: Fix GC error on windows as reported by Ly Liyi * configure.ac: Check for new GC_allow_register_threads() function. * Source/NSThread.m: Attempt to fix thread registration for GC. * Source/NSObject.m: Initialise finalize on mingw as well as unix. * Source/NSZone.m: Remove unnecessary casts. 2009-02-09 Matt Rice * Headers/Foundation/NSZone.h (GSMakeWeakPointer): Rename class variable to theClass for objc++. 2009-02-09 Richard Frith-Macdonald * Source/NSArray.m: Implement new methods for inserting and replacing objects at indexes in an NSIndexSet. * Headers/Foundation/NSObject.h: Minor whitespace fix * Source/NSNetServices.m: Mark unimplemented method. * Headers/Foundation/NSXMLDocument.h: new class * Headers/Foundation/NSXMLNode.h: new class * Headers/Foundation/NSXMLNodeOptions.h: new class * Headers/Foundation/NSXMLDTD.h: new class * Headers/Foundation/NSXMLDTDNode.h: new class * Headers/Foundation/NSXMLElement.h: new class * Headers/Foundation/Foundation.h: Add new class headers * Source/NSXMLDocument.m: skeleton of class * Source/NSXMLDTD.m: skeleton of class * Source/NSXMLNode.m: skeleton of class * Source/NSXMLDTDNode.m: skeleton of class * Source/NSXMLElement.m: skeleton of class * Source/NSXMLPrivate.h: Private header for all NSXMLNode based stuff. * Source/GNUmakefile: Add new NSXML classes * Source/DocMakefile: ditto Mostly, add the (unimplemented) XML classes introduced in the latest version of MacOS-X. Currently the classes are unimplemented method stubs, but the idea is to wrap libxml2 in a similar way to that in which GSXML does it. NB. The current ivar layout is reverse engineered from MacOS-X on the assumption that we will try to be extremely compatible and use the same (inferred) mechanism of having the libxml2 tree be the master data and only using the objc ivars to cache information when we retrieve it in the form of NSStrings etc. Maybe we will chose to do something different later. 2009-02-09 Richard Frith-Macdonald * Source/Additions/GSObjCRuntime.m: Correct error comparing method signatures. Fixes bug #25520 2009-02-04 Richard Frith-Macdonald * Source/NSBundle.m: Use pointerValue rather than nonretainedObjectValue to hold classes ... because the garbage collector might collect the latter, and we really just need to hold references to classes without sending messages to them. * Headers/Additions/GNUstepBase/GSIArray.h: Alterations for noe Apple GC API * Source/NSIndexSet.m: Use scanned memory for arrays. 2009-02-04 15:00-EST Gregory John Casamento * Source/NSUnarchiver.m: Correct issue with printing class name when the unarchiver can't find the class. 2009-02-04 Richard Frith-Macdonald * Source/NSMapTable.m: * Source/NSHashTable.m: * Source/NSPortCoder.m: * Source/NSKeyedArchiver.m: * Source/NSGarbageCollector.m: * Source/NSZone.m: * Source/GSDictionary.m: * Source/GSCountedSet.m: * Source/GSAttributedString.m: * Source/NSNotificationCenter.m: * Source/Additions/GSInsensitiveDictionary.m: * Source/GSSet.m: * Source/NSConnection.m: * Source/NSSerializer.m: * Source/NSArchiver.m: * Headers/Foundation/NSZone.h: * Headers/Additions/GNUstepBase/GSIMap.h: Scrap GSScannedMallocZone().. not really needed. 2009-02-04 Richard Frith-Macdonald * Source/NSURLProtocol.m: Add some diagnostics and ensure that delegates are removed from streams. * Source/NSURLConnection.m: Add diagnostics for redirect. * Source/GSStream.m: Set delegate to nil after failure. 2009-02-04 David Chisnall * Source/GSArray.m: Further fast enumeration bugfixes. * Source/GSEnumerator.m: ditto. 2009-02-03 Richard Frith-Macdonald * Source/NSZone.m: Restore binary compatibility with earlier code. Thanks to David Chisnall for the idea. 2009-01-30 Richard Frith-Macdonald * Source/NSURL.m: For file URL, make relative path absolute. * Source/GSHTTPURLHandle.m: * Source/Additions/GSMime.m: Change HTTP status code to be an NSNumber rather than NSString for MacOS-X compatibility 2009-01-30 Richard Frith-Macdonald * Documentation/readme.texi: * README: Remove reference to Testing * Examples/nsconnection_server.m: * Examples/diningPhilosophers.m: * Examples/nsconnection_client.m: * Examples/nsconnection.m: Transferred from Testing * Testing: removed Removed Testing subdirectory. Now that locking tests are in the testsuite all the code here is probably obsolete. If we find any cases where that's not the case, we should recover anything we need from svn and add it to the testsuite. 2009-01-30 Richard Frith-Macdonald * Source/NSLock.m: Fixed last change to match MacOS-X behavior. 2009-01-29 17:49-EST Gregory John Casamento * Source/NSLock.m: Change to correct documented/tested and observed inconsistency between Cocoa (and OpenStep) and GNUstep. Reinstatement of correction for bug #25307. Testing on both OpenStep and on Cocoa clearly illustrates that throwing an exception in this case was incorrect. It now emits a warning when the lock is attempted again, but does not throw an exception. * Testing/locktest/locktest.m: Change to test to correctly test [NSConditionLock lock] 2009-01-28 21:48-EST Gregory John Casamento * Testing/locktest/GNUmakefile * Testing/locktest/GNUmakefile.preamble * Testing/locktest/locktest.1 * Testing/locktest/LockTestInfo.plist * Testing/locktest/locktest.m * Testing/locktest/locktest_Prefix.pch * Testing/locktest/locktest.xcodeproj/project.pbxproj * Testing/locktest/PC.project: Test which confirms the behavior observed on Mac OS X/Cocoa. 2009-01-28 Richard Frith-Macdonald * Source/NSEnumerator.m: Fix bug in fast enumeration code. * Source/GSArray.m: Fix bug in array insertion introduced by last patch. 2009-01-28 David Chisnall * Headers/Foundation/NSEnumerator.h: * Source/NSEnumerator.m: * Source/GSArray.m: * Source/GSprivate.h: Add Apple's fast enumeration protocol. 2009-01-28 Richard Frith-Macdonald * Source/NSException.m: Fix problem preventing stack traccces from being generated. 2009-01-27 Richard Frith-Macdonald * Source/NSValue.m: ([valueWithNonretainedObject:]) zero the reference when the object is collected. 2009-01-25 Richard Frith-Macdonald * Source/NSURL.m: Compatibility tweaks for a few MacOS-X oddities... Initialise file URLs with a host of 'localhost' even though they should really have none. Return paths without a trailing slash, even when they were set with one. 2009-01-25 Richard Frith-Macdonald * Source/NSString.m: Fix for bug #25400 * Tools/gdnc.m: Fix failure to log exception (bug #25396) * Tools/gdomap.c: Use snprintf for paranoid double check of data in log buffer. 2009-01-23 Riccardo Mottola * Source/NSPointerFunctions.m, * Headers/Foundation/NSPointerFunctions.h: Fix return pointer type 2009-01-23 Richard Frith-Macdonald * Headers/Additions/GNUstepBase/GNUstep.h: Optimise retain/release management macros for the case where they are dealing with none-nil values. * Headers/Additions/GNUstepBase/GSIMap.h: Some changes moving towards use of typed memory for gc. * Headers/Foundation/NSPointerArray.h: New class header. * Source/NSPointerArray.m: Skeletal (non-working) implementation 2009-01-22 Richard Frith-Macdonald * Source/GSHTTPURLHandle.m: Improve debug logging by including the address of the actual handle concerned so that you can see which handle is doing what when there are multiple handles in use. * Source/NSGarbageCollector.m: Implement last methods. * Headers/Foundation/NSGarbageCollector.h: Improve documentation. * Source/NSAutoreleasePool.m: ([-drain[) Implemented. * Headers/Foundation/NSAutoreleasePool.m: ([-drain]) fix comment. * Source/NSPointerFunctions.m: New class implementation * Headers/Foundation/NSPointerFunctions.h: Fix some declarations * Headers/Foundation/Foundation.h: Include NSPointerFunctions.h * Source/GNUmakefile: Build and install NSPointerFunctions 2009-01-21 Richard Frith-Macdonald * Source/NSUserDefaults.m: ([setObject:forKey:]) copy the object rather than just retaining it. Fixes bug #23570 2009-01-20 Richard Frith-Macdonald * Documentation/manual/ExceptionHandling.texi: Fix error in example of use of NS_VALUERETURN spotted by David Chisnall. 2009-01-20 Richard Frith-Macdonald * Source/NSKeyValueObserving.m: Automtically remove collected observers In a garbage collecting environment. * Headers/Foundation/NSZone.h: * Source/NSZone.m: Add new functions for handling weak pointers. This allows all code which uses the boehm garbage collector header to be localised in NSZone.m and NSGarbageCollector.m * Source/NSNotificationCenter.m: Update to use new functions. * Source/Additions/GSInsensitiveDictionary.m: Fix to use scanned memory in a garbage collecting environment. 2009-01-19 Richard Frith-Macdonald * configure.ac: Add options from pathconfig * configure: regenerate 2009-01-19 Richard Frith-Macdonald * Headers/Foundation/NSZone.h: * Source/NSZone.m: Add NSAllocateCollectable() and NSReallocateCollectable() functions. Move inline stuff from header to source fle so that GC differences are hidden. Change behavior under GC so that the default malloc zone is non-collectable (as under MacOS-X). * Headers/Additions/GNUstepBase/GSIMap.h: Use scanned collectable memory for map. * Source/Additions/GSObjCRuntime.m: Use NSAllocateCollectable() for fast buffer. * Source/GSArray.m: * Source/GSCountedSet.m: * Source/GSDictionary.m: * Source/GSSet.m: * Source/NSArchiver.m: * Source/NSConnection.m: * Source/NSHashTable.m: * Source/NSKeyedArchiver.m: * Source/NSMapTable.m: * Source/NSNotificationCenter.m: * Source/NSObject.m: * Source/NSPortCoder.m: * Source/NSSerializer.m: * Source/NSPropertyList.m: Use scanned collectable memory in places where we allocate memory to hold pointers. This change is needed because of the switch to have the default zone use unscanned uncollectable memory as in MacOS-X. These changes probably just scratch the surface ... we need to review all memory allocation as, anywhere we allocate memory now will need to be done differently under GC. This does mean that all existing code needs more work to port to GC than it otherwise would. On the other hand, a switch to GC is really quite a major design change. 2009-01-17 Wolfgang Lux * Source/unix/GSRunLoopCtxt.m (+awakenedBefore): Fix typo. 2009-01-17 Richard Frith-Macdonald * Source/NSLock.m: Revert last change. The Cocoa documentation actually says nothing about exceptions either way. I recall there was some discussion about lock behavior a few years ago, which concluded that the GNUstep behavior was the best available ... it returns NO if the lock is unavailable, but raises an exception if you try to lock the lock twice from the same thread, since locking twice from the same thread is almost guaranteed to be a programming error. If we want to remove this check, we need to do it consistently for all locks and document the new behavior. 2009-01-16 17:26-EST Gregory John Casamento * Source/NSLock.m: Correction for bug #25307. According to Cocoa documentation, NSConditionLock should return NO, if the lock is unavailable. No exception should be thrown. 2009-01-16 Richard Frith-Macdonald * Source/NSRunLoop.m: Revert temporary hack to work around bug in NSAnimation, hopefully fixed in NSAnimation now. 2009-01-15 Richard Frith-Macdonald * Source/NSRunLoop.m: Cleaned up a little and added hack as a temporary fix for #25327, though I'm suspecting that the actual problme is in the NSAnimation code. 2009-01-15 Richard Frith-Macdonald * Source/NSRunLoop.m: * Source/unix/GSRunLoopCtxt.m: * Source/GSRunLoopCtxt.h: * Source/win32/GSRunLoopCtxt.m: Introduce new method to quickly check for notification of methods to perform in the current loop. 2009-01-14 Richard Frith-Macdonald * Source/NSGarbageCollector.m: Avoid compiler warning * Source/pathconfig/pathconfig.mak.in: Fix syntax error in warning * Headers/Additions/GNUstepBase/GSCategories.h: remove obsolete methods * GNUmakefile: Fix order of includes * Source/GSArray.m: Remove unused line from last change * Source/NSNotificationCenter.m: Remove unused line 2009-01-13 18:35-EST Gregory John Casamento * Source/GSArray.m * Source/NSNotificationCenter.m: Quick fixes for two compiler errors introduced by previous change. 2009-01-13 Richard Frith-Macdonald * Source/NSGarbageCollector.m: Mark the two unimplemented methods. * Source/NSNotificationCenter.m: Automatically remove observers if they are collected by the GC system. * Source/NSThread.m: Make the GC system aware of each thread if poss. * Source/GSArray.m: Don't use inline array class with GC. * configure.ac: Add check for GC_register_my_thread 2009-01-12 Richard Frith-Macdonald * Source/GNUmakefile: * Headers/Foundation/NSGarbageCollector.h: * Source/NSGarbageCollector.m: * Headers/Foundation/Foundation.h: Add new MacOS-X class. 2009-01-12 Richard Frith-Macdonald * Source/NSSocketPort.m: * Source/NSRunLoop.m: * Source/NSMessagePort.m: * Source/NSNotificationCenter.m: * Source/GSAttributedString.m: * Source/NSObject.m: * Source/Additions/GSLock.m: * Source/NSConnection.m: * Source/GSFileHandle.m: * Source/NSLock.m: * Source/NSDistantObject.m: * Source/NSTask.m: * SSL/GSSSLHandle.m: * Documentation/Base.ispell: * Headers/Foundation/NSObject.h: * Headers/Foundation/NSNotification.h: * Headers/Foundation/NSRunLoop.h: * Headers/Foundation/NSPort.h: * Headers/Foundation/NSLock.h: * Headers/Foundation/NSTask.h: * Headers/Additions/GNUstepBase/GSFileHandle.h: Change GC finalization API to match MacOS-X ... abandon libFoundation compatibility in GC behavior. 2009-01-12 Richard Frith-Macdonald * Source/NSIndexPath.m: * Source/NSSocketPortNameServer.m: * Source/NSTimeZone.m: * Source/GSInvocation.h: * Source/GSSocketStream.m: * Source/NSValueTransformer.m: * Source/NSPortCoder.m: * Source/NSSpellServer.m: * Source/NSBundle.m: * Source/NSURLHandle.m: * Source/NSPropertyList.m: * Source/NSPathUtilities.m: * Source/NSProcessInfo.m: * Source/NSDistributedNotificationCenter.m: * Source/GNUmakefile: * Source/NSSocketPort.m: * Source/NSRunLoop.m: * Source/NSUserDefaults.m: * Source/NSArray.m: * Source/NSMessagePortNameServer.m: * Source/NSDebug.m: * Source/NSKeyedUnarchiver.m: * Source/NSKeyValueObserving.m: * Source/GSHTTPURLHandle.m: * Source/GSFFIInvocation.m: * Source/NSMessagePort.m: * Source/NSInvocation.m: * Source/NSFileManager.m: * Source/NSURLResponse.m: * Source/NSURLProtocol.m: * Source/NSException.m: * Source/NSURL.m: * Source/NSString.m: * Source/NSObject.m: * Source/NSDecimalNumber.m: * Source/Additions/GSXML.m: * Source/Additions/GNUmakefile: * Source/Additions/GSCategories.m: * Source/Additions/GCDictionary.m: * Source/Additions/GSMime.m: * Source/GSString.m: * Source/NSConnection.m: * Source/NSThread.m: * Source/NSHost.m: * Source/NSProtocolChecker.m: * Source/GSHTTPAuthentication.m: * Source/NSSerializer.m: * Source/NSClassDescription.m: * Source/GSFileHandle.m: * Source/NSSet.m: * Source/NSDistantObject.m: * Source/NSTask.m: * Source/NSNumberFormatter.m: * Source/GSFTPURLHandle.m: * SSL/GSSSLHandle.m: * configure.ac: * configure: * base.make.in: * Tools/sfparse.m: * Tools/plget.m: * Tools/AGSParser.m: * Tools/autogsdoc.m: * Tools/AGSOutput.m: * Tools/HTMLLinker.m: Tweaks to get things to compile with garbage collection again and (mostly) compile without warnings. 2009-01-09 Richard Frith-Macdonald * Source/NSTimer.m: ([invalidate]) release target and user info. 2009-01-07 Richard Frith-Macdonald * Source/NSBundle.m: Revert last change. Remove undocumented code which looked for operating system specific files. Also changed behavior when given a nil/empty extension to match MacOS-X. Also optimised and simplified code and changed a private method which was missing the leading underscore. 2009-01-07 16:33-EST Gregory John Casamento * Source/NSBundle.m: Correct issue where *-gnustep.* is not searched for when explicitly calling pathForResource:... 2009-01-06 Richard Frith-Macdonald * configure: * config.mak.in: * Source/NSPathUtilities.m: * Source/GNUmakefile: * Source/pathconfig: * Source/pathconfig/configure: * Source/pathconfig/configure.ac: * Source/pathconfig/pathconfig.h.in: * Source/pathconfig/pathconfig.mak.in: * SSL/GNUmakefile: * configure.ac: * Documentation/GNUmakefile: * NSTimeZones/GNUmakefile: * GNUmakefile: * Tools/GNUmakefile: * Testing/GNUmakefile: Move path configuration stuff into separate subdirectry/file so that we can hack it more easily and so that only the code that needs it will include it. 2009-01-06 Nicola Pero * config.mak.in: Check here if GNUSTEP_BASE_DOMAIN and GNUSTEP_INSTALLATION_DOMAIN do not match when using relative paths. If they do not match, print a long explanation of how to fix the problem, and abort. If relative paths are not used, automatically set GNUSTEP_INSTALLATION_DOMAIN to the domain that was chosen at configure time - unless overridden on the command line. * Makefile.postamble: Removed before-all rule that was doing the check now in config.mak.in. * SSL/Makefile.postamble (config.mak): Touch config.mak after running config.status to prevent spurious invocations of config.status. (config.h): Always touch config.h after running config.status for the same reason. 2009-01-06 Nicola Pero * configure.ac: Detect relative paths in the paths that we hardcode into gnustep-base, and set the GNUSTEP_BASE_RELATIVE_PATHS variable if any is found. * configure: Regenerated. * config.mak.in: Added GNUSTEP_BASE_RELATIVE_PATHS. * Makefile.postamble: Only do the automatic reconfiguration at install time if GNUSTEP_BASE_RELATIVE_PATHS is set. Make the message printed when we reconfigure more prominent. 2009-01-05 17:58-EST Gregory John Casamento * Source/NSBundle.m: Use CFBundleExecutable if NSExecutable isn't present when loading the bundle object code. 2009-01-05 Fred Kiefer * Source/NSKeyValueObserving.m (-overrideSetterFor:): Only output a NSDebugLLog() not an NSLog() when the class has no setter for the key. 2009-01-05 Fred Kiefer * Source/NSString.m (-paragraphRangeForRange:, -getParagraphStart:...): Basic implementation of these methods. 2009-01-05 Richard Frith-Macdonald * Source/NSRunLoop.m: check for performers in thread even if there are no input sources available. * Source/unix/GSRunLoopCtxt.m: Add diagnostics * Source/win32/GSRunLoopCtxt.m: Add diagnostics * Testing/thread.m: Change to allow perform in maion thrad to take place and program to terminate. 2009-01-04 Richard Frith-Macdonald * Source/mframe/sparc64/generic: guess at a config * Source/mframe/sparc64/openbsd: guess at a config * Source/mframe/configure.ac: add sparc64 * Source/mframe/configure: regenerate Guess at config for sparc64 openbsd 2009-01-02 Richard Frith-Macdonald * Source/NSBundle.m: ([+bundleForLibrary:]) return nil if the supplied library name is empty. 2008-12-31 Fred Kiefer * Source/NSDecimalNumber.m (-initWithBytes:objCType:): Avoid memory leak and memory corruption by retaining notANumber before returning it. 2008-12-29 Richard Frith-Macdonald * Makefile.postamble (before-all): Remove test for mingw on situation which can occur on all systems, not just mingw. 2008-12-25 11:10-EST Gregory John Casamento * Source/GNUmakefile: Add new NSObjectNSComparisonMethods.m category to the makefile. * Source/NSObject+NSComparisonMethods.m: Added to implement Mac OS X specific methods for comparison of objects. On Cocoa these are in NSScriptWhoseTests.h, but since GNUstep doesn't support Apple Script I've put them in a separate category for now. Some applications use these to do comparisons (even though they are for scripting). The location of these may change in the future depending on if we implement scripting. 2008-12-24 Nicola Pero * configure.ac: Improved help for --with-installation-domain=xxx. If no --with-installation-domain=xxx option is used, and gnustep-config supports the new option --installation-domain-for=gnustep-base, use it to determine the installation domain as accurately as possible (including supporting the environment variable GNUSTEP_INSTALLATION_DOMAIN and the installation-domains.conf file). Otherwise fall back to LOCAL. If an invalid installation domain is provided on the command-line, abort with an error. * configure: Regenerated. * GNUmakefile: Set PACKAGE_NAME before importing common.make. Do not try to set GNUSTEP_BASE_DOMAIN or GNUSTEP_INSTALLATION_DOMAIN. * Makefile.postamble (before-all): Only check that GNUSTEP_BASE_DOMAIN matches GNUSTEP_INSTALLATION_DOMAIN on MinGW. Quote GNUSTEP_BASE_DOMAIN and GNUSTEP_INSTALLATION_DOMAIN to catch the case when one of them is empty. Added ECHO_NOTHING to the rule to suppress ugly code output. Print an error message when reconfiguring automatically. 2008-12-22 Richard Frith-Macdonald * Version: * Documentation/news.texi: * Documentation/ReleaseNotes.gsdoc: Update for new release. * configure.ac: Fix error checking for objc_set_unexpected * configure: regenerate 2008-12-22 Richard Frith-Macdonald * config.mak.in: * configure: * Makefile.postamble: * configure.ac: * GNUmakefile: Update from stable branch. 2008-12-21 Adam Fedor * Update documentation for version 1.18.0 2008-12-19 Nicola Pero * All GNUmakefiles: removed GNUSTEP_CORE_SOFTWARE=YES and added PACKAGE_NAME=gnustep-base. * GNUmakefile: Export PACKAGE_NAME to reduce chances of a problem if a GNUmakefile in a subdirectory is missing it. * Tools/make_strings/GNUmakefile: Do not set PACKAGE_NAME to make_strings. * Testing/synctest/GNUmakefile: Do not set PACKAGE_NAME to Synctest. 2008-12-19 Richard Frith-Macdonald * Source/NSPathUtilities.m: Merge in bugfixes from stable branch. 2008-12-18 Nicola Pero * All GNUmakefiles: added GNUSTEP_CORE_SOFTWARE=YES at the beginning. * GNUmakefile: Export GNUSTEP_CORE_SOFTWARE to reduce chances of a problem if a GNUmakefile in a subdirectory is missing it. * Documentation/General/GNUmakefile: Removed setting GNUSTEP_INSTALLATION_DOMAIN to SYSTEM. 2008-12-17 Richard Frith-Macdonald * Source/NSConnection.m: * Tools/gdnc.m: Enable keepalive only on mswindows and for server connections using NSMessagePort. 2008-12-16 Richard Frith-Macdonald * Source/NSLock.m: Tiny cleanup of lock finalisation process. 2008-12-15 Richard Frith-Macdonald * Source/NSURL.m: When initialising with schem, host and path, allow the host to contain username, password and port as well as just the host. Document this change (which seems to be how MacOS-X works). 2008-12-09 Wolfgang Lux * Source/unix/GSRunLoopCtxt.m (-pollUntil:within): Add missing local variable declaration and fix incorrect arguments for some receivedEvent:type:extra:forMode: messages in the select based implementation. 2008-12-08 Richard Frith-Macdonald * Source/NSKeyedUnarchiver.m: ([versionForClassName:]) implement * Source/NSUnarchiver.m: * Source/NSCoder.m: * Headers/Foundation/NSCoder.h: Update method to return NSInteger. 2008-12-07 Adam Fedor * configure.ac: Add custom objc library check from gnustep-make (So we can find libobjc in LOCAL domain). 2008-12-07 Richard Frith-Macdonald * Headers/Foundation/NSConnection.h: * Source/NSConnection.m: Fix keepalive bugs. 2008-12-07 Richard Frith-Macdonald * Headers/Additions/GNUstepBase/NSTask+GS.h: NSTask category * Headers/Additions/GNUstepBase/GSCategories.h: remove NSTask * Source/NSDistributedNotificationCenter.m: Use new header * Source/NSSocketPortNameServer.m: Use new header Reorganise so we have a lightweight header for the category of NSTask containing additional gnustep specific methods. 2008-12-06 Wolfgang Lux * Source/NSBundle.m (+bundleForLibrary:version:): Fix infinite loop in code dropping the extension from the library name. 2008-12-06 Richard Frith-Macdonald * Source/Additions/GSXML.m: Hack to avoid issues on systems where the xml headers use the reserved word 'id'. 2008-12-06 Richard Frith-Macdonald * Source/Additions/GSCategories.m: ([+launchPathForTool:]) Convenience method to locate a tool in the standard locations or in the PATH so that it can be used as the launch path of a task. 2008-12-05 Nicola Pero * configure.ac: On mingw32, set GNUSTEP_BASE_PATH to GNUSTEP_LOCAL_TOOLS by default to match the new default installation domain. Added new option --with-installation-domain allowing to override this setting. * configure: Regenerated. 2008-12-05 Richard Frith-Macdonald * Source/NSBundle.m: ([bundleForLibrary:version:]) extract version from end of library name if possible. ([_addFrameworkFromClass:]) find the framework directory from path to the dll on windows. 2008-12-04 Richard Frith-Macdonald * Source/Additions/GSObjCRuntime.m: Fix minor thread-safety issue with behaviors ... lock the runtime while modifying method lists. * Source/NSDictionary.m: Fix initialisation order so that if two threads are initialising the cached class info should always be set up in the correct order. * Source/NSSet.m: ditto. 2008-12-04 Richard Frith-Macdonald * Source/NSURL.m: Implement ipv6 addresses as per RFC2732 Fixes #25003 2008-12-02 Richard Frith-Macdonald * Source/NSURLProtocol.m: Add class for caching pairs of socket streams so we can eventually implement connection keepalive. 2008-12-01 Richard Frith-Macdonald * Source/NSKeyValueCoding.m: * Source/NSURLProtocol.m: * Headers/Additions/GNUstepBase/GSObjCRuntime.h: * Testing/nsconnection_client.m: When working with abstract selectors, try to use untyped ones so that we don't confuse checks we put into the method signature code. 2008-11-30 Wolfgang Lux * install.sh: Fix header syntax and provide default for make command argument. 2008-11-28 Richard Frith-Macdonald * config/config.unexpected.m: Add check for objc_set_unexpected * configure.ac: Use new check * configure: Regenerate * Headers/Additions/GNUstepBase/config.h.in: Regenerate * Source/GSSocketStream.m: Fix reliabce on expression evaluation order * Source/NSException.m: Implement uncaught exception handler for when native objc exceptions are enabled. 2008-11-27 Fred Kiefer * configure.ac: Correct typing error in last change. * configure: regenerate 2008-11-27 Richard Frith-Macdonald * configure.ac: check for native exceptions use. * configure: regenerate Disable the use of ffcall with native exceptions as the two are incompatible (ffcall changes the stack so that throwing an exception will crash the process). 2008-11-27 Richard Frith-Macdonald * Source/NSDistributedNotificationCenter.m: * Tools/gdnc.h: * Tools/gdnc.m: Use NSUInteger for the observer ID. 2008-11-27 Richard Frith-Macdonald * Documentation/GNUmakefile: * GNUmakefile: * NSCharacterSets/GNUmakefile: * NSTimeZones/GNUmakefile: * Resources/GNUmakefile: * Source/GNUmakefile: * SSL/GNUmakefile: * Tools/GNUmakefile: Removed GNUSTEP_INSTALLATION_DOMAIN. NB. This means that gnustep-base will now install in the local domain by default, and to get the old behavior you will need to do 'make GNUSTEP_INSTALLATION_DOMAIN=SYSTEM install' The rationale for this change is that the system domain is for resources installed by the operating system packagers, but the local domain is for add-ons you install yourself (to be used by all users of the system), and you don't normally want to overwrite the operating system supplied version by accident. 2008-11-26 10:09-EST Gregory John Casamento * Headers/Additions/GNUstepBase/GSVersionMacros.h: Add defines for earlier version of Mac OS X back to 10.0. * Source/synchronization.m: Correct a problem found during testing. * Testing/synctest/main.m: Updated test. 2008-11-24 Richard Frith-Macdonald * Source/NSObject.m: ([methodSignatureForSelector:]) Check that the types of the selector (if known) and the types of the actual method match. Raise an NSInternalInconsistencyException if they don't. 2008-11-23 Richard Frith-Macdonald * Source/Additions/unicode/gsm0338.h: Add more mappings from unicode characters representing accented letters to simple letters in the gsm alphabet for lossy conversion. 2008-11-22 Richard Frith-Macdonald * re-bump version to 1.17.0 for next release when we make a new unstable branch. 2008-11-21 Richard Frith-Macdonald * Version: set to 1.15.4 for new release on unstable branch. * Documentation/ReleaseNotes.gsdoc: Document the 1.15.4 release Make new release on unstable branch to that it's keeping up with the bugfixes in the stable branch. 2008-11-20 Richard Frith-Macdonald * Headers/Foundation/NSConnection.h: New ivars * Source/NSConnection.m: Add diuagnostic information and implement private mechanism for keepalive (for mswindows, where the NSMessagePort implementation doesn;t know if the remote end has gone away until it attempts to send to it). * Tools/gdnc..m: Use private keepalive mechanism. 2008-11-19 Richard Frith-Macdonald * Source/NSData.m: Fix bug #24883 * Headers/Foundation/NSRange.h: Update to use NSUInteger 2008-11-19 Richard Frith-Macdonald * configure.ac: Changes to tolerate older version of gnutls * configure: regenerate * config/pathtls.m4: Fix typos * Headers/Additions/GNUstepBase/config.h.in: regenerate * Source/GSSocketStream.m: Fix to send required events to handler after SSL or SOCKS module has dealt with them. * Source/GSStream.h: New method to reset sent events mask * Source/GSStream.m: ditto * Source/GSString.m: Fix nil pointer reference 2008-11-18 Richard Frith-Macdonald * Source/NSURL.m: Check class of arguments to designated initialiser * configure.ac: Warn about bug in libkvm * configure: Regenerate * Source/NSProcessInfo.m: Report problem in libkvm and suggest workarounds. 2008-11-17 Roland Schwingel * Source/GSSocketStream.m: * Source/NSPropertyList.m: * Source/NSDistributedNotificationCenter.m: * Source/NSSocketPort.m: * Source/NSRunLoop.m: * Source/GSFFCallInvocation.m: * Source/NSArray.m: * Source/inet_ntop.c: * Source/NSDebug.m: * Source/NSPredicate.m: * Source/GSHTTPURLHandle.m: * Source/GSFFIInvocation.m: * Source/NSMessagePort.m: * Source/win32/GSFileHandle.m: * Source/win32/NSUserDefaults.m: * Source/win32/NSMessagePort.m: * Source/win32/GSRunLoopCtxt.m: * Source/win32/NSMessagePortNameServer.m: * Source/NSKeyValueMutableArray.m: * Source/NSURL.m: * Source/mframe.m: * Source/NSObject.m: * Source/NSString.m: * Source/NSDecimalNumber.m: * Source/cifframe.m: * Source/Additions/GSXML.m: * Source/GSString.m: * Source/NSConnection.m: * Source/NSProxy.m: * Source/GSFormat.m: * Source/NSSet.m: * Source/NSTask.m: * Source/NSCharacterSet.m: * Source/NSNumberFormatter.m: Cosmetic changes plus a couple of fixes for 64bit mswindows. 2008-11-15 Richard Frith-Macdonald * Source/NSProcessInfo.m: Remove useless sysctl command. * Source/NSMessagePort.m: Ensure port is not deallocated while being invalidated. Fix memory leak of port lock. * Source/NSSocketPort.m: ditto 2008-11-15 Wolfgang Lux * Source/NSMessagePort.m (-invalidate, -removeHandle:): Fix potential crash while closing a message port. 2008-11-14 Wolfgang Lux * Source/NSProcessInfo.m (-processorCount, -activeProcessorCount): Improve portability. * Source/NSPathUtilities.m (NSTemporaryDirectory): Use /var/tmp on Darwin since /tmp is cleaned regularly. 2008-10-13 Richard Frith-Macdonald * Source/NSPage.m: Update to use NSUInteger and to cope with large address space in windows. * Headers/Foundation/NSObjCRuntime.h: typedef NSUInteger earlier * Headers/Foundation/NSZone.h: Update to use NSUInteger. * Source/NSProcessInfo.m; implement new MacOS-x 5 methods based on Fred's suggestion and Scotts code as fallback and wiht a version for mswindows too. 2008-10-11 Richard Frith-Macdonald * Source/NSUserDefaults.m: implement KVC methods to get and set values as these appear to be an undocumented feature of MacOS-X (bug #24807). 2008-11-05 17:27-EST Gregory John Casamento * Testing/synctest/GNUmakefile * Testing/synctest/GNUmakefile.postamble * Testing/synctest/GNUmakefile.preamble * Testing/synctest/main.m * Testing/synctest/PC.project * Testing/synctest/PC.project.backup * Testing/synctest/SyncTestInfo.plist: Added test tool for @synchronize. 2008-10-30 Richard Frith-Macdonald * Tools/gdomap.c: Improve error messages and information about the -a option. * Source/NSPredicate.m: parse literal strings 2008-10-29 Richard Frith-Macdonald * Source/NSException.m: Fix stacktrace to be available when built without DEBUG=YES. Check environment variable to activate/deactivate. * Documentation/Basegsdoc: Improve documentation of stack trace. 2008-10-28 Richard Frith-Macdonald * Source/GSString.m: Cope with loads of leading space in intValue and doubleValue. 2008-10-27 Richard Frith-Macdonald * Source/GSFormat.m: Fix possible problem when current unix locale does not use '.' as the decimal separator. 2008-10-27 Nicola Pero * Headers/Foundation/NSFileManager.h: Fixed typo - declare NSError class before referencing it. 2008-10-26 20:59-EDT Gregory John Casamento * Headers/Foundation/NSFileManager.h: Added declaration for new method here. * Source/NSFileManager.m: Added implementation for the method -(BOOL)createDirectoryAtPath:withIntermediateDirectories:attributes: error:. 2008-10-19 Wolfgang Lux * configure.ac: fix test for sychronization in objc runtime. 2008-10-19 Richard Frith-Macdonald * Source/synchronization.m: make internal functions private. 2008-10-16 Richard Frith-Macdonald * Source/NSCalendarDate.m: Fix typo (bug #24573) 2008-10-14 Richard Frith-Macdonald * Source/GSSocketStream.m: Fix for #24564 * Source/inet_pton.c: Fix for #24563 * Source/inet_ntop.c: Fix for #24563 2008-10-12 Larry Campbelln * Source/NSDate.m: Add keyed archiving support. 2008-10-11 Eric Wasylishen * Source/NSBundle.m: fix bug #24320 2008-10-10 Richard Frith-Macdonald * Source/NSTimeZones/NSTimeZones.tar: updated. 2008-10-03 Richard Frith-Macdonald * Source/Additions/GSMime.m: Ensure that we always return NO when we need mo more data to complete parsing. * Source/GSHTTPURLHandle.mL: Fix check for response parse completion. 2008-10-01 Adam Fedor * Source/DocMakefile: Add NSAffineTranform 2008-09-29 22:54-EDT Gregory John Casamento * Source/synchronization.m: Remove uneeded objc_sync_remove_node function. 2008-09-26 Richard Frith-Macdonald * Source/Additions/Unicode.m: Fix compilation problem on systems without iconv. 2008-09-25 00:18-EDT Gregory John Casamento * Source/synchronization.m: Correct issue in objc_sync_remove_node() method where it could do a NULL dereference. Also moved the locks on the tables to the highest level so to reduce the possibility of threading issues. 2008-09-24 17:26-EDT Gregory John Casamento * Source/NSUserDefaults.m: Corrected previous change. 2008-09-24 08:25-EDT Gregory John Casamento * Source/NSUserDefaults.m: -addSuiteNamed change so that we don't rely on the value of NSNotFound being -(2^32)-1 and a rollover to 0. 2008-09-23 20:31-EDT Gregory John Casamento * config.mak.in: Added reference to HAVE_OBJC_SYNC_ENTER * configure: Recompiled script * configure.ac: Changed configure to check for objc_sync_enter function. * Headers/Additions/GNUstepBase/config.h.in: Added #define here for HAVE_OBJC_SYNC_ENTER * Source/GNUmakefile: Added check for the value, if no, then compile synchronization.m * Source/synchronization.m: Implementation for @synchronize support. 2008-09-23 Richard Frith-Macdonald * Source/NSThread.m: add a couple of checks to ensure correct initialisation of class. * Source/NSDate.m: * Source/NSCalendarDate.m: Check for time interval since reference date being NaN, and raise an exception. 2008-09-21 00:05-EDT Gregory John Casamento * COPYINGv3: Adding back in. 2008-09-19 Richard Frith-Macdonald * Source/NSDistributedLock.m: Standardise the path we are given for the lock file. 2008-09-18 Richard Frith-Macdonald * Source/NSThread.m: try to make firing of thread performers more robust. * Source/Additions/GSMime.m: make some NSLog() calls be debug only. 2008-09-14 13:20-EDT Gregory John Casamento * install.sh: Install script for use by compile-all. 2008-08-25 18:55-EDT Gregory John Casamento * COPYINGv3: Remove since GNUstep is now GPLv2 again. * Headers/Foundation/NSNumberFormatter.h * Source/NSNumberFormatter.m: Added methods missing from GNUstep that are present in 10.4 (stringFromNumber:, numberFromString:) 2008-08-25 Fred Kiefer * Source/NSAutoreleasePool.m (-drain): Implement. * Source/NSAutoreleasePool.m (-dealloc): Reset _parent and _child. * Source/NSAutoreleasePool.m (-_endThread:): Free cache of ended thread not of current. 2008-08-20 Yavor Doganov (tiny change) * config/procfs.m4: Check for `proc' in /proc/mounts rather than relying on the output of `mount'; fixes build issue in chroots. Reported by Funda Wang (bug #23876). 2008-07-17 Richard Frith-Macdonald * Source/Additions/GSCategories.m: littleEndian() fix to work on systems with other word sizes. 2008-07-15 Richard Frith-Macdonald * Source/GSPrivate.h: New private function to get range of string func. * Source/NSString.m: Optimise replacing string in string. * Source/GSString.m: New function to return range getting function. * Source/GSeq.h: Fixup comment * Testing/string.m: Add trival check. Optimise ([replaceOccurrencesOfString:withString:options:range:]) 2008-07-11 Richard Frith-Macdonald * Source/Additions/Unicode.m: Add support for byte order specific unicode (including 32bit) via iconv. Change encoding lookup mechanism to cope with new Mac-OS-X encoding values. 2008-07-06 Richard Frith-Macdonald * Source/NSRunLoop.m: * Source/NSArray.m: * Source/NSSortDescriptor.m: * Source/Additions/GSCompatibility.m: * Source/NSDictionary.m: * Source/NSSerializer.m: * Source/NSSet.m: Wherever ([-getObjects:]) is called, check to see if the receiver is a proxy, and if so we populate the buffer by calling ([-objectAtIndex:]) instead. This because a proxy via DO does not know how many itesm are in the buffer and assumes it's only one. 2008-07-06 Richard Frith-Macdonald * configure.ac: use libffi in preference to ffcall as it doesn't mess up the stack. * configure: regenerate 2008-07-02 Richard Frith-Macdonald * Source/NSIndexSet.m: Implement ([-countOfIndexesInRange:]) 2008-06-30 Richard Frith-Macdonald * Source/GSFFIInvocation.m: * Source/NSInvocation.m: * Source/cifframe.h: * Source/cifframe.m: Tweaks to get NS_MESSAGE and NS_INVOCATION working on my 64bit system. 2008-06-28 Richard Frith-Macdonald * configure.ac: Check for sys/mman.h and mprotect * configure: regenerate * Headers/Additions/GNUstepBase/config.h.in: regenerate * Source/GSFFIInvocation.m: Use mmap and mprotect to ensure that closure memory is executable. 2008-06-27 17:22-EDT Gregory John Casamento * Source/NSUnarchiver.m: Issue a warning when the class can't be resolved by the runtime in decodeValueOfObjCType:at:. 2008-06-27 Richard Frith-Macdonald * Source/NSPropertyList.m: sort dictionary keys only if they are strings. This is the new MacOS-X behavior (old behavior was to sort if all responded to compare:). Fixes bug #23727 2008-06-21 Richard Frith-Macdonald * Headers/Foundation/NSException.h * Source/NSException.h Change macros for setting uncaught handler to be functions (to match MacOS-X) and make the pointer itsself be private. 2008-06-18 Richard Frith-Macdonald * Source/NSConnection.m: Fix error getting run loop for current thread when it has not already been set. 2008-06-16 Richard Frith-Macdonald * Headers/Additions/GNUstepBase/GSUnion.h: add NSUInteger type as addr * Headers/Additions/GNUstepBase/GSIMap.h: use addr for GSIMapNodeForSimpleKey() so that it works for pointers on machines where sizeof(int) != sizeof(void*) 2008-06-15 Richard Frith-Macdonald * Source/Additions/GSMime.m: Be more tolerant of illegal data in quoted printable words. 2008-06-13 Richard Frith-Macdonald * Source/Additions/Unicode.m: Fix incorrect adjustment of buffer when handling large string containing multibyte utf-8 data. 2008-06-12 Richard Frith-Macdonald * Update timezones, bump version to 1.17.0 for next release. 2008-06-12 Richard Frith-Macdonald * Documentation/ReleaseNotes.gsdoc: Add information about movement to MacOS-X compatibility. 2008-06-11 David Ayers * Source/NSNumberFormatter.m ([-stringForObjectValue:]): Implement handling of localizesFormat. Return string value of attributedStringForZero if applicable so that formatting for the common case is not short circuted for zero. 2008-06-10 Richard Frith-Macdonald * Tools/AGSHtml.m: if something is scheduled for removal, mark it as 'Likely to be changed/moved/removed' rather than 'deprecated'. 2008-06-10 Richard Frith-Macdonald * Headers/Foundation/NSString.h: * Headers/Foundation/NSBundle.h: * Headers/Foundation/NSSerialization.h: * Headers/Foundation/NSProcessInfo.h: * Headers/Foundation/NSMethodSignature.h: * Headers/Foundation/NSHost.h: * Headers/Foundation/NSArchiver.h: * Headers/Foundation/NSInvocation.h: Fix typo in macro name 2008-06-10 Richard Frith-Macdonald * configure.ac: Check for stdlib.h * Headers/Additions/GNUstepBase/config.h.in: add stdlib.h * configure: Regenerate * Source/NSString.m: Don't use realpath unless PATH_MAX is known * Headers/Foundation/NSObject.h: * Headers/Foundation/NSString.h: * Headers/Foundation/NSBundle.h: * Headers/Foundation/NSSerialization.h: * Headers/Foundation/NSProcessInfo.h: * Headers/Foundation/NSMethodSignature.h: * Headers/Foundation/NSHost.h: * Headers/Foundation/NSArchiver.h: * Headers/Foundation/NSInvocation.h: Mark non-OSX methods as deprecated so we can move them to the additions library or delete them if we want to. 2008-06-08 Richard Frith-Macdonald * COPYINGv3: * NSCharacterSets/GNUmakefile: * Source/NSIndexPath.m: * Source/NSSocketPortNameServer.m: * Source/NSMapTable.m: * Source/GSLocale.m: * Source/GSSocketStream.h: * Source/NSTimeZone.m: * Source/NSNetServices.m: * Source/hpux-load.h: * Source/NSHashTable.m: * Source/GSInvocation.h: * Source/NSURLCredential.m: * Source/GSSocketStream.m: * Source/NSValueTransformer.m: * Source/NSPortCoder.m: * Source/NSURLAuthenticationChallenge.m: * Source/Makefile.postamble: * Source/NSSpellServer.m: * Source/NSCalendarDate.m: * Source/NSBundle.m: * Source/NSKeyValueCoding.m: * Source/NSURLHandle.m: * Source/NSTimer.m: * Source/NSPropertyList.m: * Source/libgnustep-base-entry.m: * Source/GSConcreteValueTemplate.m: * Source/NSAffineTransform.m: * Source/CompatibilityHeaders.make: * Source/NSPathUtilities.m: * Source/NSScanner.m: * Source/NSDistributedNotificationCenter.m: * Source/NSProcessInfo.m: * Source/NSGeometry.m: * Source/NSNotificationQueue.m: * Source/GNUmakefile: * Source/thr-mach.h: * Source/NSSocketPort.m: * Source/NSRunLoop.m: * Source/NSAttributedString.m: * Source/NSUndoManager.m: * Source/NSMethodSignature.m: * Source/thr-mach.m: * Source/NSFormatter.m: * Source/NSUserDefaults.m: * Source/GSArray.m: * Source/GSFFCallInvocation.m: * Source/mframe/configure.ac: * Source/mframe/mframe.head: * Source/mframe/README: * Source/NSKeyValueMutableSet.m: * Source/NSArray.m: * Source/GSStream.h: * Source/NSMessagePortNameServer.m: * Source/objc-gnu2next.m: * Source/GSStream.m: * Source/NSKeyedArchiver.m: * Source/NSDebug.m: * Source/unix/Makefile.preamble: * Source/unix/GNUmakefile: * Source/unix/NSStream.m: * Source/NSKeyedUnarchiver.m: * Source/GSConcreteValue.m: * Source/NSPortMessage.m: * Source/NSURLDownload.m: * Source/NSDistributedLock.m: * Source/NSFileHandle.m: * Source/NSPredicate.m: * Source/simple-load.h: * Source/preface.m: * Source/NSKeyValueObserving.m: * Source/NSAssertionHandler.m: * Source/GSHTTPURLHandle.m: * Source/NSConcreteNumberTemplate.m: * Source/win32-load.h: * Source/NSCallBacks.h: * Source/NSZone.m: * Source/NSPage.m: * Source/NSCallBacks.m: * Source/NSURLCredentialStorage.m: * Source/NSPort.m: * Source/NSSortDescriptor.m: * Source/GSFFIInvocation.m: * Source/NSMessagePort.m: * Source/GSPrivate.h: * Source/GSDictionary.m: * Source/win32/GSFileHandle.m: * Source/win32/Makefile.preamble: * Source/win32/NSMessagePort.m: * Source/win32/GNUmakefile: * Source/win32/NSStream.m: * Source/win32/NSMessagePortNameServer.m: * Source/NSUnarchiver.m: * Source/GSCountedSet.m: * Source/NSConcreteNumber.h: * Source/NSInvocation.m: * Source/dld-load.h: * Source/NSFileManager.m: * Source/NSConcreteNumber.m: * Source/NSURLResponse.m: * Source/thr-pthread.m: * Source/objc-load.h: * Source/NSURLProtocol.m: * Source/NSURLCache.m: * Source/externs.m: * Source/NSNotificationCenter.m: * Source/GSAttributedString.m: * Source/objc-load.m: * Source/NSRange.m: * Source/NSCoder.m: * Source/NSHTTPCookieStorage.m: * Source/NSException.m: * Source/NSKeyValueMutableArray.m: * Source/NSCopyObject.m: * Source/NSURL.m: * Source/cifframe.h: * Source/NSString.m: * Source/NSObject.m: * Source/mframe.m: * Source/DocMakefile: * Source/NSDecimalNumber.m: * Source/NSCachedURLResponse.m: * Source/cifframe.m: * Source/null-load.h: * Source/Additions/Unicode.m: * Source/Additions/GCArray.m: * Source/Additions/GSXML.m: * Source/Additions/GNUmakefile: * Source/Additions/behavior.m: * Source/Additions/GSFunctions.m: * Source/Additions/GSCompatibility.m: * Source/Additions/Makefile.preamble: * Source/Additions/GSObjCRuntime.m: * Source/Additions/GSNextRuntime.m: * Source/Additions/GCDictionary.m: * Source/Additions/GSCategories.m: * Source/Additions/GCObject.m: * Source/Additions/GSInsensitiveDictionary.m: * Source/Additions/GSMime.m: * Source/Additions/GSLock.m: * Source/GSSet.m: * Source/NSNotification.m: * Source/NSNumber.m: * Source/NSDecimal.m: * Source/GSString.m: * Source/NSConnection.m: * Source/NSDateFormatter.m: * Source/GSPortPrivate.h: * Source/NSAutoreleasePool.m: * Source/NSThread.m: * Source/NSData.m: * Source/NSHTTPCookie.m: * Source/NSDate.m: * Source/NSHost.m: * Source/GSNetwork.h: * Source/callframe.h: * Source/NSProxy.m: * Source/NSObjCRuntime.m: * Source/NSURLProtectionSpace.m: * Source/callframe.m: * Source/NSProtocolChecker.m: * Source/NSError.m: * Source/GSeq.h: * Source/NSPipe.m: * Source/GSValue.m: * Source/NSDictionary.m: * Source/Makefile.preamble: * Source/GSHTTPAuthentication.m: * Source/NSClassDescription.m: * Source/NSSerializer.m: * Source/NSNull.m: * Source/NSURLRequest.m: * Source/NSValue.m: * Source/NSCountedSet.m: * Source/NSLog.m: * Source/GSFormat.m: * Source/NSIndexSet.m: * Source/GSFileHandle.m: * Source/NSLock.m: * Source/NSSet.m: * Source/NSDistantObject.m: * Source/NSTask.m: * Source/NSArchiver.m: * Source/win32-def.top: * Source/NSCharacterSet.m: * Source/NSPortNameServer.m: * Source/NSNumberFormatter.m: * Source/NSXMLParser.m: * Source/GSFTPURLHandle.m: * Source/NSEnumerator.m: * Source/GSURLPrivate.h: * Source/NSURLConnection.m: * SSL/GSSSLHandle.m: * SSL/Makefile.postamble: * SSL/Makefile.preamble: * SSL/configure.ac: * SSL/GNUmakefile: * SSL/COPYING.LIB: * Makefile.postamble: * configure.ac: * COPYING: * Headers/Foundation/NSTimeZone.h: * Headers/Foundation/NSNetServices.h: * Headers/Foundation/NSHashTable.h: * Headers/Foundation/NSRange.h: * Headers/Foundation/NSCoder.h: * Headers/Foundation/NSURLCredential.h: * Headers/Foundation/NSHTTPCookieStorage.h: * Headers/Foundation/NSException.h: * Headers/Foundation/NSByteOrder.h: * Headers/Foundation/NSValueTransformer.h: * Headers/Foundation/NSPortCoder.h: * Headers/Foundation/NSURL.h: * Headers/Foundation/NSCompoundPredicate.h: * Headers/Foundation/NSURLAuthenticationChallenge.h: * Headers/Foundation/NSObject.h: * Headers/Foundation/NSString.h: * Headers/Foundation/NSSpellServer.h: * Headers/Foundation/NSCalendarDate.h: * Headers/Foundation/NSDecimalNumber.h: * Headers/Foundation/NSBundle.h: * Headers/Foundation/NSKeyValueCoding.h: * Headers/Foundation/NSPointerFunctions.h: * Headers/Foundation/NSSerialization.h: * Headers/Foundation/NSURLHandle.h: * Headers/Foundation/NSPropertyList.h: * Headers/Foundation/NSTimer.h: * Headers/Foundation/NSAffineTransform.h: * Headers/Foundation/NSNotification.h: * Headers/Foundation/NSPathUtilities.h: * Headers/Foundation/NSScanner.h: * Headers/Foundation/NSDistributedNotificationCenter.h: * Headers/Foundation/NSProcessInfo.h: * Headers/Foundation/NSNotificationQueue.h: * Headers/Foundation/NSComparisonPredicate.h: * Headers/Foundation/NSStream.h: * Headers/Foundation/NSGeometry.h: * Headers/Foundation/NSDecimal.h: * Headers/Foundation/NSRunLoop.h: * Headers/Foundation/NSAttributedString.h: * Headers/Foundation/NSConnection.h: * Headers/Foundation/NSUndoManager.h: * Headers/Foundation/NSDateFormatter.h: * Headers/Foundation/NSMethodSignature.h: * Headers/Foundation/NSAutoreleasePool.h: * Headers/Foundation/NSFormatter.h: * Headers/Foundation/NSUserDefaults.h: * Headers/Foundation/NSThread.h: * Headers/Foundation/NSHTTPCookie.h: * Headers/Foundation/NSData.h: * Headers/Foundation/NSURLError.h: * Headers/Foundation/NSDate.h: * Headers/Foundation/NSHost.h: * Headers/Foundation/NSArray.h: * Headers/Foundation/NSProxy.h: * Headers/Foundation/NSObjCRuntime.h: * Headers/Foundation/NSURLProtectionSpace.h: * Headers/Foundation/NSKeyedArchiver.h: * Headers/Foundation/NSProtocolChecker.h: * Headers/Foundation/NSDebug.h: * Headers/Foundation/NSPortMessage.h: * Headers/Foundation/NSError.h: * Headers/Foundation/NSURLDownload.h: * Headers/Foundation/NSFileHandle.h: * Headers/Foundation/NSDistributedLock.h: * Headers/Foundation/NSPredicate.h: * Headers/Foundation/FoundationErrors.h: * Headers/Foundation/NSKeyValueObserving.h: * Headers/Foundation/NSDictionary.h: * Headers/Foundation/NSErrorRecoveryAttempting.h: * Headers/Foundation/NSClassDescription.h: * Headers/Foundation/NSNull.h: * Headers/Foundation/NSZone.h: * Headers/Foundation/NSURLRequest.h: * Headers/Foundation/NSValue.h: * Headers/Foundation/NSURLCredentialStorage.h: * Headers/Foundation/NSIndexSet.h: * Headers/Foundation/NSPort.h: * Headers/Foundation/NSSortDescriptor.h: * Headers/Foundation/NSLock.h: * Headers/Foundation/NSSet.h: * Headers/Foundation/NSDistantObject.h: * Headers/Foundation/NSExpression.h: * Headers/Foundation/NSTask.h: * Headers/Foundation/NSArchiver.h: * Headers/Foundation/Foundation.h: * Headers/Foundation/NSCharacterSet.h: * Headers/Foundation/NSInvocation.h: * Headers/Foundation/NSFileManager.h: * Headers/Foundation/NSUtilities.h: * Headers/Foundation/NSPortNameServer.h: * Headers/Foundation/NSNumberFormatter.h: * Headers/Foundation/NSXMLParser.h: * Headers/Foundation/NSEnumerator.h: * Headers/Foundation/NSURLResponse.h: * Headers/Foundation/NSURLConnection.h: * Headers/Foundation/NSIndexPath.h: * Headers/Foundation/NSURLProtocol.h: * Headers/Foundation/NSMapTable.h: * Headers/Foundation/NSURLCache.h: * Headers/Additions/GNUstepBase/GSLocale.h: * Headers/Additions/GNUstepBase/GSXML.h: * Headers/Additions/GNUstepBase/DistributedObjects.h: * Headers/Additions/GNUstepBase/behavior.h: * Headers/Additions/GNUstepBase/GSFunctions.h: * Headers/Additions/GNUstepBase/GSConfig.h.in: * Headers/Additions/GNUstepBase/preface.h.in: * Headers/Additions/GNUstepBase/GSObjCRuntime.h: * Headers/Additions/GNUstepBase/GSCategories.h: * Headers/Additions/GNUstepBase/GSIMap.h: * Headers/Additions/GNUstepBase/GCObject.h: * Headers/Additions/GNUstepBase/GSMime.h: * Headers/Additions/GNUstepBase/GSIArray.h: * Headers/Additions/GNUstepBase/GSUnion.h: * Headers/Additions/GNUstepBase/GSLock.h: * Headers/Additions/GNUstepBase/GSVersionMacros.h: * Headers/Additions/GNUstepBase/GSFileHandle.h: * Headers/Additions/GNUstepBase/GNUstep.h: * Headers/Additions/GNUstepBase/objc-gnu2next.h: * Headers/Additions/GNUstepBase/Unicode.h: * Makefile: * GNUmakefile: * macosx/config.h: * base.make.in: * Tools/gspath.m: * Tools/AGSHtml.h: * Tools/plmerge.m: * Tools/xmlparse.m: * Tools/AGSIndex.h: * Tools/AGSHtml.m: * Tools/AGSIndex.m: * Tools/sfparse.m: * Tools/gdnc.h: * Tools/plparse.m: * Tools/pldes.m: * Tools/defaults.m: * Tools/Makefile.postamble: * Tools/locale_alias.m: * Tools/Makefile.preamble: * Tools/DocMakefile: * Tools/gsdoc-1_0_0.dtd: * Tools/plget.m: * Tools/pl2link.m: * Tools/gdnc.m: * Tools/gsdoc-1_0_1.dtd: * Tools/gsdoc-1_0_2.dtd: * Tools/gsdoc-1_0_3.dtd: * Tools/AGSParser.h: * Tools/gsdoc-1_0_1.rnc: * Tools/gsdoc-0_6_5.dtd: * Tools/gsdoc-0_6_6.dtd: * Tools/plser.m: * Tools/gsdoc-0_6_7.dtd: * Tools/AGSOutput.h: * Tools/AGSParser.m: * Tools/autogsdoc.m: * Tools/make_strings/StringsFile.h: * Tools/make_strings/StringsEntry.h: * Tools/make_strings/make_strings.m: * Tools/make_strings/StringsFile.m: * Tools/make_strings/StringsEntry.m: * Tools/make_strings/GNUmakefile: * Tools/make_strings/SourceEntry.h: * Tools/make_strings/make_strings.h: * Tools/make_strings/GNUmakefile.preamble: * Tools/make_strings/SourceEntry.m: * Tools/AGSOutput.m: * Tools/GNUmakefile: * Tools/gdomap.c: * Tools/plist-0_9.dtd: * Tools/gdomap.h: * Tools/HTMLLinker.m: * Tools/pl.m: * Tools/cvtenc.m: * config/config.constant-string-class.m: * Testing/Makefile.postamble: * Testing/exported-strings.m: * Testing/gslock.m: * Testing/GNUmakefile: * Testing/nsattributedstring.m: * Testing/nsmethodsignature.m: * Testing/diningPhilosophers.m: * Testing/gsbehavior.m: * Testing/Makefile.preamble: * Testing/benchmark.m: * COPYING.LIB: Temporarily revert library and essential tools to LGPLv2 so that developers have longer to get used to LGPLv3. Keep non-essential tools and examples at GPLv3 2008-06-07 Richard Frith-Macdonald * Source/NSUserDefaults.m: Fix possible deadlock reported by Larry Campbell, and improve optimisation a little. 2008-06-06 Richard Frith-Macdonald * Source/NSTimeZone.m: Monitor to see if the time zone specified in the user defaults system changes. If so, we update the system zone. 2008-06-06 Richard Frith-Macdonald * Source/GSLocale.m: * Source/NSTimeZone.m: * Source/NSNetServices.m: * Source/NSSpellServer.m: * Source/NSBundle.m: * Source/NSPathUtilities.m: * Source/NSScanner.m: * Source/NSProcessInfo.m: * Source/NSArray.m: * Source/externs.m: * Source/NSCoder.m: * Source/NSString.m: * Source/NSConnection.m: * Source/NSAutoreleasePool.m: * Source/NSData.m: * Source/NSObjCRuntime.m: * Source/NSIndexSet.m: * Source/NSLock.m: * Source/NSSet.m: * Documentation/ReleaseNotes.gsdoc: * Headers/Foundation/NSTimeZone.h: * Headers/Foundation/NSNetServices.h: * Headers/Foundation/NSCoder.h: * Headers/Foundation/NSString.h: * Headers/Foundation/NSSpellServer.h: * Headers/Foundation/NSBundle.h: * Headers/Foundation/NSPathUtilities.h: * Headers/Foundation/NSScanner.h: * Headers/Foundation/NSProcessInfo.h: * Headers/Foundation/NSComparisonPredicate.h: * Headers/Foundation/NSConnection.h: * Headers/Foundation/NSAutoreleasePool.h: * Headers/Foundation/NSUserDefaults.h: * Headers/Foundation/NSData.h: * Headers/Foundation/NSArray.h: * Headers/Foundation/NSObjCRuntime.h: * Headers/Foundation/NSIndexSet.h: * Headers/Foundation/NSLock.h: * Headers/Foundation/NSSet.h: Lots of small OSX10.5 compatibility updates:- Some new enumerations and constant strings. Some new method implementations. Some new empty method stubs. Change NSLocale constant string to GSLocale in preparation for adding the new NSLocal class. 2008-05-25 Richard Frith-Macdonald * configure.ac: For now, only use ffi for sparc64 on solaris as it doesn't appear to work on bsd. 2008-05-24 Nicola Pero * Tools/Makefile.postamble: Use GNUSTEP_DOC_MAN instead of GNUSTEP_DOCUMENTATION_MAN. This requires gnustep-make version 2, but that was already a requirement. (Suggestion by Chris Vetter ). 2008-05-23 Richard Frith-Macdonald * configure.ac: Check for systems which need -lnsl (solaris) Reintroduce use of ffi by default on sparc64 as I just couldn't get ffcall to work at all and the latest ffi seems to work atr least for all the common cases. * Tools/gdnc.m: Fix incorrectly sized instance variable. 2008-05-22 Richard Frith-Macdonald * SSL/GSSSLHandle.m: Attempt to improve error logging. 2008-05-21 Richard Frith-Macdonald * Source/NSRunLoop.m: Fix reference to uninitialised variable. 2008-05-14 Richard Frith-Macdonald * Source/GSArray.m: Fix bug allowing nil to be placed in array. 2008-05-01 Richard Frith-Macdonald * configure.ac: try to use libffi on sparc64 as libffcall does not work. Warn if user tries to enable libffcall. 2008-04-25 Richard Frith-Macdonald * Source/NSPropertyList.m: Use more memory efficient bitmaps for old style property list parsing where we know we are only using 8bit characters. 2008-03-20 David Chisnall * Source/win32/GSRunLoopCtxt.m: Fix bad function call (bug #22676) 2008-03-19 Richard Frith-Macdonald * Source/NSAutoreleasePool.m: Use get_imp() to fetch the implementation of the release method. 2008-03-19 Richard Frith-Macdonald * Source/DocMakefile: include GNUstep.h * Headers/Foundation/NSObject.h: include GNUstep.h for macros * Headers/Foundation/NSBundle.h: move gnustep specific macros out * Headers/Additions/GNUstepBase/GSFunctions.h: undeprecate and add GSLocalizedStringFromTableInFramework from NSBundle.h * Headers/Additions/GNUstepBase/GNUstep.h: Add comments etc. Code changes to avoid duplication of macro definitions, make GNUstep.h usable anywhere, and rename a couple of GNUstep specific extensions to use the GS prefix rather than the (reserved by Apple) NS prefix. 2008-03-18 Riccardo Mottola * Source/GNUMakefile: Added FoundationErrors.h 2008-03-18 Richard Frith-Macdonald * Source/NSString.m: Add a couple of new MacOS-X methods. * Headers/Foundation/NSString.h: ditto * Headers/Foundation/FoundationErrors.h: New list of error codes * Headers/Foundation/Foundation.h: include error codes More MacOS-X compatibility tweaks 2008-03-17 Richard Frith-Macdonald * Headers/Foundation/NSThread.h: * Source/NSThread.m: Add ([+isMainThread]) and ([-isFinished]). Also check that we are not trying to perform a selector on an invalid thread finished. 2008-03-17 Richard Frith-Macdonald * Source/NSRunLoop.m: * Source/unix/GSRunLoopCtxt.m: * Source/GSRunLoopCtxt.h: * Source/GSPrivate.h: * Source/win32/GSRunLoopCtxt.m: * Source/NSConnection.m: * Source/NSThread.m: * Headers/Foundation/NSThread.h: Got round to committing the thread changes held back for last release. Beware ... this code is not properly tested yet. The idea is that it should provide the new (in MacOS-X 10.5) methods to support performing of selectors in other threads. 2008-03-17 Richard Frith-Macdonald * Source/NSPort.m: * Source/NSException.m: * Source/NSConnection.m: * Headers/Foundation/NSException.h: * Headers/Foundation/NSPort.h: Update exceptions to match those in MacOS-X for compatibility. 2008-03-16 Matt Rice * Source/NSException.m: Add NSObjectNotAvailableException. * Headers/Foundation/NSException.h: Ditto. 2008-03-16 Richard Frith-Macdonald * Source/NSDebug.m: Trap sigbus if gcc functions to get stack frame info run off the end of the stack. * Source/NSString.m: Implement ([-decimalValue]) ... undocumented feature of MacOS-X foundation. 2008-03-16 Richard Frith-Macdonald * Source/NSArray.m: * Source/NSSet.m: Add ([-valueForKeyPath:]) to implement KVC aggregate operators. * Source/NSKeyValueCoding.m: When accessing instance variable directly look for _var before var as in MacOS-X 2008-03-14 Nicola Pero * Source/NSDictionary.m ([-initWithObjectsAndKeys:], [+dictionaryWithObjectsAndKeys:]): Improved documentation: tell people to terminate the list with nil. 2008-03-13 Richard Frith-Macdonald * Source/NSAutoreleasePool.m; use ([+instanceMethodForSelector:]) to cache release method implementation for a class. 2008-03-13 Richard Frith-Macdonald * Source/NSKeyValueCoding.m: Make all keypath methods perform recursive evaluation of the path for compatibility with MacOS-X and to permit classes to effectively override the keypath methods. 2008-03-12 Richard Frith-Macdonald * Source/Additions/GSInsensitiveDictionary.m: Include GSCategories.h for NSWarnMLog 2008-03-12 Richard Frith-Macdonald * Source/Additions/GSInsensitiveDictionary.m: Don't do gnustep specific debug if building apple-apple-apple 2008-03-11 Adam Fedor * Version 1.15.3 2008-03-05 Richard Frith-Macdonald * Source/NSPage.m: Removed obsolete includes (see bug #22479) 2008-03-05 Matt Rice * Source/NSKeyValueCoding.m ([-setValue:forKey:]): Pass value to takeValue:forKey:. 2008-03-05 Richard Frith-Macdonald * Source/NSBundle.m Make better guess at what the caller meant when they give us a non-absolute path name on mingw. 2008-03-03 Richard Frith-Macdonald * Source/NSNull.m: Make result of description method match MacOSX * Headers/Foundation/NSKeyValueObserving.h: Add new MacOSX features. * Source/NSKeyValueObserving.m: Rewrite code for handling observations and notifications. Fix various bugs and add new options from version 10.5 of MacOS-X 2008-03-02 Richard Frith-Macdonald * Source/NSKeyValueCoding.m: Avoid calling deprecated methods as a result of KVO overriding them. * Source/NSKeyValueObserving.m: Minor tidyups 2008-02-25 Richard Frith-Macdonald * Headers/Foundation/NSObject.h: Moved some headers to NSObjCRuntime.h * Headers/Foundation/NSObjCRuntime.h: Added NSInteger and NSUInteger for MacOSX compatibiulity. * Headers/Additions/GNUstep/GSVersionMacros.h: Don't declare constants which should be set by the user to say which MacOSX version they want. * Headers/Foundation/NSPointerFunctions.h: New MacOSX declarations ... no definitions yet. 2008-02-23 Richard Frith-Macdonald * Source/NSKeyValueObserving.m: Don't calculate KVO info in cases where there is no observer. 2008-02-22 Richard Frith-Macdonald * Source/mframe/mframe.head: Change function arguments * Source/mframe.m: Support nul termination of type strings * Source/NSMethodSignature.m: nul terminate type strings * Source/NSObjCRuntime.m: update for changed function args 2008-02-21 Richard Frith-Macdonald * Headers/Foundation/NSKeyValueCoding.h: * Headers/Foundation/NSThread.h: * Headers/Foundation/NSKeyValueObserving.h: * Headers/Additions/GNUstepBase/GSXML.h: Documentation fixes. 2008-02-20 Richard Frith-Macdonald * Source/Additiuons/GSObjCRuntime.m: Add support for NSPoint, NSRange, NSSize and NSRect for bug #22277 2008-02-20 Richard Frith-Macdonald * configure.ac: Add convoluted checks to cope with interdependency os some system headers on FreeBSD. * configure: regenerate * Headers/Additions/GNUstepBase/config.h.in: Regenerate * Source/NSFileManager.m: Include sys/cdefs.h when available (for FreeBSD). 2008-02-20 Richard Frith-Macdonald * Source/Additions/Unicode.m: * Headers/Additions/GNUstepBase/GSVersionMacros.h: Minor tweaks for building under leopard. * Source/NSPathUtilities.m: minor thread safety fix. * Source/NSSocketPort.m: remove bogus comment * Source/NSMessagePort.m: remove bogus comment * Source/Additions/Unicode.m: add lockign for nl_langinfo * Source/Additions/GSMime.m: New method to parse headers * Headers/Additions/GNUstepBase/GSMime.h: ditto * Source/NSString.m: Change ([-boolValue]) to match new MacOS-X method. * Source/GSString.m: ditto 2008-02-19 Nicola Pero * Source/GNUmakefile (libgnustep-base_NEEDS_GUI): Set to NO (libgnustep-baseadd_NEEDS_GUI): Set to NO. * SSL/GNUmakefile (SSL_NEEDS_GUI): Set to NO. 2008-02-17 Richard Frith-Macdonald * Source/NSDistributedNotificationCenter.m: Remove delay and change code to immediately release resources used while trying to connect to server. * Source/NSConnection.m: When creating a connection and getting its proxy, release the connection immediately if the proxy is nil, so that repeated calls don't use more resources. * Source/NSMessagePortNameServer.m: Implement distributed locking of names directory. * Source/NSNSAutoreleasePool.m: When emptying pool, add diagnostic message and exceptions where an object we are releasing is bad in some way. * Headers/Foundation/NSPropertyList.h: Clarify/fix documentation of date format. 2008-02-17 19:21-EST Gregory John Casamento * Source/NSDistributedNotificationCenter.m: Added a short wait to the _connect method when starting GDNC to correct bug#22351. Worked with Riccardo Motolla to test this (riccardo@kaffe.org). 2008-02-16 Richard Frith-Macdonald * Source/Additions/GSMime.m: Fix errors in code for folding header lines. 2008-02-14 Richard Frith-Macdonald * Source/GSHTTPURLHandle.m: Remove self as observer of socket while ssl connection is in progress. 2008-02-13 Richard Frith-Macdonald * Source/NSArray.m: Minor optimisation ...use a subarray when returning all objects from an array enumerator. 2008-02-07 Richard Frith-Macdonald * Source/NSXMLParser.m: Fix retain/release error. 2008-02-06 Richard Frith-Macdonald * Source/NSXMLParser.m: Fix bug in sloppy parser, failing to skip space at end of tag and therefore missing the trailing '/' in a collapsed element. 2008-01-28 Adam Fedor * configure.ac: Add option to disable bfd. * Source/inet_pton.c, Source/inet_ntop.c: Add includes to compile on Solaris 2008-01-27 Richard Frith-Macdonald * Source/NSXMLParser.m: Implement reporting of namespace prefixes with libxml2 based parser and with sloppy parser. 2008-01-26 Richard Frith-Macdonald * Source/Additions/NSXML.m: Fixup SAX interface to pass namespace information separately (retain old method for binary backward compatibility). * Source/NSXMLParser.m: Implement handing of namespaces with libxml2 based parser. 2008-01-25 Richard Frith-Macdonald * Source/Additions/NSXML.m: In SAX count namespace declarations in element start as attributes. 2008-01-23 Richard Frith-Macdonald * Source/NSHost.m: Fix minor thread safety issue ... could get release host if another thread clears cache at same time as lookup. 2008-01-21 Fred Kiefer * Resources/Languages/Spanish: Quoting corrections by Matias Adrian . 2008-01-18 Richard Frith-Macdonald * Tools/autogsdoc.m: Fix bug recording sources and outputs in index and dependencies. * Source/NSTimeZone.m: Fix coding style errors and buffer overrun on mswindows reported by Roland Schwingel. 2008-01-14 Nicola Pero * configure.ac: Do not read obsolete GNUSTEP_USER_DIR and do not substitute GNUSTEP_TARGET_USER_DIR. * configure: Regenerated. * Headers/Additions/GNUstepBase/config.h.in: Regenerated. * Source/NSPathUtilities.m: Do not read obsolete GNUSTEP_USER_DIR from the configuration. Ignore it if found. It is never used anywhere. * Documentation/Base.gsdoc: Removed or slightly updated some obsolete documentation on filesystem configuration. 2008-01-10 Richard Frith-Macdonald * Source/inet_pton.c: * Source/inet_ntop.c: * Source/GSNetwork.h: * Source/GNUmakefile: * configure.ac: * configure: Avoid using mswindows getnameinfo function as it doesn't work for Riccardo for some reason ... perhaps older mingw32 doesn't have it. 2008-01-10 Richard Frith-Macdonald * Source/NSPathUtilities.m: Allow '../' to indicate a relocatable resource. Add support for GlobalDefaults.plist. * Source/NSUserDefaults.m: Improve documentation * Documentation/ReleaseNotes.gsdoc: Note recent changes. * Documentation/Base.gsdoc: Improve documentation * Headers/Foundation/NSUserDefaults.h: Improve comments. 2008-01-10 Richard Frith-Macdonald * Source/GSSocketStream.m: tweak TLS code * Source/GSStream.m: simplify socket code * configure.ac: enable gnu tls by default * configure: regenerate 2008-01-09 Richard Frith-Macdonald * Source/GSSocketStream.h: * Source/GSSocketStream.m: * Source/unix/NSStream.m: * Source/GSNetwork.h: Further reorganisation and simplification for socks support. 2008-01-07 Richard Frith-Macdonald * Source/GSSocketStream.h: simplify socket address handling * Source/GSSocketStream.m: ditto + more work on socks * Source/GSStream.h: minor tweaks * Source/GSStream.m:minor tweaks * Source/unix/NSStream.m: simplified socket address handling * Source/GSNetwork.h: add macro to get socket address length * Source/GSHTTPAuthentication.m: Handle arg classh check in init * Source/NSURLRequest.m: ditto * Source/NSURLProtocol.m: attempt to add support for authentication 2008-01-07 Fred Kiefer * Source/NSFileManager.m (-fileSystemAttributesAtPath:): Correct block size for systems using statvfs(). 2008-01-05 Richard Frith-Macdonald * Source/GSSocketStream.m: Try to honor protocol requested. * Source/NSURLProtocol.m: Add https 2008-01-05 Nicola Pero * Source/Additions/GSXML.m ([GSXPathContext -registerNamespaceWithPrefix:href:]): Added new method to support namespaces in XPath expressions. * Headers/Additions/GNUstepBase/GSXML.h: Same. 2008-01-05 Richard Frith-Macdonald * config/pathtls.m4: fixup form mingw32 * configure: regenerate * Source/GSSocketStream.m: Fix missing ifdefs 2008-01-04 Riccardo Mottola * Source/NSKeyValueObserving.m: fixed cc99ism 2008-01-04 Richard Frith-Macdonald * Source/GSSocketStream.h: * Source/GSSocketStream.m: Add rudimentary gnutls support. Client sockets only, no checking of certificates etc. 2007-01-04 Richard Frith-Macdonald * config/pathtls.m4: New checks for gnu tls * configure.ac: Add checks for gnu tls. * config.mak.in: Take note of tls availability * Headers/Additions/GNUstepBase/config.h.in: ditto * base.make.in: ditto * configure: regenerate Preparatory checks for using gnu tls. 2008-01-04 Richard Frith-Macdonald * Source/GSSocketStream.h: derived from GSStream.h * Source/GSSocketStream.m: derived from GSStream.m * Source/GNUmakefile: use new files * Source/GSStream.h: remove code to GSSocketStream.h * Source/GSStream.m: remove code to GSSocketStream.m * Source/unix/NSStream.m: include GSSocketStream.h * Source/win32/NSStream.m: include GSSocketStream.h Minor restructuring for clarity. 2008-01-04 Richard Frith-Macdonald * Headers/Foundation/NSStream.h: Tweak comments. * Source/GSNetwork.h: New file for common networking declarations. * Source/GSStream.h: * Source/GSStream.m: * Source/unix/NSStream.m: * Source/win32/NSStream.m: Extract socket networking code for both unix and windows into semi-abstract superclasses for input/output/server streams so that we avoid huge duplication of code and can maintain the socket code more easily. Alter the behavior of the code on windows so that when the other end closes the connection we should be able to read all data in transit in the same way as on unix (ie don't close the local end until a read/write actually fails). 2008-01-03 Richard Frith-Macdonald * Source/inet_pton.c: Add mswindows implementation of inet_ntop() as well. 2008-01-02 Richard Frith-Macdonald * Source/win32/GSFileHandle.m: rename to GSFileHandleWin32.m * Source/win32/NSUserDefaultsWin32.m: rename to NSUserDefaults.m * Source/win32/NSMessagePortWin32.m: rename to NSMessagePort.m * Source/win32/NSStreamWin32.m: rename to NSStream.m * Source/win32/NSMessagePortNameServerWin32.m: rename to NSMessagePortNameServer.m * Source/win32/GNUmakefile: Rename source files for consistency. 2008-01-01 Adam Fedor * Tools/HTMLLinker.gsdoc: Readded 2008-01-01 Adam Fedor * Version 1.15.2 2007-12-31 Richard Frith-Macdonald * Source/NSMessagePort.m: * Source/NSSocketPort.m: Fix error sending NSPortMessage objects which have not reserved space in their first component. 2007-12-26 Richard Frith-Macdonald * config/config.joinable.m: test for joinable threads. * configure.ac: Add test for setrlimit and joinable threads * configure: regenerate * Headers/Additions/GNUstepBase/config.h.in: regenerate * Source/NSThread.m: implement setting stack size for new threads. Hack in workaround for versions of libobjc which leak thread resource memory. 2007-12-24 Adam Fedor * configure.ac: Don't fail if ffcall trampolines don't work. * configure: regnerate. 2007-12-24 Richard Frith-Macdonald * Source/NSRunLoop.m: Perhaps a bit paranoid, but alter to recheck all timers after any timer is fired, so we ar sure to pick up any changes done to timer fire dates during the firing of a timer. * Source/NSThread.m: Fix memory leak and correct thread startup semantics to be like MacOS-X I hope. 2007-12-22 Richard Frith-Macdonald * Source/NSRunLoop.m: Fix error finding earliest timer for limit date. 2007-12-21 Richard Frith-Macdonald * Source/GSLocale.m: protect locale access with locks. 2007-12-21 David Ayers * Source/NSPathUtilities.m (_POSIX_PTHREAD_SEMANTICS): Define to expose POSIX compliant signatures for get(pw/gr)(nam/uid)_r. * Headers/Additions/GNUstepBase/config.h.in, configure.ac (alloca.h): Check for header. * configure: Regenerate. * Source/mframe.m, Source/cifframe.m, Source/NSConnection.m, Source/callframe.m, Source/GSFormat.m: Include alloca.h where available. 2007-12-20 David Ayers * Headers/Additions/GNUstepBase/GSLock.h: Include GSObjCRuntime.h for GS_EXPORT declaration. * Source/NSFileManager.m (_POSIX_PTHREAD_SEMANTICS): Define to expose POSIX compliant signatures for get(pw/gr)(nam/uid)_r. 2007-12-19 Richard Frith-Macdonald * configure.ac: Add checks for thread-safe versions of some standard library functions. * Headers/Additions/GNUstepBase/config.h.in: Regenerate * configure: Regenerate * Source/NSPathUtilities.m: * Source/NSProcessInfo.m: * Source/NSFileManager.m: * Source/externs.m: * Source/Additions/GSObjCRuntime.m: * Source/Additions/GSCategories.m: * Source/Additions/GSLock.m: * Headers/Foundation/NSObject.h: * Headers/Additions/GNUstepBase/GSLock.h: * Tools/defaults.m: Use thread-safe variants of system functions or pretect unsafe ones using gnustep_global_lock. Fixes part (but not all) of bug #21320 2007-12-17 Fred Kiefer * Source/NSKeyValueObserving.m (-setKeys:triggerChangeNotificationsForDependentKey:): Correct the key strategy of the map. 2007-12-17 Adam Fedor * Source/Makefile.postamble: Use DESTDIR over obsolete INSTALL_ROOT_DIR * configure.ac, config/objc-con-autoload.m4, config/procfs.m4: Some improvements for cross-compiling. 2007-12-15 Fred Kiefer * Source/NSKeyValueObserving.m (-keyPathChanged:): Correct forwarding of changes. 2007-12-15 Fred Kiefer * Source/NSValueTransformer.m, * Source/externs.m: Moved name of standard NSValueTransformers to externs and corrected strings. 2007-12-15 Fred Kiefer * Source/NSKeyValueObserving.m (-overrideSetterFor:): Replace exception with log message. * Source/NSKeyValueObserving.m (-addObserver:...context:): Use original class as key for replacement. 2007-12-15 Fred Kiefer * Source/NSKeyValueObserving.m (-overrideSetterFor:): Manually capitalize the string, as the NSString method capitalizedString lowers all other characters. 2007-12-14 Fred Kiefer * Source/NSKeyValueObserving.m (-overrideSetterFor:): Made aware of dependent key mapping. 2007-12-14 Richard Frith-Macdonald * Source/NSKeyValueObserving.m: Rewrite code for the subclass which handles overriding of setters. Should only override the setters for the keys which have been observed. Compiles but untested! 2007-12-11 Richard Frith-Macdonald * Source/NSUserDefaults.m: catch any exception if som eone breaks our lock on the defaults file. 2007-12-11 Richard Frith-Macdonald * Source/NSIndexSet.m: Test and debug ([-initWithCoder:]) and ([-encodeWithCoder:]) methods for keyed archiving of sets with multiple index ranges. Implement old-style coding/decoding as well. 2007-12-10 Chris Farber * Source/NSKeyValueObserving.m: implement methods needed for gui bindings. 2007-12-08 Richard Frith-Macdonald * Source/NSRunLoop.m: Deal with mutation of timers array during firing of a timer. 2007-12-07 Richard Frith-Macdonald * Headers/Additions/GNUstepBase/GSConfig.h.in: * Headers/Foundation/NSString.h: declare unichar as uint16_t 2007-12-07 Richard Frith-Macdonald * Source/NSRunLoop.m: Keep timers unordered and check all of them each time round ... to avoid bug where a timer is added to more than one run loop mode and firing in one mode could result in badly ordered timers in another mode. Handle resetting of time for repeating timers. Allow timeout handler callbacks to use ([-setFireDate:]) and have it honoured. * Source/NSTimer.m: Remove resetting of fire date from ([-fire]) and move it to the run loop for MacOS-X compatibility. 2007-12-06 Richard Frith-Macdonald * Source/NSRunLoop.m: Report the current mode when producing detailed debug output, for better tracking of problems. 2007-12-06 Richard Frith-Macdonald * Source/NSException.m: fix error reporting module containing code and limit the length of the stack trace. 2007-12-06 Richard Frith-Macdonald * Source/NSURL.m: Increase detail of information about bad URL string on initialisation. Only output debug info if --GNU-Debug=dflt 2007-12-06 Richard Frith-Macdonald * Source/NSException.m: honour environment variable for displaying stack trace. 2007-12-06 Richard Frith-Macdonald * Source/NSIndexSet.m (-initWithCoder:): Implement guessed algorithm for keyed archiving of sets with multiple index ranges. 2007-12-06 Fred Kiefer * Source/NSIndexSet.m (-initWithCoder:): Fix wrong method in last change. 2007-12-05 Richard Frith-Macdonald * Source/NSException.m: Add new MacOS-X method and improve stack trace code. * Source/NSXMLParser.m Add include for NSDictionary. * Documentation/Base.gsdoc: Improve documentation of stack trace. * Headers/Foundation/NSException.h: Add new MacOS-X method. 2007-12-05 David Ayers * Source/NSDecimalNumber.m: (isinf,isnan,isinff,isnanf): Remove. (GSIsNAN,GSIsInf): Attempt a more portable approach with using _ISOC99_SOURCE which is also supported by some BSD's and possibly Solaris. 2007-12-04 Richard Frith-Macdonald * Source/NSFileManager.h: move includes around to fix bug #21718 2007-12-03 David Ayers * Source/NSDecimalNumber.m: (isinf,isnan,isinff,isnanf): Temporary empty definitions of C99 macros for environments which do not define them. 2007-12-03 Fred Kiefer * Source/NSIndexSet.m (-initWithCoder:, -encodeWithCoder) * Source/NSData.m (NSMutableData-initWithCoder:, -encodeWithCoder): Add some keyed encoding/decoding. 2007-12-03 Richard Frith-Macdonald * Source/NSDebug.m: * Source/GSPrivate.h: * Source/NSException.m: * Source/NSThread.m: Rewrite some stackframe handling code for greater efficiency. When raising an exception, just get the current stack and don't bother translating addresses to method/function information until needed by the -description method. Improves performance of exception handling and eliminates the possibility of a recursive exception due to a problem in the stacktrace code. 2007-12-02 David Ayers * Source/NSDecimal.m (GSDecimalDouble): Use NAN when available. * Source/NSDecimalNumber.m ([initWithBytes:objCType:]): Implement initialization with scalar types. Use GSPrivateDefaultLocale to initialze intermediate string to match expectations of initWithString. (NSDecimalNumberClass): Added local class cache. ([+initialize]): Initialize new cache. ([-compare]): Test for all subclasses instead of only NSDecimalNumber instances. * Source/NSCalendarDate.m: Add explicit include of NSDictionary.h. * Source/NSNotification.m: Ditto. * Source/NSURLResponse.m: Ditto. Use available dictionary declartion. * Source/NSURLProtocol.m: Add explicit import of NSData.h. * Source/NSSerializer.m: Add explicit import of NSEnumerator.h. * Source/NSURLConnection.m ([-initWithResponsePointer:andErrorPointer:]): Add declaration. * Source/NSKeyValueMutableArray.m: Various non-functional variable and parameter renames to avoid bogus compiler warnings. * Source/NSKeyValueMutableSet.m: Ditto. 2007-11-30 Richard Frith-Macdonald * Tools/gdomap.h: fix typo 2007-11-29 Marcus Muller * Source/NSKeyValueCoding.m: Make backward compatibility work with situations where we have classes using both new and old APIs in the same executable. 2007-11-29 Richard Frith-Macdonald * Source/GSLocale.m: * Source/NSTimeZone.m: * Source/NSNetServices.m: * Source/NSURLCredential.m: * Source/NSPortCoder.m: * Source/NSURLAuthenticationChallenge.m: * Source/NSKeyValueCoding.m: * Source/NSBundle.m: * Source/NSURLHandle.m: * Source/NSPropertyList.m: * Source/NSAffineTransform.m: * Source/GSRunLoopWatcher.m: * Source/NSUserDefaults.m: * Source/GSArray.m: * Source/GSFFCallInvocation.m: * Source/NSArray.m: * Source/GSStream.m: * Source/NSDebug.m: * Source/unix/NSStream.m: * Source/NSKeyedUnarchiver.m: * Source/GSConcreteValue.m: * Source/NSURLDownload.m: * Source/GSHTTPURLHandle.m: * Source/NSURLCredentialStorage.m: * Source/GSFFIInvocation.m: * Source/GSDictionary.m: * Source/GSCountedSet.m: * Source/NSUnarchiver.m: * Source/win32/NSStreamWin32.m: * Source/NSURLResponse.m: * Source/NSURLProtocol.m: * Source/NSURLCache.m: * Source/GSAttributedString.m: * Source/NSException.m: * Source/NSURL.m: * Source/Additions/GSObjCRuntime.m: * Source/Additions/GSInsensitiveDictionary.m: * Source/GSSet.m: * Source/NSConnection.m: * Source/GSString.m: * Source/NSHost.m: * Source/NSURLProtectionSpace.m: * Source/GSValue.m: * Source/NSDictionary.m: * Source/GSHTTPAuthentication.m: * Source/NSURLRequest.m: * Source/NSCountedSet.m: * Source/GSFormat.m: * Source/GSFileHandle.m: * Source/NSSet.m: * Source/NSArchiver.m: * Source/NSPortNameServer.m: * Source/GSFTPURLHandle.m: * Source/NSEnumerator.m: * Source/GSURLPrivate.h: * Source/NSURLConnection.m: * Headers/Foundation/NSArray.h: * Headers/Foundation/NSFileManager.h: * Headers/Foundation/NSUtilities.h: * Tools/defaults.m: * Tools/make_strings/make_strings.m: * Tools/make_strings/StringsEntry.m: * Testing/nstimezone.m: * Testing/nsarray.m: * Testing/nsprocessinfo.m: * Testing/nsdictionary.m: * Testing/nsset.m: * Testing/nsarchiver.m: * Testing/call.m: * Testing/benchmark.m: * Testing/nsbundle.m: Remove use of deprecated NSUtilities.h header, and add explicit includes of NSDictionary.h, NSEnumerator.h etc. 2007-11-29 Richard Frith-Macdonald * Source/NSKeyValueCoding.m: Remove erroneous check for nil argument in obsolete method ([takeValue:forKey:]). 2007-11-28 Richard Frith-Macdonald * Source/Additions/GSMime.m: Improve code for folding header lines to try to make sure long values don't go beyond the 78 character limit. 2007-11-26 Richard Frith-Macdonald * Source/Additions/GSXML.m: Make check for apple property lists more tolerant. 2007-11-25 Richard Frith-Macdonald * Headers/Foundation/NSThread.h: Add new methods from MacOS 10.5 Add new ivars to match. Add _reserved to preserve binary compatibility over future changes. Make all ivars private. * Source/NSThread.m: Implement some new MacOS-5 stuff and add stubs for stack size and thread cancellation. * Source/NSException.m Implement ([NSThread+callStackReturnAddresses]) Restructure a little to avoid problems when building without debug. 2007-11-09 Adam Fedor * Version 1.15.1 2007-11-06 Roland Schwingel * Source/NSTimeZone.m: In windows use wide (unichar) API 2007-11-05 Richard Frith-Macdonald * Source/NSXML.m: Make sloppy parser available for internal use when parsing bad xml produced by Apple tools. * Source/NSPropertyList.m: Use GSSloppyXMLParser if normal xml2 based parsing fails due to Ap[ple4's inclusioon of illegal characters in the XML. 2007-10-31 Richard Frith-Macdonald * Source/NSUserDefaults.m: ([setBoolForKey:]) changed to store YES or NO as a string for MacOS-X compatibility. 2007-10-30 Adam Fedor * gnustep-base.spec.in: Change Copyright to License. 2007-10-11 Wolfgang Lux * Source/NSUndoManager: Prevent incorrect posting of notifications during undo/redo and avoid unnecessary creation of undo groups. 2007-10-10 Fred Kiefer * Source/NSDecimal.m (NSDecimalMultiplyByPowerOf10): Move check of over/underflow after copy. Patch by Mark Tracy . 2007-10-03 Richard Frith-Macdonald * Source/NSData.m: Fix ([-classForCoder:]) to return base class of cluster (bug #21133) * Source/cifframe.m: avoid compiler warnings (bug #16996) 2007-09-25 Richard Frith-Macdonald * Source/Additions/GSMime.m: Decode headers as latin1 by default if parsing http rather than mime. 2007-09-14 Richard Frith-Macdonald Update files to use LGPL3 and GPL3 licenses. 2007-09-09 Richard Frith-Macdonald * Source/NSNotificationCenter.m: Wrap posting of notification in exception handler to log exceptions. 2007-08-24 23:53-EDT Gregory John Casamento * Headers/Foundation/NSPort.h: Removed commented out declaration in the header. 2007-08-04 David Ayers * Source/GSHTTPURLHandle.m (writeKeyCallBacks): Use retained callbacks for keys. 2007-08-02 Richard Frith-Macdonald * Source/NSProcessInfo.m: Private method to check existence of process. 2007-07-31 Richard Frith-Macdonald * Headers/Foundation/NSRange.h: * Headers/Foundation/NSException.h: * Headers/Foundation/NSGeometry.h: * Headers/Foundation/NSAutoreleasePool.h: * Headers/Additions/GNUstepBase/preface.h.in: * macosx/GNUstepBase/preface.h: Use __typeof__ rather than typeof so that if the header is included in user code which is compiled with a flag to disalow typeof, the code will still work. 2007-07-25 Fred Kiefer * Headers/Foundation/NSErrorRecoveryAttempting.h: Add new file. * Source/GNUmakefile: Install this file. 2007-07-22 Richard Frith-Macdonald * Tools/AGSOutput.m: escape angle brackets in types of function arguments. 2007-07-19 Riccardo Mottola * Source/NSKeyValueCoding.m: * Source/NSKeyValueMutableSet.m: Code cleanup and C99-ism fixes 2007-07-14 Richard Frith-Macdonald * Source/NSKeyValueCoding.m: * Source/NSKeyValueMutableSet.m: * Source/NSArray.m: * Source/NSKeyValueMutableArray.m: Whitespace and initialisation tidyups. 2007-07-11 Richard Frith-Macdonald * Source/NSString.m: For MacOS-X compatibility, alter -propertyList to have the undocumented behavior of parsing strings file format too. 2007-07-10 Chris Farber * Source/NSArray.m ([NSArray -objectsAtIndexes:]): New method. ([NSMutableArray -removeObjectsAtIndexes:]): New method. * Headers/Foundation/NSArray.h: Added the new methods. * Source/NSKeyValueCoding.m ([-mutableArrayValueForKey:]): New method. ([-mutableArrayValueForKeyPath:]): New method. ([-mutableSetValueForKey:]): New method. ([-mutableSetValueForKeyPath:]): New method. ([-valueForUndefinedKey:]): Include key and object in the reason of an NSUndefinedKeyException. * Headers/Foundation/NSKeyValueCoding.h: Added the new methods. * Source/NSKeyValueMutableSet.m: New file. * Source/NSKeyValueMutableArray.m: New file. 2007-07-10 Richard Frith-Macdonald * Source/win32/GSFileHandleWin32.m: Fixup for pipes as suggested by Matthew Jiminez. 2007-06-26 Richard Frith-Macdonald * Source/NSKeyedArchiver.m: * Source/NSKeyedUnarchiver.m: Implement support for arrays of objc types to fix bug #20268 2007-06-21 Richard Frith-Macdonald Rewrite code to support parsing of predicates containing all the '%' format strings (as suggested by Fred). 2007-06-20 Richard Frith-Macdonald * Source/NSPredicate.m: Fix bug #20215 ... scanning of greater than and less than operators. Add code to attempt to support parsing of predicates containing all the '%' format strings ... untested. 2007-06-15 Adam Fedor * Source/NSTimeZone.m ([NSTimeZone +timeZoneArray]): Skip .tab files when looking for zones. 2007-06-14 Richard Frith-Macdonald * Source/NSNumber.m: Implement ([isEqualToValue:]) * Source/NSPredicate.m: Fix bug #20169 2007-06-13 Richard Frith-Macdonald * Source/NSURLHandle.m: ([loadInForeground]) return as soon as load is complete, rather than waiting for up to a second. 2007-06-12 Fred Kiefer * Source/NSPredicate.m: Fake like and matches by using compare:options: and reverted change for string equality. 2007-06-11 Fred Kiefer * Source/NSPredicate.m: Improved predicate parsing. Handle more alternate key strings, implemented BETWEEN, use compare:options: for string equality test and handle in for collections. 2007-06-09 Fred Kiefer * Source/NSPredicate.m: Improved predicate parsing. 2007-06-08 Richard Frith-Macdonald * Source/GSString.m Fix bug getting cString from literal string with illegal (non-ascii) characters. * Source/NSKeyValueCoding.m: Fix backward compatibility issue with NSUnknownKeyException. 2007-06-06 Richard Frith-Macdonald * Source/NSKeyValueCoding.m: Use UTF8 rather than ASCII 2007-06-03 Richard Frith-Macdonald * Source/GSHTTPURLHandle.m: define MSG_DONTWAIT as zero if it's not defined ... it should not be needed anyway if the socket is already non-blocking. 2007-06-03 Richard Frith-Macdonald * Source/win32/GSFileHandleWin32.m: Clean up indentation issues etc. 2007-06-01 Richard Frith-Macdonald * Source/Additions/GSMime.m: Fix problem where any header starting with 'http' would be mangled. 2007-05-31 Richard Frith-Macdonald * Tools/NSKeyValueCoding.m: Minor fix for backward compatibility in ([setNilValueForKey:]). 2007-05-30 Richard Frith-Macdonald * Tools/gdomap.m: Don't trap abort signal. 2007-05-29 Richard Frith-Macdonald * Source/NSData.m: when unable to open a file, log should be debug level rather than warn level. 2007-05-23 Fred Kiefer * Headers/Foundation/NSCompoundPredicate.h: Add some common ivars. * Headers/Foundation/NSExpression.h:Add some common ivar. * Source/NSPredicate.m: Implement a lot of missing functionality for the predicate and expression classes. Clean up formatting. 2007-05-16 Richard Frith-Macdonald * Headers/Foundation/NSNetServices.h: fix bug #19872 2007-05-16 Richard Frith-Macdonald * Source/NSURLConnection.m: Cancel when deallocating. * Source/NSURLProtocol.m: Make sure load is stopped if an error occurs. 2007-05-15 Richard Frith-Macdonald * Source/NSException.m: Permit some recursion in handling uncaught exceptions so that different exception handlers can be tried ... in particular, so that the gui library exception handler can fall back to using the base library handler and get a printout of the exception details when the program terminates. 2007-05-15 Richard Frith-Macdonald * Source/NSURLConnection.m: Minor simplifications. * Source/NSURLProtocol.m: Perform automatic redirect from http://host to http://host/ to standardise URL used for caching as noted in Apple documentation. * Source/NSURLRequest.m: use case insensitive dictionary for headers. * Source/Additions/GSMime.m: fix error makeing tokens lowercase. 2007-05-14 Richard Frith-Macdonald * Source/Additions/GSInsensitiveDictionary.m: For internal use storing values on case insensitive keys. * Source/Additions/GNUmakefile: Build insensitive dictionaries. * Source/GSPrivate.h: Make insensitive dictionaries available. * Source/NSURLResponse.m: Use insensitive dictionaries. * Source/NSURLProtocol.m: Clean up. * Source/Additions/GSMime.m: New stuff to retain case information. * Headers/Additions/GNUstepBase/GSMime.h: ditto. 2007-05-14 Richard Frith-Macdonald * Source/NSURLProtocol.m: * Source/NSURLRequest.m: * Source/NSURLConnection.m: Added tweaks for redirection andvarious comments. 2007-05-14 Richard Frith-Macdonald * Source/Additions/Unicode.m: Avoid using NSString while printing warning about iconv problems ... try to avoid possible recursion etc. 2007-05-13 Richard Frith-Macdonald * Source/NSURLProtocol.m: Replace mystep response parsing code with more reliable/standard-compliant stuff adapted from NSURLHandle.m 2007-05-12 Richard Frith-Macdonald * Source/GSStream.h: New runloop management * Source/GSStream.m: Support scheduling in multiple runloops to match documented MacOS-X behavior. Trigger instant event on error or eof. * Source/unix/NSStream.m: Don't send error and eof events asap, defer until the runloop runs as this is how MacOS-X behaves. * Source/win32/NSStreamWin32.m: ditto. * Source/unix/GSRunLoopCtxt.m: Fix failure to trigger immediate events when there are no non-immediate input sources in th loop. Fix busy poll when there are no non-immediate sources in the loop. * Source/win32/GSRunLoopCtxt.m: ditto 2007-05-12 Richard Frith-Macdonald * Source/NSURLProtocol.m: Fix multiple release of headers. 2007-05-11 Richard Frith-Macdonald * Source/GSStream.m: * Source/unix/NSStream.m: * Source/win32/NSStreamWin32.m: * Headers/Foundation/NSStream.h: First hack at extensions to get address and port properties for network streams. Use localhost if no host is given for connect. * Source/GSFFIInvocation.m: Attempt to use forward2 if available. * Source/NSURLProtocol.m: Fixup some problems with incorporation of code from mySTEP. 2007-05-11 Richard Frith-Macdonald * Source/NSURLResponse.m: * Source/NSURLProtocol.m: * Source/NSURLRequest.m: * Source/GSURLPrivate.h: * Source/NSURLConnection.m: Changes accidentally missed from update on 27th april. 2007-05-02 Nicola Pero * configure.ac: Set GNUSTEP_MAKEFILES to CURRENT_GNUSTEP_MAKEFILES before sourcing GNUstep.sh. Fixes building when paths to hardcode in the library are different from paths used when building, typically a case when packaging. * configure: Regenerated. 2007-04-28 Richard Frith-Macdonald * Source/thr-pthread.m: Set thread attributes detached to avoid memory leak as suggested by Chris Ball 2007-04-27 Richard Frith-Macdonald * Source/NSBundle.m: Reformat for coding standards. Alter library resource lookup to find correct version when multiple versions of the base library are installed and the old unversioned api is used. * Source/NSURLHandle.m: Scheduling tweak. * Source/GSFFCallInvocation.m: Use forward2 if available. * Source/GSFFIInvocation.m: Use forward2 if available. * Source/NSURLRequest.m: Tidyups * Source/NSURLConnection.m: Tidyups * Source/NSURLProtocol.m: Incorporate some concrete protocols from mySTEP ....needs rewriting and then testing. * Headers/Foundation/NSURLRequest.h: Fix typos and improve comments. 2007-04-16 Richard Frith-Macdonald * config/config.forward2.m: Test for forward2 function in runtime. * configure.ac: Run forward2 test * Headers/Additions/GNUstepBase/config.h.in: record forward2 test. * configure: regenerate 2007-04-15 Richard Frith-Macdonald * configure.ac: check for wide character support in printf * config/config.wprintf.c: ditto * configure: regenerate * Headers/Additions/GNUstepBase/config.h.in: regenerate * Source/NSString.m: Don't use wide char support if we don't have it. Should fix bug #19587 2007-04-15 Richard Frith-Macdonald * Source/NSBundle.m: ([+pathForResource:ofType:inRootPath:inDirectory:withVersion:]) Tolerate nil/empty resource name for compatibility with MacOS-X and to fix bug #19588 * Source/NSPredicate.m: Implement ([-filterUsingPredicate:]) for NSMutableArray. * Headers/Foundation/NSPredicate.h: Add the ([-filterUsingPredicate:]) method and document it. * config/config.printf.c: use 'wide' field in info structure to check that it exists. 2007-04-13 Ricccardo Mottola * Source/NSSortDescriptor.m : removed C99-ism 2007-04-13 Ricccardo Mottola * Source/GSHTTPURLHandle.m : removed C99-ism 2007-04-13 Adam Fedor * Version: Fix matching numeric version 2007-04-13 Richard Frith-Macdonald * Source/GSFileHandle.m: ([-readDataOfLength:]) fix bug which could cause short reads. 2007-04-12 Adam Fedor * Tool/HTMLLinker.m: Re-add. * Documentation/coding-standards.texi: Add info section * Documentation/manual/manual.texi: Likewise (patch from Marco Bardelli). * gnustep-base-debug.spec.in: Remove * gnustep-base.spec.in, Documentation/install.texi: Document that gnustep-make 2.0.0 is required. 2007-04-12 Adam Fedor * Version 1.15.0 2007-04-12 Adam Fedor * Version 1.14.0 2007-04-11 Richard Frith-Macdonald * Documentation/news.texi: * Documentation/ReleaseNotes.gsdoc: * Documentation/manual/Compliance.texi: Add new stable release information and fixx a couple of documentation errors. 2007-04-11 Richard Frith-Macdonald * Source/Additions/GSXML.m: * Source/Additions/GSCompatibility.m: * Source/Additions/GSMime.m: * Headers/Foundation/NSString.h: * Headers/Additions/GNUstepBase/GSCategories.h: * Headers/Additions/GNUstepBase/Unicode.h: More macos-x portability fixups. 2007-04-01 Richard Frith-Macdonald * Source/GSLocale.m: * Source/Additions/Unicode.m: * Headers/Foundation/NSString.h: * Headers/Additions/GNUstepBase/Unicode.h: Header/include fixups for macosx portability. 2007-03-30 Richard Frith-Macdonald * Source/NSPredicate.m: ([-parseOr]) Use orPredicateWithSubpredicates rather than andPredicateWithSubpredicates. Fix for bug #19446. * Source/unix/NSStream.m: Fix memory leak. * Source/NSPathUtilities.m: NSSearchPathForDirectoriesInDomains() Don't include empty paths. 2007-03-25 Richard Frith-Macdonald * Source/NSTimer.m: minor optimisation ... avoid unnecessary use of autorelease by doing explicit release instead. 2007-03-22 Richard Frith-Macdonald * Source/NSPathUtilities.m: NSTemporaryDirectory() don't raise exception on error, just log a warning and return nil. * Source/NSDateFormatter.m: When given an empty string to convert to a date, just skip the conversion. 2007-03-21 Nicola Pero * Source/NSBundle.m ([+initialize]): Removed unused check. 2007-03-20 Nicola Pero * Source/NSUserDefaults.m ([+standardUserDefaults]): Fixed bug were the same enumerator variable was reused in the two nested loops and language resources wouldn't be found. Optimized a little by factoring some variables out of the inner loop. Reorganized usage of information from the C locale so that we use it whenever a language resource lookup can not be found and the C locale information is precisely for that language, but not otherwise. 2007-03-19 Nicola Pero * Tools/gsdoc.gsdoc: Removed reference to GNUSTEP_SYSTEM_ROOT; use up-to-date variables such as GNUSTEP_SYSTEM_LIBRARY and GNUSTEP_SYSTEM_DOC. * Tools/gsdoc-1_0_1.rnc: Same change. * Tools/gsdoc.7: Same change. * Tools/gdomap.8: Same change. * INSTALL: Updated. 2007-03-19 Richard Frith-Macdonald * Source/NSDictionary.m: Correct errors in documentation about keys being retained when they are in fact copied. 2007-03-17 Adam Fedor * config/config.trampoline.c: Check for proper CPU macro for Darwin * configure.ac: Don't enable libffi by default on Darwin (patches from Wolfgang Lux). 2007-03-17 Nicola Pero * SSL/GNUmakefile: Install the SSL bundle in the versioned gnustep-base resource directory. * Source/NSFileHandle.m ([+sslClass]): Load the SSL bundle from the versioned gnustep-base resource directory. 2007-03-17 Nicola Pero * Source/Makefile.postamble (before-uninstall): Remove GSConfig.h. 2007-03-17 Nicola Pero * Source/NSBundle.m ([+bundleForLibrary:version:]): Fixed looking up library resource bundle when no version is provided. 2007-03-16 Richard Frith-Macdonald * Source/unix/NSStream.m: * Source/win32/NSStreamWin32.m: Try to ensure that end of stream events are sent reliably. 2007-03-15 Richard Frith-Macdonald * Source/NSPropertyList.m: ([GSBinaryPLParser-readCountAt:]) Handle counts for objects larger than 64KB correctly. 2007-03-14 Richard Frith-Macdonald * configure.ac: By default disable the GNUSTEP_CONFIOG_FILE environment variable on windows so that we don't accidentally use the development config file (with unix style paths) when we want to be using runtime config (with windows paths). * configure: Regenerate * Source/GSPrivate.h: New private function to determine native C-string encoding. * Source/Additions/Unicode.m: ditto * Source/GSLocale.m: Use native C-String encoding to handle locale information strings. 2007-03-14 Nicola Pero * Source/NSUserDefaults.m ([+standardUserDefaults]): Manually lookup gnustep-base language resources without using NSBundle to break the bootstrap chicken-and-egg problem between NSBundle and NSUserDefaults. 2007-03-14 Richard Frith-Macdonald * Source/Additions/GSXML.m: Fix memory leak caused by url handle retaining xmlrpc object as a client. 2007-03-13 Richard Frith-Macdonald * Source/GSLocale.m: Expect locale information (nl_langinfo) to be in default c-string encoding ... though it's debatable how one knows what that should be. 2007-03-12 Richard Frith-Macdonald * NSTimeZones/NSTimeZones.tar: regenerated. * Source/GSString.m: getCString_c() Fix error freeing unallocated memory when converting a zero length constant string to external cstring representation. 2007-03-09 Nicola Pero Implemented library resource bundle versioning. Updated gnustep-base to use versioned resources. * Source/NSBundle ([+bundleForLibrary:version]): New method. Allow to request the resource bundle for a specific version. Changed bundle resource location to be GNUSTEP_LIBRARY/Libraries//Versions//Resources to allow versioned resources and be similar to framework resources - will be handy in the future. Fall back to the old unversioned bundle at GNUSTEP_LIBRARY/Libraries/Resources/ if no specific version is required and no versioned bundle can be found. ([+bundleForLibrary:]): Implemented in terms of +bundleForLibrary:version:. Should be backwards compatible if you're not using resource versioning yet. ([+initialize]): When creating _gnustep_bundle, use [+bundleForLibrary:version:] to get the appropriate version of the bundle. * Headers/Foundation/NSBundle.h ([+bundleForLibrary:version:]): New method; updated documentation for this method and for [+bundleForLibrary:]. * Resources/GNUmakefile: Include ../Version and install into the new versioned directory. * NSTimeZones/GNUmakefile: Same changes. * Source/GNUmakefile: Same changes. * Source/NSBundle.m ([+bundleForClass:]): If we are asked for the bundle for NSObject, return _gnustep_bundle (prepared during +initialize) immediately. * Source/NSTimeZone.m (_time_zone_path): Use bundleForClass: NSObject to get the gnustep-base bundle immediately and safely. * Source/NSUserDefaults.m ([+standardUserDefaults]): Same change. * Source/GNUmakefile (libgnustep-base_INTERFACE_VERSION, libgnustep-baseadd_INTERFACE_VERSION): Use more standard makefile syntax. 2007-03-09 Richard Frith-Macdonald * Source/NSProcessInfo.m: On mswindows, don't count a '.exe' extension as part of the process name. * Source/NSUserDefaults.m: Revert last change ... now done in NSProcessInfo.m 2007-03-08 Richard Frith-Macdonald * Source/Addictions/GSXML.m: Cope with cancellation of load from URL in XMLRPC better. 2007-03-08 Nicola Pero * Source/NSPathUtilities.h (GSAdminToolsDirectory): New directory key. * Source/NSPathUtilities.m: Implemented it. 2007-03-07 Richard Frith-Macdonald * Source/GSHTTPURLHandle.m: Mimic MacOS-X behavior and cancel loading if http status code is not in the 200-299 (success) range. 2007-03-07 Richard Frith-Macdonald * Tools/objctidy.m: Removed ... should not have been added really as it's very unreliable ... better remove before it accidentally gets into a stable release. 2007-03-06 Richard Frith-Macdonald * Source/NSSpellServer.m: Use Library directory in user domain for local dictionaries. * Source/NSDistributedNotificationCenter.m: autolaunch gdnc with the --auto option. * Tools/gdnc.m: Understand --auto to mean that we should shut down automatically when all connections in to us are dropped. 2007-03-06 Nicola Pero * configure.ac: Added GNUSTEP_SYSTEM_USERS_DIR, GNUSTEP_NETWORK_USERS_DIR and GNUSTEP_LOCAL_USERS_DIR. * configure: Regenerated. * Headers/Additions/GNUstepBase/config.h.in: Regenerated. * Source/NSPathUtilities.m: Read and process the new variables; fixed NSUserDirectory to return the proper GNUSTEP_*_USERS_DIR instead of the user's home directory. 2007-03-06 Richard Frith-Macdonald * Source/NSUserDefaults.m: On mswindows, don't count a '.exe' extension as part of the process name when fetching defaults. 2007-03-05 Nicola Pero * configure.ac: Fixed setting default GNUSTEP_*_ADMIN_APPS and GNUSTEP_*_ADMIN_TOOLS when none is found in the config file. * configure.ac: Print out the entire filesystem layout that is hardcoded into gnustep-base. It makes it easier to debug filesystem layout issues. * configure.ac: Read, process and output the new GNUSTEP_*_WEB_APPS variables. * configure.ac: Do not output GNUSTEP_CONFIG_FILE variable which is used nowhere. * configure: Regenerated. * Headers/Additions/GNUstepBase/config.h.in: Added definitions of GNUSTEP_*_WEB_APPS. * Headers/Foundation/NSPathUtilities.h (NSSearchPathDirectory): Added GSWebApplicationsDirectory. * Source/NSPathUtilities.m: Implemented GSWebApplicationsDirectory. 2007-03-05 Richard Frith-Macdonald * Source/NSObject.m: Try using atomic increment/decrement to get performance of retain/release improvement in multithreaded programs. 2007-03-05 Adam Fedor * configure.ac, config/config.trampoline.c: Add trampoline test. 2007-03-05 Richard Frith-Macdonald * Headers/Foundation/NSAffineTransform.h: Add flags to allow optimisation of identity and flipped coordinates(from mySTEP) * Source/NSAffineTransform.m: Add code from mySTEP for, optimising common cases. Fixup optimised code to use B and B consistently. Fixup bug in optimised code for prepending matrix. Add optimised cases for flipped transforms in appand and prepend. Fix bug in ([-transformSize:]) which was causing problems with negative values (MacOS-X allows negative values here, and any issues need to be dealt with by the calling code). 2007-03-04 Richard Frith-Macdonald * Headers/Foundation/NSSpellServer.h: Moved from appkit * Source/NSSpellServer.m: Moved from appkit * Source/GNUmakefile: Add NSSpellServer * Headers/Foundation/Foundation.h: Add NSSpellServer Moved NSSpellServer in from gui/appkit for MacOS-X compatibility 2007-03-02 Richard Frith-Macdonald * Source/GSHTTPURLHandle.m: Cope with nil authentication info * Source/GSHTTPAuthentication.m: Cope with nil credential and catch exceptions in lock protected areas (there shouldn't be any, but best to be safe). 2007-03-01 Nicola Pero * Source/NSBundle.m ([NSBundle +bundleForLibrary:]): Fixed paths to lookup; it wouldn't work with the new filesystem layout changes. * configure.ac: Raise an error if we're asked to import a config file but no such file is found. * configure: Regenerated. 2007-03-01 Richard Frith-Macdonald * Source/NSZone.m: tidy indentation * Source/NSURLCredential.m: * Source/NSURLAuthenticationChallenge.m: * Source/NSURLCredentialStorage.m: * Source/NSURLResponse.m: * Source/NSURLProtocol.m: * Source/NSURLCache.m: * Source/NSHTTPCookieStorage.m: * Source/NSHTTPCookie.m: * Source/NSURLProtectionSpace.m: * Source/NSURLRequest.m: Use standard function to initialise and clear memory, fixing some potential uninitialised memory errors. 2007-03-01 Richard Frith-Macdonald * configure.ac: Restore last reversion and fix actual bug (I hope) which was an incorrect setting of GNUSTEP_SYSTEM_TOOLS to the Admin subdirectory, causing relative path calculations to be wrong. * configure: regenerated. 2007-03-01 Richard Frith-Macdonald * Source/NSBundle.m: * Source/NSPathUtilities.m: * Headers/Foundation/NSBundle.h: * Headers/Additions/GNUstepBase/config.h.in: * gnustep-base.script.spec.in: Remove internal GNUSTEP_..._ROOT variables which are no longer used. * configure.ac: Refrain from defining GNUSTEP_..._ROOT default values in config.h * configure: regenerated. 2007-02-28 Richard Frith-Macdonald * configure.ac: Revert part of change which guaranteed use of bad paths on mingw ... we allow a fallback to ./GNUstep.conf instead. of using paths from make (which is guaranteed to be wrong as the paths it uses are for msys and we need runtime paths for the win32 api). * configure: Regenerated. 2007-02-28 Nicola Pero * configure.ac: If no config file to import is specified, then load the gnustep-make one in preference to the runtime config file, which might be a relative path such as ./GNUstep.conf. On mingw, do not set just GNUSTEP_xxx_ROOT and similar variables to relative paths, but set all of the GNUSTEP_xxx_yyy variables by computing relative paths using gnustep-make's scripts. * configure: Regenerated. 2007-02-28 Richard Frith-Macdonald * Source/NSObject.m: Update suggested by Larry Campbell to use 32 locks for managing retain counts rather than just one, so reducing lock contention when there are lots of threads running. He reports a 50% performance improvement in his program. 2007-02-27 Nicola Pero * GNUmakefile (CVS_MODULE_NAME): Do not set (exports should be done from subversion now). 2007-02-26 Nicola Pero * configure.ac: Updated for new (shorter) GNUSTEP_SYSTEM_DOC_MAN variable names in GNUstep.conf (and similar for other DOC variable names). * Headers/Additions/GNUstepBase/config.h.in: Same change. * Source/NSPathUtilities.m: Same change. * configure: Regenerated. 2007-02-21 Richard Frith-Macdonald * Source/NSCharacterSetData.h: * Source/NSIndexSet.m: * Source/NSCharacterSet.m: Experimental modifications to allow an NSCharacterSet implementation based on NSIndexSet rather than a bitmap representation. The idea is that such an implementation, while often slower, should use much less memory in most cases and may be a better option on handheld devices for instance. To enable the new code, edit to define GNUSTEP_INDEX_CHARSET near the start of NSCharacterSet.m and build. 2007-02-20 Richard Frith-Macdonald * configure.ac: Fixup to locate headers and libraries installed in system root subdirectories again. * configure: Regenerated. * Source/NSNumber.m: Chance description and stringValue methods to return 1/0 rather than YES/NO for compatibility with undocumented MacOS-X implementation detail (bug #19010) 2007-02-19 Nicola Pero * configure.ac: Updated gnustep-config calls for new/final syntax. Do not source GNUstep.sh at the beginning. * configure: Regenerated. * GNUmakefile: Updated gnustep-config calls, plus set GNUSTEP_MAKEFILES properly using :=, not =. * Documentation/GNUmakefile: Same changes. * Examples/GNUmakefile: Same changes. * NSTimeZones/GNUmakefile: Same changes. * NSTimeZones/GNUmakefile: Same changes. * Resources/GNUmakefile: Same changes. * Source/GNUmakefile: Same changes. * SSL/GNUmakefile: Same changes. * Testing/GNUmakefile: Same changes. * Tools/GNUmakefile: Same changes. 2007-02-19 Richard Frith-Macdonald * Source/NSRunLoop.m: ([performSelector:target:argument:order:modes:]) Alter to retain target and arguments to match MacOS-X (bug #19099) * Source/NSString.m: Fixup removal of leading path separator when appending path componet. * Source/NSPropertyList.m: If parsing of xml property list fails, try again with more tolerant parser which accepts illegal characters. Might fix bug #17112 (illegal character in nib) 2007-02-17 Richard Frith-Macdonald * configure.ac: Use gnustep-config if available. * configure: Regenerate * Source/Makefile.postamble * Source/GNUmakefile * Source/Makefile.preamble * SSL/GSSSLHandle.m * SSL/GNUmakefile * GNUmakefile 2007-02-17 Sergii Stoian * Headers/GNUstepBase/GSFileHandle.h: Fix GSConfig.h include. 2007-02-17 Nicola Pero * Source/NSBundle.m (_find_main_bundle_for_tool): New inline function to locate tools resources in the new gnustep-make v2 location for them. ([NSBundle +mainBundle]): (tool resource lookup) Fixed detecting case of an uninstalled tool to work with the gnustep-make v2 as well. Manage the case separately so we always lookup resources only locally for non-installed tools. For installed tools, first use _find_main_bundle_for_tool to look in the new location for tool resources, falling back to the old gnustep-make v1 location if nothing is found in the new one. 2007-02-16 Nicola Pero * configure.ac: Added GNUSTEP_*_ADMIN_APPS and GNUSTEP_*_ADMIN_TOOLS variables. * configure: Regenerated. * Headers/Additions/GNUstepBase/config.h.in: Regenerated. * Source/NSPathUtilities.m: Read the new config variables. Updated NSAdminApplicationDirectory and NSAllApplicationsDirectory for it. 2007-02-15 Richard Frith-Macdonald * Source/NSTimeZone.m: * Source/Makefile.postamble: * Source/NSProcessInfo.m: * Source/GNUmakefile: * Source/NSConcreteNumber.m: * Headers/Foundation/NSCoder.h: * Headers/Foundation/NSByteOrder.h: * Headers/Foundation/NSObject.h: * Headers/Foundation/NSDecimal.h: * Headers/Foundation/Foundation.h: Move GSConfig.h to the GNUstepBase subdirectory so that it doesn't appear at the top level when FHS layout is used, thus avoiding any possible conflict with another file of the same name in /usr/include 2007-02-15 Nicola Pero Important: do not update from trunk if you need stability. * Source/NSPathUtilities.m: Updated all the path routines to work with the new filesystem support, reading and managing the new variables. * configure.ac: Updated for the new filesystem support: prepare for NSPathUtilities.m default values for all the new variables. Make sure to avoid config files overwriting our current GNUSTEP_MAKEFILES variable. * configure: Regenerated. * Headers/Additions/GNUstepBase/config.h.in: Regenerated using autoheaders to get all the new filesystem default variable definitions. 2007-02-14 Nicola Pero * configure.ac (GNUSTEP_MAKE_CONFIG): Output errors to config.log rather than printing them out. * configure.ac: Source GNUstep.sh when we need to get the current makefile setup. Use GNUSTEP_SYSTEM_HEADERS and GNUSTEP_SYSTEM_LIBRARIES (with backwards compatibility settings) to compile. * SSL/configure.ac: Same changes. * configure: Regenerated. * SSL/configure: Regenerated. 2007-02-14 Nicola Pero We're installing gnustep-base using the new GNUSTEP_INSTALLATION_DOMAIN mechanism, so GNUSTEP_INSTALLATION_DIR will not even be defined in makefiles and should never be referenced. * Tools/Makefile.postamble (after-install): Use GNUSTEP_TOOLS, not GNUSTEP_INSTALLATION_DIR/Tools. 2007-02-14 Nicola Pero * Resources/GNUmakefile (base-resources_INSTALL_DIR): New variable to get it working with new gnustep-make. Keep the old one around for older gnustep-makes. * Source/GNUmakefile (libbase-resources_INSTALL_DIR): Same change. 2007-02-14 Roland Schwingel * Source/NSTimeZone.m: windows bugfix for daylight savings time. 2007-02-13 Richard Frith-Macdonald * Source/NSString.m: Don't treat leading '~' in path component or extension as a root when appending that component or extension. 2007-02-07 Richard Frith-Macdonald * Source/NSException.m: Only initialise modLock where stack module symbol handling is supported (fix bug #18938) 2007-02-06 Richard Frith-Macdonald * Documentation/manual/manual.texi: fix format errors * Headers/Foundation/NSException.h: document stack trace * Documentation/Base.gsdoc: document stack trace * Source/NSException.m: control stack trace with environment variable Rewrite module loading code to be thread safe. Use dladdr where available, to get offsets for dynamic library symbols so bfi based lookup of function/method name and line number information can work for libraries as well as the main executable. 2007-02-05 Richard Frith-Macdonald * configure.ac: minor tweak to avoid possible inconsistency in environment used to check LLOGN_MAX and LONG_LONG_MAX presence. * configure: regenerate * Source/GSHTTPURLHandle.m: always remove self as observer for all notifications on a socket when closing it. 2007-02-04 Richard Frith-Macdonald * Headers/Foundation/NSCompoundPredicate.h: * Headers/Foundation/NSComparisonPredicate.h: * Headers/Foundation/NSExpression.h: Fixup version macros * Source/NSDebug.m: Make frame functions safe. * Source/NSException.m: Use non-symbolic stack trace if symbols are not available. * Source/NSIndexSet.m: Add private method for minternal use. * Source/NSMessagePort.m: Fix error releasing uninitialised instance. 2007-01-30 Richard Frith-Macdonald * Source/NSAutoreleasePool.m: Fix bug reporting autorlease count. 2007-01-28 Richard Frith-Macdonald * unix/NSStream.m: * win32/NSStreamWin32.m: Send event if an error occurs in the -open method. 2007-01-25 Richard Frith-Macdonald * Source/NSUserDefaults.m: fix failure to unlock thread lock when unabel to obtain filesystem lock. 2007-01-23 Adam Fedor * Source/NSObject.m ([NSObject +initialize]): Apply BSD FPU fix only on x86 machines. 2007-01-23 Richard Frith-Macdonald * Source/win32/NSMessagePortNameServerWin32.m: * Source/win32/NSMessagePortWin32.m: Bugfixes to try to make win32 nameserver operation more reliable. 2007-01-19 Richard Frith-Macdonald * Tools/defaults.m: Make errors go to stderr and be more informative. 2007-01-17 Richard Frith-Macdonald * Source/NSURLHandle.m: ([resourceData]) make sure value returned is autoreleased. * Source/NSURL.m: Parse string a bit more strictly according to RFC 2007-01-16 Nicola Pero * configure.ac: Fixed url of build guide given in error message when ffcall/ffi is not found. 2007-01-07 Richard Frith-Macdonald * Source/NSNetServices.m: Locking fix pointed out by Chris. Fixes for documentation generation. * Source/DocMakefile: Generate documentation for new classes. * Source/NSXMLParser.m: Fix erroneous semicolons and other autogsdoc warnings. 2007-01-04 Richard Frith-Macdonald * Source/NSBundle.m: (initialize) tiny cleanup to avoid compiler warnings if compiled for NeXT runtime. 2006-12-27 Richard Frith-Macdonald * Source/GSString.m: Fix keyed archiving error. 2006-12-27 Chris B. Vetter * Headers/Foundation/NSNetServices.h: New class * Source/NSNetServices.m: New class * Source/GNUmakefile: Build NSNetServices if dns_sd is available. * configure.ac: Check for usability of dns_sd * Headers/Foundation/Foundation.h: Include NSNetServices.h * Headers/Additions/GNUstepBase/config.h.in: add dns_sd availability * base.make.in: add dns_sd availability * configure: regenerate Support for NSNetServices implemented by Chris. Integrated by Richard (untested). 2006-12-27 Richard Frith-Macdonald * Source/NSUserDefaults.m: remove old defaults as housekeeping observer when we reset. * Source/NSXMLParser.m: deactivate some log messages * Source/NSPropertyList.m: add proplist parser using NSXMLParser to support parsing of MacOS-X property lists even when libxml2 is not available. 2006-12-26 Dr. H. Nikolaus Schaller, Richard Frith-Macdonald * Source/NSXMLParser.m: Implement reduced functionality parser if LIBXML2 is not available. 2006-12-26 Richard Frith-Macdonald * Headers/Foundation/NSValueTransformer.h: * Source/NSValueTransformer.m: Complete implementation. Make thread-safe. Document. 2006-12-25 Dr. H. Nikolaus Schaller * Headers/Foundation/NSValueTransformer.h: * Headers/Foundation/Foundation.h: * Source/NSValueTransformer.h: * Source/GNUmakefile: Initial implementation of NSValueTransformer. 2006-12-25 Richard Frith-Macdonald * Headers/Additions/GNUstep/GSVersionMacros.h: Added MacOS-X compatibility version constants. 2006-12-15 Richard Frith-Macdonald * Source/NSNumberFormatter.m: Changes to match coding standards. Small fix to get it to compile with older versions of gcc. Various changes to avoid compiler warnings with newer gcc. Fix problems of assigning immutable string instances to variables typed as mutable strings. 2006-12-15 Graham J Lee * Source/NSNumberFormatter.m: Implement -stringForObjectValue: 2006-12-15 Richard Frith-Macdonald * Source/mframe.m: * Source/cifframe.m: * Source/callframe.m: Fix error testing whether object is an instance. * Headers/Foundation/NSString.h: * Headers/Foundation/NSPropertyList.h: * Headers/Foundation/NSDistributedNotificationCenter.h: * Headers/Foundation/NSNotificationQueue.h: * Headers/Foundation/NSGeometry.h: * Headers/Foundation/NSDecimal.h: Audit all headers and make more MacOS-X enumeration constant fixups so that we shouldn't need to break binary compatibility for additions to the enumeration constants in future (we hope) there is stll the possibility of apple adding constants which conflict with gnustep extensions, though I've left a big gap between apple and gnu values so that conflict should be unlikely unless they specifically try to do it. 2006-12-14 Richard Frith-Macdonald * Headers/Foundation/NSPathUtilities.h: * Source/NSPathUtilities.m: Update constants to be MacOS-X compatible, including addition of a few more keys added in recent versions. WARNING ... change of constants to match MacOS0X introduces binary incompatibility, so full recompile is required. Fix bug/misfeature of only returning paths which exist on the filesystem ... which broke MacOS-X applications which were correctly expecting to find a non-existent path and create it as a location to store their resources in. 2006-12-13 David Ayers * Source/mframe.m (mframe_do_call), * Source/cifframe.m (cifframe_do_call), * Source/callframe.m (callframe_do_call): Simplify by using GSObjCRuntime functions. Add fallback selector search for invocations passed to proxies. Add debug diagnostics. 2006-12-05 Matt Rice * Source/NSBundle.m (+initialize): Remove usage of classes local array. 2006-12-05 Richard Frith-Macdonald * NSURL.m: Check for missing scheme and return nil. * NSString.m: Check for character conversion failure when getting a CString. 2006-11-30 Richard Frith-Macdonald * Source/GSHTTPURLHandle.m: Limit size of handle cache to 16 to avoid increasing memory usage indefinitely if a program keeps loading different URLs. 2006-11-29 Richard Frith-Macdonald * Source/GSPrivate.h: * Source/win32/GSFileHandleWin32.m: * Source/Additions/GSCategories.m: * Source/GSFileHandle.m: Improve error checking and reporting when establishing a tcp/ip connection. 2006-11-27 Matt Rice * Source/NSObject.m: Fix typo. * Headers/Foundation/NSException.h: Export NSObjectInaccessibleException. 2006-11-25 Richard Frith-Macdonald * Source/NSCalendarDate.m: Fix buffer oiveflow vulnerability when parsing string ... really needs major rewrite for better locale use and full unicode support though. * Source/GSHTTPURLHandle.m: add a little more debug. 2006-11-21 Richard Frith-Macdonald * Source/NSURL.m: Fix potential double load of URL data. * unix/NSStream.m: * win32/NSStreamWin32.m: Re-use socket ports so that programs can start up again immediately after they have shut down. 2006-11-20 Richard Frith-Macdonald * Source/NSCalendarDate.m: Fix to parse timezone names as being whitespace delimited. 2006-11-19 Richard Frith-Macdonald * Source/NSAffineTransform.m: Adapted from old gui code * Headers/Foundation/NSAffineTransform.h: ditto * Source/GNUmakefile: Add NSAffineTransform. * Headers/Foundation/Foundation.h: ditto Add NSAffineTransform for MacOS-X compatibility ... gui specific code is added using a category in the gui library. 2006-11-18 Richard Frith-Macdonald * Source/Additions/GSXML.m: ([setRootNode:]) Add checks for invalid argument and improve documentation. * Source/GSHTTPURLHandle.m: don't keep unecessary read operation in progress on idle connection. 2006-11-15 Nicola Pero Notice: you should now use 'make DESTDIR=/tmp/xxx install' if you want to relocate all the installation into /tmp/xxx/ * Makefile.postamble: Use DESTDIR instead of INSTALL_ROOT_DIR everywhere. 2006-11-15 Nicola Pero * Documentation/GNUmakefile (GNUSTEP_INSTALLATION_DOMAIN): Use GNUSTEP_INSTALLATION_DOMAIN instead of GNUSTEP_INSTALLATION_DIR. * Documentation/General/GNUmakefile: Same change. * NSCharacterSets/GNUmakefile: Same change. * NSTimeZones/GNUmakefile: Same change. * Resources/GNUmakefile: Same change. * Source/GNUmakefile: Same change. * SSL/GNUmakefile: Same change. * Tools/GNUmakefile: Same change. 2006-11-14 Richard Frith-Macdonald * Source/GSHTTPURLHandle.m: fix bug detecting eof in read. Add code to check for eof immediately before writing. 2006-11-14 Adam Fedor * Headers/Additions/GNUstepBase/GSCategories.h: Add GSOnce macros. * Source/Additions/GSFunctions.m: Add GSCategories.h 2006-11-13 Richard Frith-Macdonald * Source/NSCalendarDate.m: Fix a few string parsing errors (check that string matches format in MacOS-X compatible manner). * Source/GSHTTPURLHandle.m: try to detect socket being closed by remote end of connection before we try writing to it. 2006-11-12 Richard Frith-Macdonald * Source/GSHTTPURLHandle.m: Clear pageInfo before load. Improve checking for dropped connections. 2006-11-08 Richard Frith-Macdonald Source/NSIndexSet.m: ([addIndexesInRange:]) Fix for case when added range lies within existing range. 2006-11-08 Richard Frith-Macdonald * Source/Additions/GSXML.m: ([stringByEscapingXML]) Fix bug causing newline characters to be removed from escaped strings. 2006-11-07 David Wetzel * Source/Additions/GSXML.m: Fix error setting start and end element for SAX. 2006-11-06 Richard Frith-Macdonald * Source/NSObject.m: Use %p to print address in description. * Documentation/General/OpenStepCompliance.gsdoc: * Documentation/General/Debugging.gsdoc: * Tools/gsdoc.gsdoc: * Tools/gdomap.gsdoc: * Tools/gsdoc-1_0_1.dtd: * Tools/gsdoc-1_0_1.rnc: * Tools/autogsdoc.m: * Tools/AGSOutput.m: * Tools/autogsdoc.1: * Tools/BaseTools.gsdoc: Minor documentation version fixups. 2006-11-03 Richard Frith-Macdonald * Source/NSString.m: ([stringByAddingPercentEscapesUsingEncoding:]) Improved documentation. * Source/Additions/GSMime.m: Add more charset mappings for where the hyphen after the 'iso' has been omitted. 2006-11-02 Richard Frith-Macdonald * Source/NSString.m: ([stringByAddingPercentEscapesUsingEncoding:]) Make the set of characters escaped compatible with MacOS-X (10.4). 2006-11-01 Richard Frith-Macdonald * Source/NSSortDescriptor.m; minor tidyups * Headers/Foundation/NSSortDescriptor.h: add documentation * Headers/Foundation/NSKeyValueCoding.h: improve version macros * Headers/Foundation/NSKeyValueObserving.h: add include for NSArray 2006-10-31 Richard Frith-Macdonald * Source/NSSocketPortNameServer.m: * Source/NSRunLoop.m: * Source/NSDebug.m: * Source/unix/GSRunLoopCtxt.m: * Source/NSPort.m: * Source/NSConcreteNumber.h: * Source/win32/GSRunLoopCtxt.m: * Source/NSThread.m: * Source/NSSerializer.m: * Documentation/Base.gsdoc: * Headers/Foundation/NSTimeZone.h: * Headers/Foundation/NSHashTable.h: * Headers/Foundation/NSCoder.h: * Headers/Foundation/NSRange.h: * Headers/Foundation/NSURLCredential.h: * Headers/Foundation/NSHTTPCookieStorage.h: * Headers/Foundation/NSException.h: * Headers/Foundation/NSByteOrder.h: * Headers/Foundation/NSPortCoder.h: * Headers/Foundation/NSURL.h: * Headers/Foundation/NSURLAuthenticationChallenge.h: * Headers/Foundation/NSCompoundPredicate.h: * Headers/Foundation/NSObject.h: * Headers/Foundation/NSString.h: * Headers/Foundation/NSCalendarDate.h: * Headers/Foundation/NSDecimalNumber.h: * Headers/Foundation/NSKeyValueCoding.h: * Headers/Foundation/NSBundle.h: * Headers/Foundation/NSSerialization.h: * Headers/Foundation/NSURLHandle.h: * Headers/Foundation/NSPropertyList.h: * Headers/Foundation/NSTimer.h: * Headers/Foundation/NSNotification.h: * Headers/Foundation/NSPathUtilities.h: * Headers/Foundation/NSScanner.h: * Headers/Foundation/NSProcessInfo.h: * Headers/Foundation/NSDistributedNotificationCenter.h: * Headers/Foundation/NSNotificationQueue.h: * Headers/Foundation/NSGeometry.h: * Headers/Foundation/NSStream.h: * Headers/Foundation/NSComparisonPredicate.h: * Headers/Foundation/NSDecimal.h: * Headers/Foundation/NSAttributedString.h: * Headers/Foundation/NSRunLoop.h: * Headers/Foundation/NSConnection.h: * Headers/Foundation/NSUndoManager.h: * Headers/Foundation/NSDateFormatter.h: * Headers/Foundation/NSMethodSignature.h: * Headers/Foundation/NSFormatter.h: * Headers/Foundation/NSAutoreleasePool.h: * Headers/Foundation/NSUserDefaults.h: * Headers/Foundation/NSThread.h: * Headers/Foundation/NSHTTPCookie.h: * Headers/Foundation/NSData.h: * Headers/Foundation/NSURLError.h: * Headers/Foundation/NSHost.h: * Headers/Foundation/NSDate.h: * Headers/Foundation/NSArray.h: * Headers/Foundation/NSObjCRuntime.h: * Headers/Foundation/NSProxy.h: * Headers/Foundation/NSURLProtectionSpace.h: * Headers/Foundation/NSKeyedArchiver.h: * Headers/Foundation/NSDebug.h: * Headers/Foundation/NSProtocolChecker.h: * Headers/Foundation/NSError.h: * Headers/Foundation/NSPortMessage.h: * Headers/Foundation/NSURLDownload.h: * Headers/Foundation/NSFileHandle.h: * Headers/Foundation/NSDistributedLock.h: * Headers/Foundation/NSPredicate.h: * Headers/Foundation/NSKeyValueObserving.h: * Headers/Foundation/NSDictionary.h: * Headers/Foundation/NSClassDescription.h: * Headers/Foundation/NSNull.h: * Headers/Foundation/NSZone.h: * Headers/Foundation/NSURLRequest.h: * Headers/Foundation/NSValue.h: * Headers/Foundation/NSURLCredentialStorage.h: * Headers/Foundation/NSIndexSet.h: * Headers/Foundation/NSPort.h: * Headers/Foundation/NSSortDescriptor.h: * Headers/Foundation/NSLock.h: * Headers/Foundation/NSSet.h: * Headers/Foundation/NSDistantObject.h: * Headers/Foundation/NSExpression.h: * Headers/Foundation/NSTask.h: * Headers/Foundation/NSArchiver.h: * Headers/Foundation/Foundation.h: * Headers/Foundation/NSCharacterSet.h: * Headers/Foundation/NSInvocation.h: * Headers/Foundation/NSFileManager.h: * Headers/Foundation/NSUtilities.h: * Headers/Foundation/NSPortNameServer.h: * Headers/Foundation/NSNumberFormatter.h: * Headers/Foundation/NSXMLParser.h: * Headers/Foundation/NSEnumerator.h: * Headers/Foundation/NSURLResponse.h: * Headers/Foundation/NSURLConnection.h: * Headers/Foundation/NSIndexPath.h: * Headers/Foundation/NSURLProtocol.h: * Headers/Foundation/NSMapTable.h: * Headers/Foundation/NSURLCache.h: * Headers/Additions/GNUstepBase/GSXML.h: * Headers/Additions/GNUstepBase/behavior.h: * Headers/Additions/GNUstepBase/GSFunctions.h: * Headers/Additions/GNUstepBase/GSConfig.h.in: * Headers/Additions/GNUstepBase/GSObjCRuntime.h: * Headers/Additions/GNUstepBase/GSCategories.h: * Headers/Additions/GNUstepBase/GSIMap.h: * Headers/Additions/GNUstepBase/GSIArray.h: * Headers/Additions/GNUstepBase/GSMime.h: * Headers/Additions/GNUstepBase/Unicode.h: Ensure all headers have up to date version macros included. Update to remove obsolete version macro information. Tidy FSF address for consistency. Tidy per-heaader inclusion guard preprocessor definitions. 2006-10-30 Richard Frith-Macdonald * Headers/Foundation/NSUserDefaults.h: * Source/NSUserDefaults.m: Update comments into headers and tag methods with API version information. 2006-10-29 Richard Frith-Macdonald * Source/GSPrivate.h: * Source/Additions/Unicode.m: * Source/GSeq.h: * Headers/Additions/GNUstepBase/Unicode.h: runi_cop should be private in future. remove some redundant code. * Source/Additions/GSMime.m: Add support for some more character encodings. Fix uninitialised variable compiler failed to warn about. 2006-10-27 Richard Frith-Macdonald * Source/NSTask.m: GSPrivateCheckTasks() retain terminated task while handling termination process and notification to prevent possible thread safety issue spotted by Wim. 2006-10-26 Richard Frith-Macdonald * Source/NSPropertyList.m: use declaration of GSArray from GSPrivate.h * Source/GSArray.m: ditto * Source/NSArray.m: ditto * Source/NSSerializer.m ditto * Source/NSConcreteNumberTemplate.m: Use private function to get hash. * Source/NSConcreteNumber.m: ditto * Source/NSNumber.m: ditto * Source/GSPrivate.h: Add hash functions. * Headers/Foundation/NSSortDescriptor.h: Add a little documentation. * Source/NSSortDescriptor.m: Implement better hash/isEqual as suggested by David. Complete rewrite of sorting to avoid lots of heap memory operations ... should be much much faster. 2006-10-25 Richard Frith-Macdonald * configure.ac: Define HAVE_VISIBILITY_ATTRIBUTE if gcc's visibility attribute is both present in the version being used and working on the current platform. * configure: Regenerate * Headers/Additions/GNUstepBase/config.h.in: Regenerate * Source/GSPrivate.h: Only use the visibility attribute if it is available. Avoids warnings (and link errors in at least one case) on systems where it is not fully supported by gcc yet. * Headers/Foundation/NSSortDescriptor.h: Tidy and fix macros marking macos compatibility. * Source/NSSortDescriptor.m: Fix to have usable hash and isEqual (bug #18107). 2006-10-23 Richard Frith-Macdonald * Source/NSCalendarDate: when adding offset to a date, work in the timezone for the date rather than in GMT ... fixes bug #18088 * Source/NSBundle.m: * Source/NSPathUtilities.m: * Source/NSProcessInfo.m: * Source/preface.m: * Source/NSCallBacks.h: * Source/GSPrivate.h: * Source/NSFileManager.m: * Source/objc-load.h: * Source/objc-load.m: * Headers/Additions/GNUstepBase/preface.h.in: More cleanups hiding private functions and removing a few unused bits. 2006-10-20 Richard Frith-Macdonald * Source/Additions/GSPrivate.m: * Source/GSFormat.h: Deleted unused files. * Headers/Foundation/NSError.h: * Source/NSError.m: Updated to current MacOS-X spec. * Source/NSIndexPath.m: * Source/NSSocketPortNameServer.m: * Source/NSTimeZone.m: * Source/NSHashTable.m: * Source/NSBundle.m: * Source/NSPropertyList.m: * Source/libgnustep-base-entry.m: * Source/GSConcreteValueTemplate.m: * Source/NSScanner.m: * Source/NSProcessInfo.m: * Source/NSGeometry.m: * Source/NSSocketPort.m: * Source/NSUndoManager.m: * Source/NSMethodSignature.m: * Source/NSFormatter.m: * Source/NSUserDefaults.m: * Source/NSArray.m: * Source/NSMessagePortNameServer.m: * Source/objc-gnu2next.m: * Source/GSStream.m: * Source/NSDebug.m: * Source/unix/GSRunLoopCtxt.m: * Source/GSConcreteValue.m: * Source/NSDistributedLock.m: * Source/NSFileHandle.m: * Source/preface.m: * Source/NSAssertionHandler.m: * Source/NSConcreteNumberTemplate.m: * Source/GSHTTPURLHandle.m: * Source/NSZone.m: * Source/NSCallBacks.m: * Source/NSMessagePort.m: * Source/GSDictionary.m: * Source/GSPrivate.h: * Source/GSCountedSet.m: * Source/win32/GSFileHandleWin32.m: * Source/win32/GSRunLoopCtxt.m: * Source/win32/NSMessagePortWin32.m: * Source/win32/NSStreamWin32.m: * Source/NSFileManager.m: * Source/NSConcreteNumber.m: * Source/NSNotificationCenter.m: * Source/externs.m: * Source/NSRange.m: * Source/NSException.m: * Source/NSCopyObject.m: * Source/mframe.m: * Source/NSObject.m: * Source/NSString.m: * Source/Additions/Unicode.m: * Source/Additions/GNUmakefile: * Source/Additions/GSCompatibility.m: * Source/Additions/GSCategories.m: * Source/GSSet.m: * Source/GSString.m: * Source/NSThread.m: * Source/NSData.m: * Source/NSHost.m: * Source/NSProxy.m: * Source/NSProtocolChecker.m: * Source/NSPipe.m: * Source/GSValue.m: * Source/NSDictionary.m: * Source/NSClassDescription.m: * Source/NSSerializer.m: * Source/NSNull.m: * Source/NSValue.m: * Source/NSCountedSet.m: * Source/NSLog.m: * Source/GSFormat.m: * Source/NSIndexSet.m: * Source/GSFileHandle.m: * Source/NSLock.m: * Source/NSDistantObject.m: * Source/NSTask.m: * Source/NSPortNameServer.m: * Source/NSNumberFormatter.m: * Source/NSXMLParser.m: * Source/GSFTPURLHandle.m: * Source/NSEnumerator.m: * Source/GSURLPrivate.h: * SSL/GSSSLHandle.m: Move from GSPrivate class to GSPrivate functions as majority prefer that. Make some more private functions use GSPrivate prefix and be unlinkable outside base. Rationalise error string generation. Tidy up FSF address in comments. 2006-10-19 Richard Frith-Macdonald * Documentation/manual/DistributedObjects.texi: Update for current API * Source/NSNotificationQueue.m: * Source/NSSocketPort.m: * Source/NSRunLoop.m: * Source/NSUserDefaults.m: * Source/NSMessagePortNameServer.m: * Source/NSDebug.m: * Source/unix/GSRunLoopCtxt.m: * Source/GSPrivate.h: * Source/win32/GSFileHandleWin32.m: * Source/win32/GSRunLoopCtxt.m: * Source/NSCoder.m: * Source/Additions/GSPrivate.m: * Source/NSAutoreleasePool.m: * Source/NSTask.m: * Headers/Foundation/NSCoder.h: Remove long deprecated coder extensions (old libobjects compatibility). Hide some internal functions. Make some values static. Make function to obtain locale dictionary thread safe. 2006-10-19 Matt Rice * Source/NSBundle.m (_find_framework): initialize file_name variable. 2006-10-19 Richard Frith-Macdonald * Source/NSBundle.m: Strip path extension from main bundle name on cygwin. * Headers/Foundation/NSPortNameServer.h: Improve documentation 2006-10-18 Richard Frith-Macdonald * Source/Makefile.postamble: Remove use of UNICODE_HEADERS which appears to beave been breaking solaris build. 2006-10-18 Richard Frith-Macdonald * Source/Additions/GSPrivate.m: * Source/Additions/Unicode.m: * Source/GSPrivate.h: * Source/NSArray.m: * Source/NSCalendarDate.m: * Source/NSDate.m: * Source/NSDecimalNumber.m: * Source/NSDictionary.m: * Source/NSNotification.m: * Source/NSObject.m: * Source/NSProcessInfo.m: * Source/NSScanner.m: * Source/NSString.m: * Source/NSUserDefaults.m: Experiments with gcc attribute for making functions inaccessible outside the library ... new experimental function GSPrivateDefaultLocale() declared in GSPrivate.h, implemented in Additions/GSPrivate.m seems to work and to be invisible to the linker for external apps. 2006-10-17 Richard Frith-Macdonald * Source/NSPropertyList.m: Fix error writing negative numbers to property list. 2006-10-16 Richard Frith-Macdonald * Source/GSFFCallInvocation.m: * Source/GSFFIInvocation.m: * Source/GSPrivate.h: * Source/Additions/GNUmakefile: * Source/Additions/GSPrivate.m: * Source/Additions/GSCategories.m: Minor further work simplifying and getting rid of unnecessary external symbols etc. 2006-10-13 Richard Frith-Macdonald * Source/NSFileHandle.m: Look for SSL bundle in any domain. * Source/NSTimer.m: Fix minor documentation error. 2006-10-11 Nicola Pero * GNUmakefile (GNUSTEP_INSTALLATION_DOMAIN): Use GNUSTEP_INSTALLATION_DOMAIN instead of GNUSTEP_INSTALLATION_DIR. 2006-10-11 Richard Frith-Macdonald * Source/externs.m: * Source/Additions/Unicode.m: * Source/NSDecimal.m: * Source/GSFormat.m: * Testing/tcpport-server.m: * Testing/exported-strings.m: Make many globals static, remove some obsolete variables etc. 2006-10-11 Nicola Pero * SSL/Makefile.postamble (after-distclean): Remove all configure generated files. (config.mak): Run config.status, not ../config.status. ($(GNUSTEP_TARGET_DIR)/config.h): Run config.status first. Do not try to move config.h into a target specific dir if the target dir is '.'. (config.status): New rule to recreate it. 2006-10-11 Nicola Pero * Source/Additions/Makefile.preamble (ADDITIONAL_INCLUDE_DIRS): Added -I.. so that the compiler finds GSPrivate.h when it's using the non-flattened layout, and it compiles again. * SSL/Makefile.preamble (ADDITIONAL_INCLUDE_DIRS): Added -I../Source for the same reason. 2006-10-10 Richard Frith-Macdonald * Source/NSDecimalNumber.m: Implement coding/decoding 2006-10-09 Nicola Pero * GNUmakefile: Do not include GNUmakefile.local. 2006-10-09 Richard Frith-Macdonald * Source/GSCompatibility.m: Removed ... no longer used * Source/GNUmakefile: Remove GSCompatibility.m * Source/NSGeometry.m: * Source/NSArray.m: * Source/NSDictionary.m: Update to get rid of a couple of functions which were not really needed, slimming down global symbols a bit more. 2006-10-09 Richard Frith-Macdonald * Source/Additions/GSObjCRuntime.m: * Headers/Additions/GNUstepBase/GSObjCRuntime.h: Remove previously deprecated functionality. * Documentation/TypesAndConstants.gsdoc: * Documentation/ReleaseNotes.gsdoc: * Documentation/Functions.gsdoc: * Documentation/BaseAdditions.gsdoc: * Documentation/Base.gsdoc: * ChangeLog: * Tools/AGSHtml.m: * Tools/AGSParser.m: * Tools/autogsdoc.m: * Tools/AGSOutput.m: Update/improve version/deprecation reporting. 2006-10-09 Richard Frith-Macdonald * Headers/Additions/GNUstepBase/unicode: Moved to Source/Additions/unicode * Source/NSSocketPortNameServer.m: * Source/GSLocale.m: * Source/NSTimeZone.m: * Source/GSCompatibility.m: * Source/NSCalendarDate.m: * Source/NSBundle.m: * Source/NSPropertyList.m: * Source/NSPathUtilities.m: * Source/NSScanner.m: * Source/NSProcessInfo.m: * Source/GNUmakefile: * Source/NSSocketPort.m: * Source/NSUserDefaults.m: * Source/GSFFCallInvocation.m: * Source/NSArray.m: * Source/GSStream.m: * Source/NSKeyedArchiver.m: * Source/NSDebug.m: * Source/unix/GSRunLoopCtxt.m: * Source/NSDistributedLock.m: * Source/GSHTTPURLHandle.m: * Source/NSMessagePort.m: * Source/GSPrivate.h: * Source/win32/NSMessagePortNameServerWin32.m: * Source/win32/GSFileHandleWin32.m: * Source/win32/NSUserDefaultsWin32.m: * Source/win32/GSRunLoopCtxt.m: * Source/win32/NSMessagePortWin32.m: * Source/win32/NSStreamWin32.m: * Source/NSInvocation.m: * Source/NSFileManager.m: * Source/objc-load.m: * Source/NSException.m: * Source/NSString.m: * Source/NSObject.m: * Source/NSDecimalNumber.m: * Source/Additions/Unicode.m: * Source/Additions/GSXML.m: * Source/Additions/GSFunctions.m: * Source/Additions/GSCompatibility.m: * Source/Additions/GSCategories.m: * Source/NSDecimal.m: * Source/GSString.m: * Source/NSDateFormatter.m: * Source/NSThread.m: * Source/NSData.m: * Source/NSHost.m: * Source/NSDate.m: * Source/NSObjCRuntime.m: * Source/NSPipe.m: * Source/NSDictionary.m: * Source/NSLog.m: * Source/GSFormat.m: * Source/GSFileHandle.m: * Source/NSTask.m: * Source/NSArchiver.m: * Source/GSFTPURLHandle.m: * SSL/GSSSLHandle.m: * Headers/Foundation/NSException.h: * Headers/Additions/GNUstepBase/GSFunctions.h: * Headers/Additions/GNUstepBase/GSObjCRuntime.h: * Headers/Additions/GNUstepBase/Unicode.h: * Tools/xmlparse.m: * Tools/defaults.m: * Tools/locale_alias.m: * Tools/Makefile.preamble: * Tools/AGSParser.m: * Tools/make_strings/make_strings.m: * Tools/pl.m: * Testing/tcpport-server.m: * Testing/exported-strings.m: * Testing/call.m: * Testing/nsconnection_server.m: * Testing/benchmark.m: * Testing/tcpport-client.m: Continuing effort to reduce global namespace pollution ... made many external variables static (particuarly unicode tables). Changed several global functions to be methods of a private internal class. Also updated several usages of deprecated cString methods to use either UTF8 methods or cString...encoding methods as seemed most appropriate and/or simplest. 2006-10-06 Fred Kiefer * Source/Additions/GSMime.m(GSMimeDocument +initialize): Corrected small bug in last patch. 2006-10-05 Richard Frith-Macdonald * Source/Additions/GSMime.m: Add a couple more charset mappings. * Source/NSRunLoop.m: Move some variables to GSRunLoopCtxt.m * Source/GSHTTPURLHandle.m: Make a global static * Source/NSPort.m: Make two globals static * Source/unix/GSRunLoopCtxt.m: Make variable static. * Source/win32/GSRunLoopCtxt.m: Make variable static. 2006-10-04 Richard Frith-Macdonald * Source/GSHTTPURLHandle.m: * Source/NSHTTPCookieStorage.m: * Source/GSHTTPAuthentication.m: Add a little checking for nil/invalid arguments. Make parsing of authentication a little more tolerant. 2006-10-03 Richard Frith-Macdonald * Version: Bump to version for next release. * configure.ac: Check for utsname * configure: Regenerate * Headers/Additions/GNUstepBase/config.h.in: Regenerate * Headers/Foundation/NSObject.h: Small documentaion improvement * Headers/Foundation/NSProcessInfo.h: Add documentation and update. * Source/NSProcessInfo.m: Moved documentation to header, clean up and complete operating system code. * Testing/nsprocessinfo.m: Trivial test updates. Avoid use of cString 2006-10-02 Nicola Pero More work on having the default flattened gnustep build with just GNUSTEP_MAKEFILES set. Non-flattened builds will still require sourcing GNUstep.sh before configure instead. * configure.ac: Use new variable GNUSTEP_IS_FLATTENED instead of GNUSTEP_FLATTENED, defaulting now to 'yes'. To build non-flattened you have to source GNUstep.sh first. * configure.ac (config.make): When determining objc threading flags in non-flattened mode, look for config.make in a library-combo subdir since that's where it is installed by gnustep-make now. * configure.ac: Extended the error message when the GNUstep conf file is not found. * configure: Regenerated. * SSL/configure.ac: Use GNUSTEP_IS_FLATTENED instead of GNUSTEP_FLATTENED. * SSL/configure: Regenerated. * Source/GNUmakefile: Renamed -DGNUSTEP_FLATTENED to -DGNUSTEP_IS_FLATTENED. This is just for consistency with the new gnustep-make variable name. * Source/NSPathUtilities.m: Same changes. 2006-09-28 Richard Frith-Macdonald * Source/NSBundle.m: Fix for buffer resize error when registering framework info, as suggested by Andreas Hoschler. 2006-09-26 Richard Frith-Macdonald * Source/NSString.m: ([stringByAddingPercentEscapesUsingEncoding:]) Fix to escape '@' (in fact anything not unreserved acording to RFC2396) * Source/NSPathUtilities.m: Fix missing include. 2006-09-21 Richard Frith-Macdonald * Source/NSProcessInfo.m: ([-operatingSystemName]) conform to MacOS-X and return NSMACHOperatingSystem rather than darwin etc. 2006-09-18 Nicola Pero * configure.ac (GNUSTEP_MAKE_CONFIG): Get this config from config-noarch.make (requires gnustep-make > 1.13.0). If failing, fall back to taking it from $GNUSTEP_MAKEFILES/config.make as it was done before (works with gnustep-make < 1.13.0 only though). * configure: Regenerated. 2006-09-13 Richard Frith-Macdonald * Source/Additions/GSXML.m: Add hack to recognize apple plist info and use the GNUstep plist DTD instead if necessary. 2006-09-13 Richard Frith-Macdonald * Headers/Foundation/NSTimeZone.h: * Headers/Foundation/NSHashTable.h: * Headers/Foundation/NSRange.h: * Headers/Foundation/NSCoder.h: * Headers/Foundation/NSURLCredential.h: * Headers/Foundation/NSHTTPCookieStorage.h: * Headers/Foundation/NSException.h: * Headers/Foundation/NSByteOrder.h: * Headers/Foundation/NSPortCoder.h: * Headers/Foundation/NSURL.h: * Headers/Foundation/NSCompoundPredicate.h: * Headers/Foundation/NSURLAuthenticationChallenge.h: * Headers/Foundation/NSString.h: * Headers/Foundation/NSObject.h: * Headers/Foundation/NSCalendarDate.h: * Headers/Foundation/NSDecimalNumber.h: * Headers/Foundation/NSBundle.h: * Headers/Foundation/NSKeyValueCoding.h: * Headers/Foundation/NSSerialization.h: * Headers/Foundation/NSURLHandle.h: * Headers/Foundation/NSPropertyList.h: * Headers/Foundation/NSTimer.h: * Headers/Foundation/NSNotification.h: * Headers/Foundation/NSPathUtilities.h: * Headers/Foundation/NSScanner.h: * Headers/Foundation/NSProcessInfo.h: * Headers/Foundation/NSDistributedNotificationCenter.h: * Headers/Foundation/NSNotificationQueue.h: * Headers/Foundation/NSGeometry.h: * Headers/Foundation/NSStream.h: * Headers/Foundation/NSComparisonPredicate.h: * Headers/Foundation/NSDecimal.h: * Headers/Foundation/NSRunLoop.h: * Headers/Foundation/NSAttributedString.h: * Headers/Foundation/NSConnection.h: * Headers/Foundation/NSUndoManager.h: * Headers/Foundation/NSDateFormatter.h: * Headers/Foundation/NSMethodSignature.h: * Headers/Foundation/NSAutoreleasePool.h: * Headers/Foundation/NSFormatter.h: * Headers/Foundation/NSUserDefaults.h: * Headers/Foundation/NSThread.h: * Headers/Foundation/NSHTTPCookie.h: * Headers/Foundation/NSData.h: * Headers/Foundation/NSURLError.h: * Headers/Foundation/NSDate.h: * Headers/Foundation/NSHost.h: * Headers/Foundation/NSArray.h: * Headers/Foundation/NSProxy.h: * Headers/Foundation/NSObjCRuntime.h: * Headers/Foundation/NSURLProtectionSpace.h: * Headers/Foundation/NSKeyedArchiver.h: * Headers/Foundation/NSProtocolChecker.h: * Headers/Foundation/NSDebug.h: * Headers/Foundation/NSPortMessage.h: * Headers/Foundation/NSError.h: * Headers/Foundation/NSURLDownload.h: * Headers/Foundation/NSDistributedLock.h: * Headers/Foundation/NSFileHandle.h: * Headers/Foundation/NSPredicate.h: * Headers/Foundation/NSKeyValueObserving.h: * Headers/Foundation/NSDictionary.h: * Headers/Foundation/NSClassDescription.h: * Headers/Foundation/NSNull.h: * Headers/Foundation/NSZone.h: * Headers/Foundation/NSURLRequest.h: * Headers/Foundation/NSValue.h: * Headers/Foundation/NSURLCredentialStorage.h: * Headers/Foundation/NSIndexSet.h: * Headers/Foundation/NSPort.h: * Headers/Foundation/NSSortDescriptor.h: * Headers/Foundation/NSLock.h: * Headers/Foundation/NSSet.h: * Headers/Foundation/NSDistantObject.h: * Headers/Foundation/NSExpression.h: * Headers/Foundation/NSTask.h: * Headers/Foundation/NSArchiver.h: * Headers/Foundation/NSCharacterSet.h: * Headers/Foundation/NSInvocation.h: * Headers/Foundation/NSFileManager.h: * Headers/Foundation/NSPortNameServer.h: * Headers/Foundation/NSNumberFormatter.h: * Headers/Foundation/NSXMLParser.h: * Headers/Foundation/NSEnumerator.h: * Headers/Foundation/NSURLResponse.h: * Headers/Foundation/NSURLConnection.h: * Headers/Foundation/NSIndexPath.h: * Headers/Foundation/NSURLProtocol.h: * Headers/Foundation/NSMapTable.h: * Headers/Foundation/NSURLCache.h: * Headers/Additions/GNUstepBase/GSLocale.h: * Headers/Additions/GNUstepBase/GSXML.h: * Headers/Additions/GNUstepBase/DistributedObjects.h: * Headers/Additions/GNUstepBase/behavior.h: * Headers/Additions/GNUstepBase/GSFunctions.h: * Headers/Additions/GNUstepBase/GSObjCRuntime.h: * Headers/Additions/GNUstepBase/GSCategories.h: * Headers/Additions/GNUstepBase/GCObject.h: * Headers/Additions/GNUstepBase/GSIMap.h: * Headers/Additions/GNUstepBase/GSIArray.h: * Headers/Additions/GNUstepBase/GSMime.h: * Headers/Additions/GNUstepBase/GSUnion.h: * Headers/Additions/GNUstepBase/GSLock.h: * Headers/Additions/GNUstepBase/GSFileHandle.h: * Headers/Additions/GNUstepBase/GNUstep.h: * Headers/Additions/GNUstepBase/objc-gnu2next.h: * Headers/Additions/GNUstepBase/Unicode.h: Bracket with 'extern "C"' for inclusion in Objective-C++ programs. * Source/NSNotificationCenter.m: Remove deprecated method. 2006-09-13 Richard Frith-Macdonald * Source/Additions/GSMime.m: When decoding a corrupt encoded word in a header, abandon processing of the header without appending any decoded data. * Headers/Foundation/NSBundle.h: * Source/NSBundle.m: ([pathForResource:ofType:inDirectory:forLocalization:]) implement. 2006-09-10 Richard Frith-Macdonald * Source/NSTimeZone.m: Remove unnecessary check on file name as Roland Schwingel reported that it caught legitimate files on windows. * Source/NSMessagePort.m: * Source/NSSocketPort.m: * Source/NSIndexPath.m: * Source/NSBundle.m: Protect -release with lock and remove object from global table within protected region, to avoid possible double deallocation in a multithreaded process. * Source/unix/NSStream.m: If socklen_t is not defined, assume uint32_t 2006-09-09 Richard Frith-Macdonald * Source/win32/NSMessagePortWin32.m: Restructure to try to avoid deadlock reported by Wim. Also implement -release to remove port from name table so that another thread can't find it in the window between checking the refcount end deallocation. 2006-09-07 Richard Frith-Macdonald * Headers/Foundation/NSObject.h: Fix incorrect backward compatibility setting for openstep version. * Source/NSObject.m: minor tweak ... put debugging code in the object reference counting function rather than the release method. * Source/NSConnection.m: Change release implementation for better protection of global connection table management. 2006-09-06 Richard Frith-Macdonald * Source/NSConnection.m: ([release]) protect with connection table lock to prevent an other thread grabbing the connection while we are deallocating it. Bug reported by Wim Oudshoorn. 2006-08-28 Adam Fedor * Version 1.13.0 2006-08-26 Richard Frith-Macdonald * Source/NSProcessInfo.m: Fix passing int variable to printf format expecting long. * Source/NSTask.m: create windows task as detached process. * NSTimeZones/NSTimeZones./tar: regenerated 2006-08-25 Richard Frith-Macdonald * Source/NSScanner.m: initialisation fix pointed out by David Ayer * Source/NSBundle.m: fix for getting class from gnustep bundle * Source/NSConnection.m: thread deadlock fix based on probelm and solution supplied by Wim Oudshoorn * Source/NSArchiver.m: * Source/NSKeyedArchiver.m: * Source/NSPortCoder.m: Fix possible problem on 64bit CPUs reported by Wim. 2006-08-16 Richard Frith-Macdonald * NSCharacterSets/letterCharSet.dat: * NSCharacterSets/symbolAndOperatorCharSet.dat: * NSCharacterSets/lowercaseLetterCharSet.dat: * NSCharacterSets/uppercaseLetterCharSet.dat: * NSCharacterSets/alphanumericCharSet.dat: * NSCharacterSets/punctuationCharSet.dat: * NSCharacterSets/illegalCharSet.dat: * NSCharacterSets/decimalDigitCharSet.dat: * NSCharacterSets/nonBaseCharSet.dat: * NSCharacterSets/decomposableCharSet.dat: Update for chinese etc. * Source/NSCharacterSetData.h: Update with ranges in UnicodeData.txt * Source/GSStream.m: Add partial implemenmtation of socks5 * Source/Additions/GSMime.m: improve fault tolerance when parsing headers. 2006-08-15 Richard Frith-Macdonald * Source/GSString.m: substring_c(), substring_u() move structure type declaration out of function to help old (pre-gcc-3) compiler, as suggested by Adam. * Source/NSString: ([dataUsingEncoding:allowLossyConversion:]} replace implementation with call to concrete subclass so that we only have one version of this large, complex method to maintain, as suggested by David. 2006-08-14 Richard Frith-Macdonald * Source/NSKeyedArchiver.m: make a guess at how MacOS-X decides to encode objects directly ... if the classForKeyedArchiver method returns a property list class (other then array and dictionary which contain other objects) we try direct coding. 2006-08-13 Richard Frith-Macdonald * Source/GSFormat.m: optimise a bit and fix bug where utf8 (and other multibyte encodings) strings could be truncated at the wrong precision. * Source/NSIndexPath.m: ([indexAtPosition:]) return NSNotFound if given a bad position. ([compare:]) fix to match MacOS-X * Source/NSObject.m: implement CRASH_ON_ZOMBIE * Documentation/Base.gsdoc: document it. * Source/NSArray.m: Fix error in decoding from keyed archive. 2006-08-12 Richard Frith-Macdonald * Source/GSString.m: getCString_c() call getCString_u() to do the work if external encoding != internal encoding. * Source/NSScanner.m: Fix for utf8 * Source/GSFormat.m: remove call to deprecated method. * Source/NSString.m: remove calls to deprecated methods. Fix getCstring... by using concrete class implementation. 2006-08-11 Richard Frith-Macdonald * Source/NSTask.m: Fixup for path validation error on mingw32 * Headers/Foundation/NSStream.h: improve documentation. * Source/GSStream.h: * Source/GSStream.m: * Source/unix/NSStream.m: * Source/win32/NSStreamWin32.m: Add lots of error checking, simplify a little, get local streams on mingw to close down properly. 2006-08-10 Richard Frith-Macdonald * Source/GSStream.m: * Source/win32/NSStreamWin32.m: Fix error in pipe read offset. Imitial implementation of local 'unix domain sockets' (actually named pipe) stream. 2006-08-10 Nicola Pero * configure.ac: Fixed typo in help of --with-default-config option. * configure: Regenerated 2006-08-10 Richard Frith-Macdonald * Source/GSStream.h: * Source/GSStream.m: * Source/unix/NSStream.m: * Source/win32/NSStreamWin32.m: Ensure all events are posted. Fixup for winsock write signalling. 2006-08-09 Richard Frith-Macdonald * Documentation/Base.gsdoc: Improve links to macros. * Headers/Foundation/NSObject.h: Improve versioning documentation * Headers/Foundation/NSNotificationQueue.h: tidied * Headers/Foundation/NSUndoManager.h: ditto * Headers/Foundation/NSAutoreleasePool.h: ditto Documentation improvements and header tidyups. 2006-08-08 Richard Frith-Macdonald * Source/GSStream.h: * Source/GSStream.m: * Source/win32/NSStreamWin32.m: * Source/unix/NSStream.m: If a connection attempt fails, propagate error to sibling stream so both streams in the pair get a failure. Try to make behavior of socket streams MacOs-X like, avoiding repeated notifications of events. 2006-08-07 00:13-EDT Gregory John Casamento * Source/NSData.m: Correct issue in initWithCoder: and encodeWithCoder: with encoding data using keyed archiver. 2006-08-06 Richard Frith-Macdonald * Source/NSPredicate.m: Reorganize initialisation of scanner to avoid implicit cast of zero to a va_listt (fix bug #17336) * Source/Additions/GSObjCRuntime.m: GSObjCMakeClass() fix incorrect calculation of ivar size/offset information as reported in bug #17069 2006-08-04 23:26-EDT Gregory John Casamento * Source/NSKeyedArchiver.m: in _encodeObject:forKey: use replacement if it exists. * Source/NSKeyedUnarchiver.m: in unarchiveObjectWithFile: remove autorelease pool, since the unarchiveObjectWithData: object is already autoreleased, this was causing a crash when unarchiving the object. 2006-07-26 Richard Frith-Macdonald * Source/Additions/GSMime.m: Remove a couple of comments * Headers/Additions/GNUstepBase/GSMime.h: Add improved documentation for the bas64 conversion methods. 2006-07-25 Richard Frith-Macdonald * Source/NSKeyedUnarchiver.m: Reinstate fix of 2006-07-14 which was erroneously reverted on 2006-07-15. 2006-07-19 Jeremy Bettis * Source/win32/NSUserDefaultsWin32.m: The method wantToReadDefaultsSince: was always returning YES. Fixed to work as intended. 2006-07-18 Richard Frith-Macdonald * Source/GSHTTPURLHandle.m: Only queue a new read on a handle if there is not one in progress. Where a connection has been kept alive, we can have an outstanding read intended to determine when the connection is dropped by the remote end. 2006-07-15 17:00 Gregory John Casamento * Source/NSKeyedUnarchiver.m: Partial fix for bug#17112. 2006-07-14 Richard Frith-Macdonald * Source/NSKeyedUnarchiver.m: ([-dealloc]) release objects in array to fix bug #17097 2006-07-07 Richard Frith-Macdonald * Resources/Languages/README: describe how to deal with files where the BOM is missing. * Resources/Languages/Korean: update supplied by YunSong Hwang 2006-07-06 Richard Frith-Macdonald * Tools/gdomap.c: remove unnecessary include of config.h 2006-07-04 Richard Frith-Macdonald * Source/NSTask.m: On mingw32 create subtask with CREATE_NO_WINDOW * Source/GSURLPrivate.h: Generalise GSHTTPAuthentication * Source/GSHTTPAuthentication.m: Generalise to support Basic auth * Source/NSURLProtectionSpace.m: Optimise a little. * Source/GSHTTPURLHandle.m: Changes for GSHTTPAuthentication update. Don't send basic authentication info unless challenged by server. 2006-07-02 Richard Frith-Macdonald * Source/GSHTTPURLHandle.m: Keep count of challenge/authentication to avoid recycling the same authentucation repeatedly. 2006-06-29 Richard Frith-Macdonald * Source/Tools/gdnc.m: Don't try to trap SIGPROF * Source/GSString.m: fix bug getting Cstring. * Source/NSNotificationQueue.m: fix mem leak in multithreaded apps. 2006-06-27 Richard Frith-Macdonald * Source/NSUserDefaults.m: Fix spelling in comment * Source/NSPathUtilities.m: Add GNUSTEP_EXTRA to allow extra info in GSConfigDomain without producing an error message. * Documentation/Base.gsdoc: Document GNUSTEP_EXTRA 2006-06-22 Richard Frith-Macdonald * Source/GSString.m: small optimisation for initialisation with unicode data which happens to be just ascii. 2006-06-20 Richard Frith-Macdonald * Source/GSHTTPDigest.m: deleted * Source/GSHTTPAuthentication.m: added * Source/GNUmakefile: build GSHTTPAuthentication * Source/GSHTTPURLHandle.m: use GSHTTPAuthentication Change class name to something more intuitive and add class methods for mapping domains/URLs to protection space objects. Update code to used cache protection space info to put digest authorisation in place without waiting for challenge. 2006-06-19 Richard Frith-Macdonald * Source/GSURLPrivate.h: Add GSHTTPDigest interface. * Source/GSHTTPDigest.m: Add GSHTTPDigest implementation. * Source/GNUmakefile: Build GSHTTPDigest. * Source/NSURLProtectionSpace.m: Implement ([-hash]) and ([-isEqual:]) * Headers/Foundation/NSURLAuthenticationChallenge.h: Improve comments. Add GSHTTPDigest class to handle HTTP digest authentication. * Source/GSHTTPURLHandle.m: Perform rudimentary digest authentication. 2006-06-17 Richard Frith-Macdonald * Source/GSString.m: Fix memory leak. * Source/NSAutoreleasePool.m: Optimise -emptyPool method. * Source/NSRunLoop.m: Empty autorelease pool after firing each timer/event so that huge memory footprints are less likely to occur. 2006-06-16 Richard Frith-Macdonald * Headers/Foundation/NSURLCredential.h: * Headers/Foundation/NSHTTPCookieStorage.h: * Headers/Foundation/NSURLAuthenticationChallenge.h: * Headers/Foundation/NSHTTPCookie.h: * Headers/Foundation/NSURLError.h: * Headers/Foundation/NSURLProtectionSpace.h: * Headers/Foundation/NSURLDownload.h: * Headers/Foundation/NSURLRequest.h: * Headers/Foundation/NSURLCredentialStorage.h: * Headers/Foundation/Foundation.h: * Headers/Foundation/NSURLResponse.h: * Headers/Foundation/NSURLConnection.h: * Headers/Foundation/NSURLProtocol.h: * Headers/Foundation/NSURLCache.h: Headers for Apple's new URL loading scheme (including documentation). * Source/NSMapTable.m: * Source/NSURLCredential.m: * Source/NSURLAuthenticationChallenge.m: * Source/NSURLHandle.m: * Source/GNUmakefile: * Source/NSURLDownload.m: * Source/NSURLCredentialStorage.m: * Source/NSURLResponse.m: * Source/NSURLProtocol.m: * Source/NSURLCache.m: * Source/NSHTTPCookieStorage.m: * Source/NSURL.m: * Source/DocMakefile: * Source/NSHTTPCookie.m: * Source/NSURLProtectionSpace.m: * Source/NSURLRequest.m: * Source/NSSet.m: * Source/NSURLConnection.m: Skeleton code for Apple's new URL loading scheme (plus minor tweaks to comments in other files). This code is not expected to work yet. Major lacks are ... 1. concrete implementations of protocols 2. on disk cache/storage management 3. thread safety (locking) for shared objects However, I hope it will provide a good starting framework. 2006-06-15 Richard Frith-Macdonald * Additions/GNUstepBase/GSXML.h: New XMLRPC settings to control timezone and to produce compact output. * Source/Additions/GSXML.m: New methods and bugfix for handling string data with no 'string' element markup. * Additions/GNUstepBase/GSMime.h: Fix possible cases of parsing saying that it needs more data when you have passed it an empty data item to terminate parsing. 2006-06-06 Richard Frith-Macdonald * Source/NSURL.m: ([initWithScheme:host:path:]) escape characters in path as required. 2006-06-04 Richard Frith-Macdonald * Source/NSIndexPath.m: * Source/NSSocketPortNameServer.m: * Source/NSTimeZone.m: * Source/NSPortCoder.m: * Source/NSDistributedNotificationCenter.m: * Source/NSAttributedString.m: * Source/GSArray.m: * Source/NSKeyedArchiver.m: * Source/NSKeyedUnarchiver.m: * Source/NSKeyValueObserving.m: * Source/NSUnarchiver.m: * Source/GSAttributedString.m: * Source/Additions/GCArray.m: * Source/Additions/GCDictionary.m: * Source/Additions/GCObject.m: * Source/NSNumber.m: * Source/GSString.m: * Source/NSConnection.m: * Source/NSAutoreleasePool.m: * Source/NSThread.m: * Source/NSData.m: * Source/NSDate.m: * Source/NSNull.m: * Source/NSValue.m: * Source/NSPortNameServer.m: * Headers/Additions/GNUstepBase/preface.h.in: Fixups to avoid spurious compiler warnings. 2006-06-02 Richard Frith-Macdonald * Source/GSHTTPURLHandle.m: Fix uninitialised variable problem. 2006-06-01 Richard Frith-Macdonald * Source/GSString.m: Fix position of external function declaration. Fix use gf getCString methods for length error. * Headers/Foundation/NSGeometry.h: Tweaks for stuff reported as problematic with objective-c++ compile. 2006-05-30 David Ayers * Source/GSPrivate.h (GSCharPtr): New union type to handle alignment issues. (GSString): Use it. * Source/GSString.m ([-initWithBytesNoCopy:length:encoding:freeWhenDone:]): Use GSCharPtr instead of casts to avoid alignment issues. Fix typo's. * Source/NSString.m ([-initWithBytesNoCopy:length:encoding:freeWhenDone:]): Correct grammar in comment. 2006-05-30 Richard Frith-Macdonald * Source/Additions/Unicode.m: Use 'goto' to jump to 'done' label on failure to grow buffer, rather than 'break' ... because the GROW() macro is not aways called where a break gets you to the right place. Fixes bug spotted by David Ayers, and is also clearer code. 2006-05-26 Richard Frith-Macdonald * Tools/objctidy.m: Crude utility to help importing code into GNUstep by trying to reformat common style differences to something like iour coding standards. 2006-05-25 Andrew Ruder * Source/NSConcreteNumberTemplate.m (from NSConcreteNumber.m): * Source/GSConcreteValueTemplate.m (from GSTemplateValue.m): * Source/GNUmakefile: * Source/Makefile.postamble: * Source/GSConcreteValue.m (added): * Source/NSConcreteNumber.m (added): Get rid of use of sed to generate concrete NSNumber/NSValue classes. Use preprocessor to get around generation of additional files. 2006-05-24 Richard Frith-Macdonald * Source/NSPredicate.m: Restore last changes with varargs rewrite using va_copy to try to make code portable. This version compiles on systems where va_list is not a simple pointer, but is untested. * Source/GSString.m: Use GSIsByteEncoding() to test whether an encoding can hold ascii data. 2006-05-24 Richard Frith-Macdonald * Source/NSTimeZone.m: * Source/NSBundle.m: * Source/NSPropertyList.m: * Source/NSProcessInfo.m: * Source/NSPage.m: * Source/NSCallBacks.m: * Source/NSSortDescriptor.m: * Source/NSFileManager.m: * Source/objc-load.m: * Source/NSException.m: * Source/NSString.m: * Source/mframe.m: * Source/cifframe.m: * Source/Additions/Unicode.m: * Source/Additions/GSXML.m: * Source/Additions/GSNextRuntime.m: * Source/NSConnection.m: * Source/callframe.m: Tidy up uses of malloc etc to all go through objc_malloc and friends. 2006-05-23 Richard Frith-Macdonald * Source/Additions/GSMime.m: Fix some cases where parse was saying it needed more data even though it had actually completed. * Source/NSException.m: Don't add stacktrace information if we are not building with debug on. * Source/GSString.m: Minor optimisation ... return @"" for all substrings with a zero length range. 2006-05-22 Richard Frith-Macdonald * Source/NSSerializer.m: Fix longstanding deserialisation problem ... is not retaining cross-referenced items... which is not a problem unless the item happens to be a dictionary key which is copied/released when the corresponding value is added to the dictionary. * Source/GSString.m: Make sure inline strings have 'free' flag set and add comments to say we use it to indicate ownership of buffer rather than whether to free the data. Maybe we should change the flag name? * Source/Additions/Unicode.m: Fix missing brackets in byte order handling for UTF-16. Problem pointed out by David Ayers 2006-05-20 Richard Frith-Macdonald Restore reversions with a bugfix for deserialising ascii strings 2006-05-20 Richard Frith-Macdonald Revert last changes ... passed regression tests but broke some software :-( 2006-05-20 Richard Frith-Macdonald * Source/GSString.m: * Source/NSSerializer.m: Commit more string tidyups and simplifications made while I was travelling. Changed private internal string subclasses so that they can't be re-initialised ... all instances are initialised 'manually' rather than through a method that could be called by other code outside this file ... thus all initialisation by external code goes through ([-initWithBytesNoCopy:length:encoding:shouldFree]) method of the placeholder string. 2006-05-15 Richard Frith-Macdonald * Source/GSHTTPURLHandle.m: Fix error when parsing response with no content. * Source/NSPredicate.m: Revert to previous version as last change contained broken code and wouldn't compile. * Source/NSKeyValueCoding.m: * Source/GSArray.m: * Source/GSFFCallInvocation.m: * Source/NSInvocation.m: * Source/NSCoder.m: * Source/NSObject.m: * Source/Additions/GSCategories.m: * Headers/Foundation/NSLock.h: * Tools/AGSHtml.m: * Tools/autogsdoc.m: Use casts to avoid spurious warnings from gcc-4.1 2006-05-15 Fred Kiefer * Source/NSPredicate.m: Extracted all the parsing into a speparate class GSPredicateScanner. This change is based on code by Nikolaus Schaller , but extends this. 2006-05-14 Richard Frith-Macdonald * Source/NSString.m: * Source/GSString.m: Change to use ([initWithBytesNoCopy:length:encoding:freeWhenDone:]) as the primary/designated initialiser for strings and update code to fix character encoding errors when copying mutable strings in a UTF8 locale (ie where the internal encoding for 8bit strings is not the same as the external encoding). WARNING ... this is a restructuring of functionality which is core to the library. Please use with care and report any bugs found. 2006-05-12 Richard Frith-Macdonald * Source/GSString.m: validate UTF-16 data when producing a Cstring * Source/NSCharacterSetData.h: Add code plane 16 (private use) * Source/NSCharacterSet.m: Fix to support code plane 16 * Source/GSString.m: Attempt to fix error making a mutable copy of an 8bit string when the external Cstring encoding is not the same as the internal one. Use new initWithBytes... method specifying the encoding used in those cases. 2006-05-11 Richard Frith-Macdonald * Headers/Foundation/NSBundle.h: add ([bundleWithIdentifier:]) * Source/NSBundle.m: implement ([bundleWithIdentifier:]) and prevent loading of multiple bundles with the same non-nil identifier. Use standardised path as cache key to prevent same bundle being loaded multiple times via symlinks etc. * Source/NSMessagePortNameServer.m: Fixup for names which contain bad characters for in a filename. * Source/win32/NSMessagePortNameServerWin32.m: ditto 2006-05-10 Richard Frith-Macdonald * Source/Additions/GSMime.m: Check for content-length specified as zero, and mark parsing as complete without attempting to read body. 2006-05-09 Nicolas Roard * Source/NSSortDescriptor.m: use -valueForKeyPath: instead of -valueForKey:. Patch from Saso Kiselkov . 2006-05-09 Dr. H. Nikolaus Schaller * Source/GNUmakefile: * Source/NSPredicate.m: * Headers/Foundation/NSCompoundPredicate.h: * Headers/Foundation/NSComparisonPredicate.h: * Headers/Foundation/NSPredicate.h: * Headers/Foundation/NSExpression.h: * Headers/Foundation/Foundation.h: Basic implementation of NSPredicate and related classes. 2006-05-08 Richard Frith-Macdonald * configure.ac: Check for bfd stuff for stacktrace support. * Source/NSException.m: incorporate code by Lloyd Dupont and Wim Oudshoorn to add a stack trace to a raised exception. Cleaned up and made to conform to coding standards. Rewrote code to build list of binary files from NSBundle. EXPERIMENTAL! Turn this on by building with STACKTRACE defined 2006-05-07 Richard Frith-Macdonald * Source/NSBundle.m: ignore profile/debug extensions in library name when looking for library bundles. 2006-05-06 Fred Kiefer * Resources/Languages/Esperanto: New language file. * Resources/Esperanto.lproj/Localizable.string: New string translations. Patch by Ingolf Jandt . * Resources/Languages/Korean: New language file. * Resources/Korean.lproj/Localizable.string: New string translations. Patch by Hwang YunSong . * Resources/GNUmakefile: Added new languages. 2006-05-05 Richard Frith-Macdonald * Headers/Foundation/NSBundle.h: fix type of _bundleClasses * Source/NSBundle.m: Try to make bundles for libraries behave as well as possible with respect to the code in the libraries. Rather depends on the Info.plist in the resource directory specifying an NSPrincipalClass so that we can look up that class at runtime and determine the file it came from. Added documentation to mmake it clear that this is not reliable (eg impossible for static or non-existent libraries). 2006-04-30 David Ayers * Source/NSString: Define _GNU_SOURCE to make protoype of fwprintf visible. 2006-04-28 Richard Frith-Macdonald * Source/NSKeyedUnarchiver.m: Fix decoding of NSNull objects. * Source/Additions/GSXML.m: Ensure that calls to parse documents handle the success/failure value returned. Improve exception info. 2006-04-27 Richard Frith-Macdonald * Source/NSURL.m: Fix error unescaping uppercase hex digits. 2006-04-26 Saso Kiselkov * Headers/Foundation/NSException.h: Support native exceptions. 2006-04-26 Richard Frith-Macdonald * Source/NSCalendarDate.m: Correction to millisecond fix ... for bug #16426 * Resources/GNUmakefile: Fix installation of Ukrainian language. * Source/NSProcessInfo.m: Always use UTF16 args on mingw32. 2006-04-26 Hubert Chan * config/config.align.c: force compiler not to optimise away the code being tested ... fixes bug #16342 2006-04-26 Marcus Muller * Source/NSKeyValueCoding.m: Fix bug #16386 2006-04-26 Sergii Stoian * Resources/Languages/Russian: Updates and fixes * Resources/Languages/Ukrainian: New file * Resources/Languages/UkrainianRussian: Removed wrong file 2006-04-24 Richard Frith-Macdonald * Source/NSCalendarDate.m: Avoid a couple of minor rounding errors by using floating point constants for millisecond multipliers. 2006-04-24 Alex Perez * Source/NSProcessInfo.m: Elaborated upon the GNU_MISSING_MAIN_FUNCTION_CALL error message, adding a section about the most common cause of the error being mismatched gui and base library versions. Feel free to make more clear or re-word. 2006-04-17 Adam Fedor * Source/NSTimeZone.m: Remove space in @ string define (causes problems with gcc 2.95). 2006-04-14 Jeremy Bettis * Source/win32/GSFileHandleWin32.m: Fix background reading of pipes. Several changes for Openstep compatiblity: Don't queue notification, don't raise exception when asked to read while a background operation is in progress. * Source/win32/GSRunLoopCtxt.m: If there are no handles to block on but there is a timer, sleep until the timer needs to wake up. 2006-04-12 Jeremy Bettis * Source/NSTimeZone.m: Use native time zone files under Solaris. * Source/GSFFCallInvocation.m: If the returning context is expecting a void* but we have a different return type just cast it. This normally is because the method was not declared and has defaulted to returning id. * Source/win32/NSUserDefaultsWin32.m: Write defaults to registry as unicode strings, read in either unicode(REG_SZ) or ascii(REG_BINARY). * Source/win32-load.h: In mingw, fileSystemRepresentation is unicode * Source/objc-load.m: In mingw, fileSystemRepresentation is unicode * Source/NSPropertyList.m (propertyListFromData:mutabilityOption:format:errorDescription:): Don't call memcmp if the data is smaller than 8 bytes. * Source/NSFileManager.m (isExecutableFileAtPath:): Added a comment * Source/NSBundle.m (objc_executable_location): A cast was obsuring a misuse of fileSystemRepresentation 2006-04-10 Fred Kiefer * Source/NSPropertyList.m (BinaryPLGenerator - storeCount:): Corrected line forgotten when applying last patch. 2006-04-04 Richard Frith-Macdonald * Source/Additions/GSXML.m: ([GSSAXHandler-dealloc]) fix memory leak. 2006-04-02 Richard Frith-Macdonald * Source/NSBundle.m: When loading localisation striong files, check the character encoding used and warn if it's not portable and may be producing incorrect messages due to the current default C string encoding not being the same as the one the file was created in. 2006-04-01 Richard Frith-Macdonald * Source/NSCharacterSetData.h: Updated to version with comments. 2006-03-31 Richard Frith-Macdonald * Source/Additions/GSObjCRuntime.m: Add a class for autoreleased memory so it is clearer when using object allocation debugging. 2006-03-28 Richard Frith-Macdonald * Source/GSString.m: Fix error initialising mutable string from unicode char array conmtaining ascii characters. Fix a few memory mleaks. 2006-03-25 Richard Frith-Macdonald * Source/win32/NSStreamWin32.m: Various tidyups for pipe streams. * Source/NSDictionary.m: Avoid compiler warning. * Headers/Additions/GNUstepBase/Unicode.h: Add validation function. * Source/Additions/Unicode.m: Add unicode validation function and alter UTF8 handling to be stricter. * Source/GSString.m: validate unicode when initialising a string. Also create 8bit data strings rather than 16bit where possible. 2006-03-24 Richard Frith-Macdonald * Source/GSRunLoopCtxt.h: * Source/unix/GSRunLoopCtxt.m: * Source/win32/GSRunLoopCtxt.m: Tidy/improve removal of triggered watchers from outer contexts. * Source/NSDictionary.m: ([valueForKey:]) conform to MacOS spec 2006-03-21 Richard Frith-Macdonald * Source/unix/GSRunLoopWatcher.m: deleted * Source/win32/GSRunLoopWatcher.m: deleted * Source/GSRunLoopWatcher.m: combine drom subdirectories. * Source/GNUmakefile: * Source/NSSocketPort.m: * Source/NSRunLoop.m: * Source/GSRunLoopWatcher.h: * Source/GSStream.h: * Source/GSStream.m: * Source/unix/GSRunLoopCtxt.m: * Source/unix/GNUmakefile: * Source/unix/NSStream.m: * Source/GSRunLoopCtxt.h: * Source/NSMessagePort.m: * Source/win32/GSRunLoopCtxt.m: * Source/win32/GNUmakefile: * Source/win32/NSStreamWin32.m: * Source/NSThread.m: * Source/GSFileHandle.m: * Headers/Foundation/NSRunLoop.h: * Headers/Additions/GNUstepBase/GSFileHandle.h: Remove timeout facility for runloop watchers ... can use standard timers instead. This simplifies api/code somewhat. Added new watcher type ET_TRIGGER to count as an input source for the runloop but work by polling rather than waiting for I/O events. This allows NSStream objects to be added to the runloop even if they don't do real I/O (eg memory streams). Added private internal API to allow watchers to adjust how the loop deals with them for each iteration... needed to simulate unix like level-triggered events on windows where events are edge triggered. Rewrote NSStream code to put handling of runloop scheduling in the abstract classes rather than repeat in every subclass. Rewrote NSStream stuff to use new runloop mechanisms to support memory and file streams in runloops. Implemented pipe base NSStream for windows. 2006-03-18 Richard Frith-Macdonald * Tools/AGSOutput.m: Get rid of bogus ' ' * Tools/AGSHtml.m: Fix error in display of category method index. 2006-03-17 Richard Frith-Macdonald * Source/cifframe.h: Add code to try to get ffi muld to work on mingw32 * GNUmakefile: Don't build SSL subproject for mingw32 as it doesn't work. 2006-03-17 Andrew Sveikauskas * Source/thr-mach.h: include objc/objc-api.h * Source/thr-pthread.m: use pthread_yield() except for apple * Source/GNUmakefile: link pthread library on openbsd where it isn't linked to the objc runtime. 2006-03-13 Adam Fedor * Version 1.12.0 2006-03-13 Richard Frith-Macdonald * Source/NSKeyValueCoding.m: Attempt to fix problems introduced into keypath code and reported by Helge ... ensure kvc mnethods are called for each element in the path. * Source/inet_pton.c: fixup for mingw32 * Source/NSTimeZone.m: add missing include 2006-03-12 Richard Frith-Macdonald * Source/NSPropertyList.m: Allow for quoting of numeric/date values in property lists. Fixes bug #16068 2006-03-11 Richard Frith-Macdonald * Headers/Additions/GNUstepBase/GSXML.h: clarify documentation of xml entity escaping methods. * Headers/Foundation/NSInvocation.h: don't use 'class' as macro argument ... should be hermless but is confusing to C++ programmers. 2006-03-10 Richard Frith-Macdonald * Source/NSTimeZone.m: * Source/NSCalendarDate.m: * Source/GSPrivate.h: * Source/NSDate.m: Reorganise/tidy to avoid making some private symbols external. 2006-03-08 Richard Frith-Macdonald * Source/unix/GSRunLoopCtxt.m: Don't hanlde windows messages unless required. * Source/win32/NSStreamWin32.m: Use fileSystemRepresentation rather than cStringUsingEncoding: * Source/NSCalendarDate.m: Support '%T' and '%t' in description. * Source/NSFileManager.m: don't abort directory copy just because we can't set attributes of destination directory. Don't try to copy directories with their old owners. * Source/Additions/GSXML.m: Support #x and #X unescaping. * Source/NSSocketPortNameServer.m: * Source/NSBundle.m: * Source/NSProcessInfo.m: * Source/NSAttributedString.m: * Source/NSArray.m: * Source/NSMessagePortNameServer.m: * Source/GSPrivate.h: * Source/NSInvocation.m: * Source/NSNotificationCenter.m: * Source/NSCoder.m: * Source/mframe.m: * Source/Additions/GSCategories.m: * Source/NSConnection.m: * Source/GSPortPrivate.h: * Source/NSThread.m: * Source/NSNull.m: * Source/NSDistantObject.m: * Source/NSTask.m: * Source/NSPortNameServer.m: * Headers/Foundation/NSTimeZone.h: * Headers/Foundation/NSHashTable.h: * Headers/Foundation/NSRange.h: * Headers/Foundation/NSCoder.h: * Headers/Foundation/NSException.h: * Headers/Foundation/NSByteOrder.h: * Headers/Foundation/NSPortCoder.h: * Headers/Foundation/NSURL.h: * Headers/Foundation/NSObject.h: * Headers/Foundation/NSCalendarDate.h: * Headers/Foundation/NSDecimalNumber.h: * Headers/Foundation/NSKeyValueCoding.h: * Headers/Foundation/NSBundle.h: * Headers/Foundation/NSSerialization.h: * Headers/Foundation/NSURLHandle.h: * Headers/Foundation/NSPropertyList.h: * Headers/Foundation/NSTimer.h: * Headers/Foundation/NSNotification.h: * Headers/Foundation/NSScanner.h: * Headers/Foundation/NSProcessInfo.h: * Headers/Foundation/NSDistributedNotificationCenter.h: * Headers/Foundation/NSGeometry.h: * Headers/Foundation/NSAttributedString.h: * Headers/Foundation/NSDecimal.h: * Headers/Foundation/NSConnection.h: * Headers/Foundation/NSUndoManager.h: * Headers/Foundation/NSDateFormatter.h: * Headers/Foundation/NSMethodSignature.h: * Headers/Foundation/NSAutoreleasePool.h: * Headers/Foundation/NSFormatter.h: * Headers/Foundation/NSUserDefaults.h: * Headers/Foundation/NSThread.h: * Headers/Foundation/NSData.h: * Headers/Foundation/NSDate.h: * Headers/Foundation/NSHost.h: * Headers/Foundation/NSArray.h: * Headers/Foundation/NSProxy.h: * Headers/Foundation/NSObjCRuntime.h: * Headers/Foundation/NSKeyedArchiver.h: * Headers/Foundation/NSProtocolChecker.h: * Headers/Foundation/NSDebug.h: * Headers/Foundation/NSPortMessage.h: * Headers/Foundation/NSError.h: * Headers/Foundation/NSDistributedLock.h: * Headers/Foundation/NSFileHandle.h: * Headers/Foundation/NSKeyValueObserving.h: * Headers/Foundation/NSDictionary.h: * Headers/Foundation/NSClassDescription.h: * Headers/Foundation/NSNull.h: * Headers/Foundation/NSZone.h: * Headers/Foundation/NSValue.h: * Headers/Foundation/NSIndexSet.h: * Headers/Foundation/NSPort.h: * Headers/Foundation/NSSortDescriptor.h: * Headers/Foundation/NSLock.h: * Headers/Foundation/NSSet.h: * Headers/Foundation/NSDistantObject.h: * Headers/Foundation/NSTask.h: * Headers/Foundation/NSCharacterSet.h: * Headers/Foundation/NSInvocation.h: * Headers/Foundation/NSUtilities.h: * Headers/Foundation/NSPortNameServer.h: * Headers/Foundation/NSNumberFormatter.h: * Headers/Foundation/NSXMLParser.h: * Headers/Foundation/NSEnumerator.h: * Headers/Foundation/NSMapTable.h: * Headers/Additions/GNUstepBase/DistributedObjects.h: * Headers/Additions/GNUstepBase/GSCategories.h: Tidied a bit ... wrap some long lines. Remove some old deprecated API. Move some internal API out of external headers. Deprecate a few non-standard API features. Move a bit of non-standard API to the additions library. 2006-03-07 Richard Frith-Macdonald * Source/NSRunLoop.m: * Source/unix/GSRunLoopCtxt.m: * Source/win32/GSRunLoopWatcher.m: * Source/win32/GSRunLoopCtxt.m: * Headers/Foundation/NSRunLoop.h: Add initial attempt at code for adding streams to runloops ... as yet untested and not integrated into the NSStream code. Remove documentation for GNUstep specific loop watcher API and add comments to say that it may be deprecated in a later release if/when we move to using NSStream throughout. * configure.ac: minor documentation corrections. Don't allow environment variable to confuse setup of file location. * configure: regenerated 2006-03-05 Richard Frith-Macdonald * Source/NSRunLoop.m: Optimise timer handling a little and fix very minor bug which would cause runloop to run an extra time on some occasions. * Tools/gdomap.c: Include config.h * configure.ac: Support config file environment variable by default * configure: Regenerate * Documentation/Base.gsdoc: Document default setting for env variable 2006-03-04 Richard Frith-Macdonald * Source/NSRunLoop.m: Rewrite housekeeping timer. * Source/GSRunLoopCtxt.h: Remove obsolete message/selector. * Source/win32/GSRunLoopCtxt.m: Add housekeeping timer. * Source/win32/NSRunLoopWin32.m: remove unused code. * Source/win32/GNUmakefile: remove /NSRunLoopWin32.m * Source/win32/NSStreamWin32.m: minor tidyups * Source/NSThread.m: Use new internal API for housekeeping timer. * Headers/Foundation/NSRunLoop.h: Remove deprecated mingw api Basically, remove deprecated mingw32 specific api, and change housekeeper to try to make it as invisible as possible in terms of side effects. * Source/NSFileManager.m: Fix mingw determination of the ownership of a directory. 2006-03-03 Richard Frith-Macdonald * Tools/gdomap.c: Check for HAVE_STDINT_H for safety of include 2006-03-01 Adam Fedor * configure.ac: Add check for inet_pton. Also check for make- specified GNUstep.conf file * config.make.in: Add variable for inet_pton * Source/inet_pton.c: New file * GNUmakefile: Use it if needed. 2006-03-01 Derek Zhou * Source/GSStream.m: Typo fixes * Source/win32/NSStreamWin32.m: rewrite 2006-03-01 Richard Frith-Macdonald * Source/unix/NSStream.m: Final (hopefully) ifdef to disable ipv6 so systems which don't have it can compile. 2006-02-28 Richard Frith-Macdonald * Source/unix/NSStream.m: More portability fixups ... use AF_UNIX and PF_UNIX if AF_LOCAL and PF_LOCAL are not avaulable. Check for PF_INET6 * Tools/gdomap.c: include stdint.h for uint32_t on systems where it's not included by other headers. 2006-02-27 Richard Frith-Macdonald * Source/Additions/GSXML.m: Helge spotted thread safety issues with the code controlling warnings and the external entity loader. Changed code to modify internals of the parser context and SAX context to set the values in there directly rather than using the global setter mechanism (strangely recommended in the libxml2 docs), so that all setup is made to the individual parser and should not effect other parsers in other threads. * Source/NSUndoManager.m: ([-removeAllActions]) fixed to remove any grouping in progress. 2006-02-27 Richard Frith-Macdonald * Headers/Foundation/NSString.h: Correct return type for ([getCString:maxLength:encoding]) * Source/NSString.m: ([getCString:maxLength:encoding]) make implementation match MacOS-X implementation rather than their docs. Change API for setting path handling mode to be a function we can call before any string/path operations. Maybe final API to be made public? Path handling tweaks based on discussion at FOSDEM * Source/GSString.m: ([getCString:maxLength:encoding]) implemented. * Source/unix/NSStream.m: Portabiulity fixups ... use EPROTO only if defined and use dummy implementations of inet6 cclasses if AF_INET6 is not defined. * Source/NSKeyValueCoding.m: Some optimisation suggested by Helge ... rewrite key path methods to loop rather than recurse. * Source/GSFFIInvocation.m: Avoid compiler warning * Source/NSURL.m: use new getCString... method * Source/NSSerializer.m: ditto * Documentation/Base.gsdoc: Remove env variable to set path handling. * Headers/Additions/GNUstepBase/GSObjCRuntime.h: Slight change to functions for KVC to allow faster implementation. * Source/Additions/GSObjCRuntime.m: ditto 2006-02-24 Richard Frith-Macdonald * NSTimeZone.m: Fix bug in GMT+/-NNNN timezone initialisation so that negative offsets work. Implement GMT and synonyms as internal absolute timezones. Implement GMT-14 to GMT+14 as absolute timezones. 2006-02-23 Richard Frith-Macdonald * Source/NSUserDefaults.m: Restructure for lazy creation of defaults database ... only create when we attempt to write. * Source/NSSocketPort.m: Include GSPrivate.h * Source/NSRunLoop.m: ditto * Source/unix/GSRunLoopCtxt.m: ditto * Source/GSPrivate.h: ditto * Source/win32/GSFileHandleWin32.m: ditto * Source/win32/GSRunLoopCtxt.m: ditto * Headers/Foundation/NSNotificationQueue.h: Move library internal function declarations to GSPrivate.h, thanks to Lloyd Dupont for spotting problem. 2006-02-23 Sheldon Gill * Source/Additions/GSXML.m: URL munging for local DTD cache fixed for Win32 filesystems 2006-02-22 Richard Frith-Macdonald * Source/Additions/GSXML.m: Fix parsing error .. was not recognising base64 elements. * Headers/Foundation/NSPathUtilitites.h: Expand config documentation * NSTimeZone.m: * NSPathUtilities.m: * NSPage.m: * NSException.m: * NSLog.m: Fix some MINGW32 conditional compilation to use __MINGW32__ 2006-02-21 Richard Frith-Macdonald * Source/NSFileManager.m: Ensure that NSBundle is initialised before changing the current directory. * Source/NSBundle.m: Restructure for lazy evaluation of path to executable ... lots of apps never need it. * Source/NSTimeZone.m: Protect some class methods using locking, and provide (slow) fallback mechanisms if some of the files are missing, including fallback to posix stuff in zoneinfo directory if we really have to. 2006-02-20 Richard Frith-Macdonald * NSTimeZones/NSTimeZones.tar: regenerated. 2006-02-19 Richard Frith-Macdonald * Source/NSPathUtilities.m: Make config functions public. * Headers/Foundation/NSPathUtilities.h: Declare config functions. * Source/NSUserDefaults.m: Use config functions and add support for new option to turn off external config file. 2006-02-18 Richard Frith-Macdonald * Source/NSFileManager.m: Fix bug dereferencing nul pointer under some conditions. 2006-02-17 Richard Frith-Macdonald * Source/NSFileManager.m: Implement method to get name of files owner on mingw32. * Source/NSPathUtilities.m: Check that user specific config file is owned by user, as suggested by Sheldon. 2006-02-16 Derek Zhou * Source/GSStream.h: * Source/GSStream.m: * Source/unix/NSStream.m: * Source/win32/NSStreamWin32.m: * Headers/Foundation/NSStream.h: Add server side and pipe stream extensions along with a few fixes. 2006-02-15 Andrew Ruder * Headers/Foundation/NSStream.h: NSRunLoop was not defined in the NSStream header file. (Added @class NSRunLoop;) 2006-02-15 Derek Zhou Richard Frith-Macdonald * Headers/Foundation/NSStream.h: New NSStream, NSInputStream and NSOutputStream classes and constants. * Headers/Foundation/Foundation.h: include NSStream.h * Source/GSStream.h: Internal headers for GSStream and subclasses * Source/GSStream.m: System independent parts of NSStream * Source/unix/NSStream.m: Unix specific class implementations * Source/unix/GNUmakefile: Build NSStream.m * Source/win32/NSStreamWin32.m: Win32 placeholders * Source/win32/GNUmakefile: Build NSStreamWin32.m * Source/GNUmakefile: Build GSStream.m * Source/DocMakefile: Build NSStream documentation Partial implementation of NSStream ... missing SSL, SOCKS, and Win32 (apart from memory streams). 2006-02-15 Andrew Ruder * Headers/Foundation/NSString.h: Fixing the oldest bug in GNUstep? The header has says NSObject since Andrew McCallum added the file on March 18th, 1995 (Just short of 11 years ago). 2006-02-14 Richard Frith-Macdonald * Source/GSFileHandle.m: ([-availabledata]) fix error in last change as we should block, but not for more than a single byte. 2006-02-13 Richard Frith-Macdonald * Source/Additions/GSCategories.m: Fix MD5 digest for 64bit CPU 2006-02-12 Richard Frith-Macdonald * Source/NSIndexPath.m: new * Headers/Foundation/NSIndexPath.h: new * Headers/Foundation/Foundation.h: include NSIndexPath.h * Source/GNUmakefile: build NSIndexPath * Source/DocMakefile: document NSIndexPath 2006-02-10 Richard Frith-Macdonald * Source/win32/GSFileHandleWin32.m: Ignore extraneous write events. * Source/NSString.m: Don't insert native path separators by default. * Source/NSProcessInfo.m: Report correct operating system on windows. 2006-02-07 Richard Frith-Macdonald * Source/GSFileHandle.m: ([-availabledata])a fix logic of non-blocking I/O setting. * Source/NSBundle.m: ([-pathForResource:ofType:inDirectory:]) ignore versioning on windows. 2006-02-05 Richard Frith-Macdonald * Source/NSString.m: (handle_printf_atsign()) extend to support wprintf. 2006-02-01 Richard Frith-Macdonald * Source/Additions/Unicode.m: Try to use iconv transliteration for lossy conversion. When handling unconvertable characters in lossy conversion, substitute a question mark rather than an asterisk for consistency with iconv and other implementations. 2006-01-27 Richard Frith-Macdonald * Source/NSDistributedLock.m: ([description]) implemented 2006-01-20 Richard Frith-Macdonald * Source/NSAutoreleasePool.m: ([addObject:]) fix error in check for missing pool during thread exit. 2006-01-19 Richard Frith-Macdonald * Tools/plget.m: remove unused variable * Source/GGSString.m: optimise ([canBeConvertedToEncoding:]) * Source/NSURL.m: correct misleading/wrong exception text. * Source/NSString.m: mingw path handling tweaks ... build new paths using native separator by default. 2006-01-19 Richard Frith-Macdonald * Headers/Foundation/NSThread.h: * Source/NSAutoreleasePool.m: * Source/NSThread.m: Mimic MacOS-X behavior and create an autorelease pool if necessary to catch any autorelease objects during thread exit. As suggested by Wim Oudshoorn.. 2006-01-18 Richard Frith-Macdonald * Source/Additions/Unicode.m: fix for rare case where we could corrupt the stack ... spotted by Wim Oudshoorn. 2006-01-18 Andrew Ruder * config/addlibrarypath.m4: new file * configure.ac: Use new function to set library paths for netbsd * configure: regenerate 2006-01-17 Richard Frith-Macdonald * Tools/plget.m: New file to extract a string from a plist. * Tools/pldes.1: Include plget * Tools/GNUmakefile: build/install plget. 2006-01-15 Richard Frith-Macdonald * Source/win32/NSMessagePortNameServerWin32.m: * Source/win32/NSMessagePortWin32.m: Add hack to cope with bug reading registry ... better solution welcome if anyone knows one. Add security attributes to message port stuff ... should only let current user on current machine access message ports I hope. 2006-01-12 Richard Frith-Macdonald * Source/NSPathUtilities.m: Fix possible read off end of buffer when parsing config file. 2006-01-11 Richard Frith-Macdonald * Documentation/GNUmakefile: * Documentation/General/GNUmakefile: Fix path to autogsdoc for mingw where the 'obj' symlink doesn't work. 2006-01-11 Richard Frith-Macdonald * Headers/Additions/GNUstepBase/GSUnion.h: * Headers/Foundation/NSByteOrder.h: * Headers/Foundation/NSPort.h: * Source/GSFileHandle.m: * Source/GSFormat.m: * Source/NSData.m: * Source/NSDistantObject.m: * Source/NSMessagePort.m: * Source/NSPortCoder.m: * Source/NSSerializer.m: * Source/NSSocketPort.m: * Source/NSSocketPortNameServer.m: * Source/NSString.m: * Source/NSTimeZone.m: * Source/NSUnarchiver.m: * Source/win32/GSFileHandleWin32.m: * Source/win32/NSMessagePortWin32.m: Update to use sized datatypes from stdint.h now that almost all operating systems support it. * Source/NSCalendarDate.m: Support '%T' and '%t' as supplied by unix date/time locale info. * configure.ac: Ensure uintptr_t and intptr_t exist * configure: regenerate 2006-01-10 Richard Frith-Macdonald * Source/mframe.m: When calculating info about a structure, make sure its alignment is that of its most strictly aligned field and make sure its size is a multiple of its alignment. * Source/NSData.m: ([initWithCoder:]) Fix bug decoding unsigned long into unsigned int variable ... breaks on amd64 2006-01-10 Richard Frith-Macdonald * Source/GSFileHandle.m: * Source/NSAutoreleasePool.m: * Source/NSCallBacks.m: * Source/NSConnection.m: * Source/NSData.m: * Source/NSDictionary.m: * Source/NSDistantObject.m: * Source/NSMessagePort.m: * Source/NSObject.m: * Source/NSProtocolChecker.m: * Source/NSProxy.m: * Source/NSSocketPort.m: * Source/NSTask.m: * Source/NSThread.m: * Source/NSZone.m: * Source/Additions/GSXML.m: * Source/unix/GSRunLoopCtxt.m: Add explicit casts to avoid compiler warnings where we are on a processor where the size of an integer is not the same as the size of a pointer. * Tools/gdomap.c: Add type casts to fix comparisons on 64bit processor 2006-01-09 Richard Frith-Macdonald * Source/win32/GSRunLoopCtxt.m: Apply patch by Jeremy Bettis with fixups for intentation/formatting and minor correction to avoid waiting for an event when we have handled one in the current run of the loop. 2006-01-09 Richard Frith-Macdonald * Source/NSPropertyList.m: When generating binary plist, fix bug in case where we have to increase table size. * Source/NSKeyedArchiver.m: Update to use binary plist format by default rather than xml format ... MacOS-X compatible and works when libxml2 is not available. * Source/NSKeyedUnarchiver.m: Print NSLog error if attempting to decode an xml archive when no libxml2 is available. 2006-01-08 Richard Frith-Macdonald * Source/NSPathUtilities.m: be more consistent in use of defined values from config file. * configure.in: Improve comments/help. Fix error in config where we were attempting OS based decisions before we had determined the OS. Improve default paths on mingw to be relative to the DLL. Load information from make package config fo use during build of base library. Generally try to improve user experience on mingw to make build/install really simple with new config files. * configure: regenerate * Headers/Additions/GNUstepBase/config.h.in: regenerate * Documentation/Base.gsdoc: Attempt to clarify config file operation. 2006-01-07 Fred Kiefer * Source/NSPropertyList.m (BinaryPLGenerator - storeCount:) Handle count > 256*256. Patch by Derek Zhou . 2006-01-04 David Ayers Bug #15353 * Source/NSProcessInfo.m (fallbackInitialisation): Move initialization to avoid compiler error. Reported by Stefan van den Oord (stefan.vandenoord@gmail.com). 2005-12-21 Adam Fedor * Version 1.11.2 2005-12-21 Richard Frith-Macdonald * Tools/AGSHtml.m: Partial update for use of CSS ... as provided by Fabien Vallon. Need to decide where the stylesheet file should come from and where it should be installed. Probably need a new autogsdoc flag for this and some internal api changes. 2005-12-20 Richard Frith-Macdonald * Tools/AGSParser.m: Deal with C++ declaration of external C/ObjC libs. * Tools/AGSHtml.m: Add changes to avoid colons in references to allow dumb windows help system to use our output. Same idea as patch #4569 but (hopefully) doesn't break anything. * Source/DocMakefile: A couple of fixes for building documentation of the additions library. 2005-12-20 Adam Fedor * SSL/configure.ac: Check for GNUSTEP_MAKEFILES not GNUSTEP_SYSTEM_ROOT. 2005-12-15 Richard Frith-Macdonald * Source/NSMessagePort.m: * Source/NSSocketPort.m: Increase maximum supported message size from 10MB to 32MB in recognition of the fact that everything is faster/bigger nowadays and people might actually want to send single messages with that much data in them. 2005-12-13 Richard Frith-Macdonald * Source/Additions/GSXML.m: Fix error parsing date/time in xmlrpc Remove bad characters when escaping string for xml. 2005-12-07 Richard Frith-Macdonald * Source/NSPathUtilities.m: Get paths of system directories (for linux FHS support) from config file. * Documentation/Base.gsdoc: update 2005-12-06 Richard Frith-Macdonald * configure.ac: On mingw, don't get the location of the config file from the make package. Assume ./GNUstep.conf instead, so that the base library is built for distribution (relocatable relative to the library). * configure: regenerate 2005-12-05 Richard Frith-Macdonald * Source/NSProcessInfo.m: Allow ([+initializeWithArguments:count:environment:]) to override the real environment on mingw32. * Source/NSPathUtilities.m: Ignore config files named .GNUstep.conf-ignore (so we can safely disable config file reading and ensure inbuilt defaults are used) * configure.ac: By default, disallow use of GNUSTEP_CONFIG_FILE environment variable. Remove some redundant code. Document better. * configure: regenerate * Documentation/Base.gsdoc: Update for config changes * Tools/autogsdoc.m: add any gsdoc files explicitly specified on command line to generated dependency file for make. 2005-12-02 Richard Frith-Macdonald * configure.ac: Fix bug configuring whether GNUstep.conf can be set in the environment * configure: regenerate 2005-12-01 Richard Frith-Macdonald * Source/NSPathUtilities.m: Add more checks/warnings about improper configuration. * Headers/Foundation/NSException.h: clarify/extend documentation. * Source/NSException.m: move some documentation to header. 2005-11-28 Richard Frith-Macdonald * Headers/Additions/GNUstepBase/GSConfig.h.in: * Headers/Additions/GNUstepBase/GSXML.h: * Headers/Foundation/NSCoder.h: * Headers/Foundation/NSConnection.h: * Headers/Foundation/NSFileManager.h: * Headers/Foundation/NSKeyValueObserving.h: * Headers/Foundation/NSObject.h: * Headers/Foundation/NSPort.h: * Headers/Foundation/NSPortCoder.h: * Headers/Foundation/NSProxy.h: * Headers/Foundation/NSString.h: * Headers/Foundation/NSURL.h: * Headers/Foundation/NSXMLParser.h: * Source/NSArray.m: * Source/NSAttributedString.m: * Source/NSCoder.m: * Source/NSConnection.m: * Source/NSDictionary.m: * Source/NSFileHandle.m: * Source/NSFileManager.m: * Source/NSKeyValueObserving.m: * Source/NSKeyedArchiver.m: * Source/NSKeyedUnarchiver.m: * Source/NSObject.m: * Source/NSPortCoder.m: * Source/NSPortNameServer.m: * Source/NSRunLoop.m: * Source/NSString.m: * Tools/AGSOutput.m: * Tools/gdnc.m: * Tools/gsdoc.gsdoc: Documentation tweaks and minor simplificiations. 2005-11-28 Richard Frith-Macdonald * Tools/AGSOutput.m: * Tools/AGSParser.h: * Tools/AGSParser.m: * Tools/AGSHtml.m: * Tools/autogsdoc.m: * Tools/gsdoc-1_0_3.dtd: * Toold/gsdoc.gsdoc: Added override=dummy attribute for methods which have dummy implementations intendeed to be ocerridden in subclasses. Update to log warning about unimplemented methods which are not tagged as intended to be overridden. 2005-11-22 Richard Frith-Macdonald * Source/NSPathUtilities.m: Restructure so that GNUstepConfig() can be used to set/get the global configuration as suggested by Jeremy Bettis 2005-11-22 Richard Frith-Macdonald * Source/NSPort.m: * Source/NSMessagePort.m: * Source/NSDistributedNotificationCenter.m: * Tools/gdnc.m: Use the NSPortIsMessagePort user default consistently to control whether socket or message ports are used by default. Remove mingw32 specific GSMailslot user default. Source/NSPathUtilities.m: Check for illegal paths (ones which don't appear to be absolute paths) specified in config file ... warn about the bad config, but try to guess what they shjould be for mingw32 2005-11-20 Richard Frith-Macdonald * configure.ac: Add flags to allow detection of headers/libraries installed in the System domain of the GNUstep hierarchy. * configure: regenerate * Source/win32/GSRunLoopCtxt.m: Intercept windows WM_QUIT messages and tell the application to terminate cleanly (or raise an exception if the NSApplication class is not linked). Should allow ms-windows to get a mingw32-based GNUstep app to shut down cleanly. * Source/NSDistributedNotificationCenter.m: Rewrite code for connecting to and starting up daemon to handle the process more quickly and smoothly. Only complain if we can't to connect to it even after launching it and retrying the connection for five seconds. 2005-11-16 Richard Frith-Macdonald * Source/NSProcessInfo.m: * Source/NSUserDefaults.m: Restore reverted changes for code where class initialisation order is not a factor. * Source/NSUser.m: Delete unused file * GNUmakefile: Don't try to build NSUser.m 2005-11-15 Richard Frith-Macdonald Revert last changes ... discovered some apps where ordering of class initialisation caused failures. 2005-11-15 Richard Frith-Macdonald * Tools/gdnc.m: * Source/GSPrivate.h: * Source/NSException.m: * Source/NSObject.m: * Source/NSProcessInfo.m: * Source/NSString.m: * Source/NSUserDefaults.m: Be consistent and access environment variables only via the NSProcessInfo class ...so a program which uses a category to override it can effectively change the environment safely. * Source/NSPathUtilities.m: Restructure code for gatting config, so that a single function can be used to get/set config information for the system or a user. Decrease code duplication. 2005-11-14 Richard Frith-Macdonald * Source/win32/GSFileHandleWin32.m: Move mingw32 implementation of file handle code here. * Source/GSFileHandle.m: Remove mingw32 code. * Source/NSPathUtilitires.m: Fix handling of user config file for when the user name is changed. 2005-11-12 Richard Frith-Macdonald * Source/NSPathUtilities.m: NSOpenStepRootDirectory() remove deprecated status in documentation. Try to clarify doc. Get rid of environment variable. Use native path for mingw32 * Tools/gsdoc.7: Fix obsolete reference to environment variable. * Tools.gsdoc.gsdoc: ditto 2005-11-11 Richard Frith-Macdonald * Applied Willem Rein Oudshoorn's fix for bug #11055, having tested it and found it OK on windows-xp as well as the windows-2003 system he was using. 2005-11-11 Richard Frith-Macdonald * Source/win32/NSMessagePortNameServerWin32.m: fix port lookup in case where named port does not exist. Correct debug logging by class name. * Testing/nsconnection_client.m: don't run large structure test on mingw32 at present ... it crashes (something wrong with the invocation stuff for ffcall and some large structures on mingw32) * Tools/gdnc.m: Obey GSMailslot default on mingw32. * Source/NSDistributedNotificationCenter.m: ditto. * Source/win32/NSMessagePortWin32.m: Fixes for cases where requests we wanted to be async actually complete synchronously. Moves the state of this code from pre-alpha to alpha/beta quality I guess. * Source/preface.m: Change declaration of variables to be pointer to char rather than array of char ... more usual/safe. 2005-11-10 Richard Frith-Macdonald * Source/win32/NSMessagePortWin32.m: more changes * Source/win32/NSMessagePortNameServerWin32.m: ditto Working at least in part (pre-alpha I guess) ... enable with the GSMailslot user default. Known problems - 1. no way of telling if the other end of a connection has gone until we try to write to it. 2. hangup in my testing comms between three threads. 2005-11-09 Richard Frith-Macdonald * Source/win32/NSMessagePortWin32.m: more changes * Source/win32/NSMessagePortNameServerWin32.m: ditto * Source/Tools/AGSOutput.m: search for C/ObjC types in text, and render them as automatically as suggested by Fabien Vallon. 2005-11-08 Richard Frith-Macdonald * Source/win32/NSMessagePortWin32.m: Lots of work towards implementing this, but nothing usable yet (compiles but won't run). * Source/win32/NSMessagePortNameServerWin32.m: ditto * Source/win32/NSUserDefaultsWin32.m: fix value type problem. * Source/win32/GNUmakefile: build NSMessagePortNameServer. * Source/NSMessagePortNameServer.m: fix minor memory leak. 2005-11-07 Richard Frith-Macdonald * Headers/Additions/GNUstepBase/Win32Support.h: removed * Headers/Additions/GNUstepBase/Win32_Utilities.h: removed * Source/NSPathUtilities.m: Don't include unused files. * Source/win32/GNUmakefile: Don't build removed files. * Source/win32/NSUserDefaultsWin32.m: fix '%s' to '%S' * Source/win32/Win32Support.m: removed * Source/win32/Win32_Utilities.m: removed Cleanup ... remove some unused win32 cruft. 2005-11-06 Richard Frith-Macdonald * Documentation/Base.ispell: words from base reference documentation * Documentation/Base.gsdoc: * Headers/Additions/GNUstepBase/GSMime.h: * Headers/Additions/GNUstepBase/GSXML.h: * Headers/Foundation/NSArray.h: * Headers/Foundation/NSCalendarDate.h: * Headers/Foundation/NSCharacterSet.h: * Headers/Foundation/NSConnection.h: * Headers/Foundation/NSData.h: * Headers/Foundation/NSDebug.h: * Headers/Foundation/NSDecimalNumber.h: * Headers/Foundation/NSError.h: * Headers/Foundation/NSFileHandle.h: * Headers/Foundation/NSFormatter.h: * Headers/Foundation/NSIndexSet.h: * Headers/Foundation/NSKeyValueCoding.h: * Headers/Foundation/NSKeyedArchiver.h: * Headers/Foundation/NSLock.h: * Headers/Foundation/NSMethodSignature.h: * Headers/Foundation/NSObject.h: * Headers/Foundation/NSPathUtilities.h: * Headers/Foundation/NSPortMessage.h: * Headers/Foundation/NSPropertyList.h: * Headers/Foundation/NSRunLoop.h: * Headers/Foundation/NSString.h: * Headers/Foundation/NSURL.h: * Headers/Foundation/NSURLHandle.h: * Headers/Foundation/NSXMLParser.h: * Headers/Foundation/NSZone.h: * Source/GSCompatibility.m: * Source/GSCountedSet.m: * Source/GSString.m: * Source/GSTemplateValue.m: * Source/NSArchiver.m: * Source/NSArray.m: * Source/NSCalendarDate.m: * Source/NSClassDescription.m: * Source/NSConnection.m: * Source/NSData.m: * Source/NSDate.m: * Source/NSDebug.m: * Source/NSDictionary.m: * Source/NSDistantObject.m: * Source/NSDistributedLock.m: * Source/NSDistributedNotificationCenter.m: * Source/NSFileHandle.m: * Source/NSFileManager.m: * Source/NSHashTable.m: * Source/NSInvocation.m: * Source/NSLock.m: * Source/NSMapTable.m: * Source/NSObject.m: * Source/NSPathUtilities.m: * Source/NSPortMessage.m: * Source/NSProxy.m: * Source/NSScanner.m: * Source/NSSocketPortNameServer.m: * Source/NSString.m: * Source/NSTask.m: * Source/NSTimeZone.m: * Source/NSTimer.m: * Source/NSURL.m: * Source/NSURLHandle.m: * Source/NSUnarchiver.m: * Source/NSUndoManager.m: * Source/NSUserDefaults.m: * Source/NSValue.m: * Source/Additions/GSCategories.m: * Source/Additions/GSMime.m: * Source/Additions/GSObjCRuntime.m: * Source/Additions/GSXML.m: * Source/Additions/Unicode.m: * Source/win32/NSUserDefaultsWin32.m: * Tools/AGSParser.m: * Tools/autogsdoc.m: * Tools/gdomap.h: Fix typo/spelling mistakes manifesting in reference documentation. I spent half a day going through the tedious process of running all gsdoc output through ispell. 2005-11-05 Richard Frith-Macdonald * Headers/Additions/GNUstepBase/Win32_Utilities.h: * Headers/Foundation/NSFileManager.h: * Headers/Foundation/NSString.h: * Source/NSBundle.m: * Source/NSData.m: * Source/NSFileManager.m: * Source/NSLog.m: * Source/NSPathUtilities.m: * Source/NSProcessInfo.m: * Source/NSString.m: * Source/NSTimeZone.m: * Source/objc-load.m: * Source/win32-load.h: * Source/Additions/GSObjCRuntime.m: * Source/win32/NSMessagePortWin32.m: * Source/win32/NSUserDefaultsWin32.m: * Source/win32/Win32_Utilities.m: Attempt to rationalise mingw32 unicode support, use explicit unicode methods throughput, fix several bugs where APIs were not using unicode when they should have been doing. 2005-11-05 Richard Frith-Macdonald * Source/GSCompatibility.m: don't generate macos-x (xml) property lists if we can't parse them. * Source/GSHTTPURLHandle.m: debug fix for mingw32 * Headers/Foundation/NSFileManager.h: add mingw32 conditionals. * Headers/Foundation/NSString.h: add mingw32 conditionals. * Source/NSMessagePort.m: remove mingw32 stuff * Source/win32/NSMessagePort.m: added partial implementation * Source/win32/NSMessagePortNewServer.m: added skeleton * Source/win32/GNUmakefile: build message port classes 2005-11-04 Richard Frith-Macdonald * configure.ac: Cope with backslashes in values from GNUstep.conf * configure: Regenerated. Improvements for mingw32 systems * Source/NSConnection.m: update obsolete methods. * Source/NSMessagePort.m: start mingw32 implementation 2005-11-01 Richard Frith-Macdonald * Source/NSMessagePort.m: If a socket file already exists when trying to bind to it, try connecting to it to see if there is a program using it, and unlin/retry if there isn't. This is an attempt to handle situations where an old process was not killed cleanly and the new process tries to use the same name. * Source/Additions/GSCategories.m: ([uuencodeInto:name:mode:]) fix error encoding the termination marker of the uuencoded data. * Headers/Foundation/NSPort.h: Declare missing category of NSObject Remove some of the subclass stuff that should be private. * Source/GSPortPrivate.h: Put private port stuff here ... needs more to be moved out of NSPort.h * Source/NSMessagePort.m: Hide instance variables. Use GSPortPrivate.h Add bugfix for possible deadlock situation reported by Wim. * Source/NSSocketPort.m: ditto * Source/NSMessagePortNameServer.m: Use GSPortPrivate.h * Source/NSPort.m: Implement missing informal protocol method. 2005-10-31 Richard Frith-Macdonald * Source/GSHTTPURLHandle.m: retain self for the duration of I/O handler methods where we may make callbacks to clients. In case the client owns the handle, and decides to release it. * Source/GSFileHandle.m: Increase backlog size in listen() to improve perfromance of server objects accepting lots of connections. * Source/NSSocketPort.m: ditto ... though unlikely to be needed. * Source/NSMessagePort.m: ditto * Source/GSTcpPort.m: remove obsolete file * Tools/gstcpport_client.m: ditto * Tools/gstcpport_server.m: ditto 2005-10-30 Richard Frith-Macdonald * Source/NSLog.m: Apply patch #5399 from Jeremy Bettis. Tidy indentation. Fix variable declaration not at start of block (broke compile for older gcc versions). Avoid repeated system calls to get process ID. * Headers/Additions/GNUstepBase/GSRunLoopCtxt.h: Move private header to Source directory. * Headers/Additions/GNUstepBase/GSRunLoopWatcher.h: ditto * Headers/Foundation/NSRunLoop.h: Add event type for handling windows messages. * Source/GNUmakefile: Don't install private headers in public area. * Source/win32/GSRunLoopCtxt.m: Add code to handle windows messages. Check number of handles waited for. Avoid unnecessary heap memory allocation/release. * Source/win32/GSRunLoopWatcher.m: update header path. * Source/win32/NSRunLoopWin32.m: update header path. Deprecate addMsgTarget:withMethod:forMode: as our code for the original addEvent:type:watcher:forMode: can be much more efficient if we don't support that extension. We need to use addEvent:type:watcher:forMode: if we want to implement NSMessagePort using windows messages. if we don't support that as well as the o * Source/win32/NSUserDefaultsWin32.m: update header path. 2005-10-29 Richard Frith-Macdonald * Tools/AGSHtml.m: Revert last change ... it looked OK but it broke internal checking of references. 2005-10-28 Richard Frith-Macdonald * Tools/gdomap.c: standardise on __MINGW32__ * Source/win32/NSUserDefaultsWin32.m: patch #4567 fix a few typos * Source/DocMakefile: get right path for autogsdoc on mingw * Tools/DocMakefile: ditto (patch #4568) * Tools/AGSHtml.m: work round isssues with windows help (patch #4569) Mostly fixes by Jeremy Bettis 2005-10-27 Richard Frith-Macdonald * Tools/AGSParser.m: Fix error setting version numbers for the various standards. Was causing generation of html erroneously saying that things were in neither openstep nor macos-x * configure.ac: Add code to initialise default path/config file information by loading GNUstep.conf config file from the location specified by config.make in the makefiles directory. Add --with-config-file= option to specify the name of the config file to be hard-coded into the library. Overrides the value from the make system if desired. Add --with-default-config= option to specify the config file from which default path values are loaded (at configuration time). This overrides the default behavior of loading values from the file specified by --with-config-file= or in $GNUSTEP_MAKEFILES/config.make Add --disable-importing-config-file for consistency with makefiles package ... not sure we need to keep this option. Add --disable-environment-config-file to prevent use of the GNUSTEP_CONFIG_FILE enviropnment variable. * configure: regenerate * Headers/Additions/GNUstepBase/config.h.in: regenerate to include new path definitions produced by configure script. * Source/GNUmakefile: Ignore variables specifying default paths, these are now set at configure time and can't be changed at make time. * SSL/GNUmakefile: ditto. * Source/NSPathUtilities.m: Remove windows-specific hack which got a few values from the registry ... we want to make use of the GNUstep.conf file simple/consistent across all platforms. Get default values from those defined in config.h 2005-10-26 Richard Frith-Macdonald * Source/NSPathUtilities.m: Drop 'make' style config file parsing and setting on 'sh' style (so we can source the config file). * Source/NSCalendarDate.m: Fix millisecond printing (bug #14863) 2005-10-25 Richard Frith-Macdonald * Source/NSPathUtilities.m: Try to ensure that user root and user library directories exist, so that tools/apps have somewhere to store any resources they don't want to put in the defaults database. 2005-10-23 Jeremy Bettis * Source/NSException.m: Added a few debugging checks in the exception handler code. The handler struct that needs to be removed is passed to _NSRemoveHandler. Therefore, instead of starting at thread->_exception_handler and working your way down through the frames, you can just use the passed in struct. This way, if some bonehead called return in an NS_DURING block, perhaps you can still remove the exception handler without accessing memory that is on a freed section of the stack. 2005-10-23 Richard Frith-Macdonald * Source/NSString.m: remove test method for path handling setup, add environment variable (at least for a while until we are even more sure that there are no problems with do-the-right-thing mode). Remove previously deprecated path methods. * Source/NSFileManager.m: remove previously deprecated path method. * Headers/Foundation/NSString.h: Add missing information about windows peculiarities to comments. * Source/NSUserDefaults.m: More tweaks to use windows registry. also remove test user default for path handling setup. * Source/win32/NSUserDefaultsWin32.m: Rewrite * Source/NSPathUtilities.m: Tweaks for windows. Updates to (optionally) use windows registry to store defaults when GNUSTEP_USER_DEFAULTS_DIR is set to ':REGISTRY:' Based on patch #4299 by Jeremy Bettis, but with rewrites to make use of the code configurable in the GNUstep configuration file, to fix some bugs, and to conform to coding standards, Probably still has bugs to fix, but seems usable now. 2005-10-20 Adam Fedor * Source/NSBundle.m (+pathsForResourcesOfType:inDirectory:, -pathsForResourcesOfType:inDirectory:forLocalization:): Implement. 2005-10-18 Richard Frith-Macdonald * Source/NSUserDefaults.m: Begin applying registry patch. * Source/win32/NSUserDefaultsWin32.m: Registry patch with some work done towards conforming to gnustep coding standards. 2005-10-17 Richard Frith-Macdonald * SSL/GSSSLHandle.m: Don't output log/warning on accept/connect failure if it's just a timeout or disconnect. 2005-10-17 Fred Kiefer * Source/NSNumberFormatter.m (-getObjectValue:forString:errorDescription:, stringForObjectValue:): Respect the settings for decimal and thousands separators. Still a very basic implementation. 2005-10-17 Richard Frith-Macdonald * Source/NSPathUtilities.m: Simplify by removing options for redefining user home directories. Add code to use gnumake format rather than shell format for config files. Fix error in default setup of local root. 2005-10-17 Richard Frith-Macdonald * Source/NSPathUtilities.m: Changes to support relocation of the entire system simply by copying the directory containing it around. 2005-10-16 Richard Frith-Macdonald * Source/NSPathUtilities.m: Set default value for defaults directory (lost in last set of changes). 2005-10-15 Richard Frith-Macdonald * Source/NSPathUtilities.m: Fix retain/release error exposed by recent changes. Rewrite config handling (work in progress ... keeping in sync with make package changes). * Documentation/base.gsdoc: update somewhat. * configure.ac: use GNUSTEP_CONFIG_FILE rather than GNUSTEP_CONFIGURATION_FILE ... for consistency with make. * Headers/Additions/GNUstepBase/config.h.in: ditto * configure: regenerate 2005-10-14 Richard Frith-Macdonald * Source/NSPathUtilities.m: Complete rewrite of config file parsing to try to make it consistent with the escaping and quoting conventions of shells, so the same file can be source'ed by /bin/sh 2005-10-13 Richard Frith-Macdonald * Source/NSPathUtilities.m: Remove some useless functions to clarify code. Add some explanatory comments, make config file parsing a lot more robust. 2005-10-12 Nicola Pero * configure.ac (config_file): Get the location of the configuration file from gnustep-make rather than from a --with-config-file option. Everything works exactly as before, but the --with-config-file option was moved to gnustep-make. * configure: Regenerated. 2005-10-12 Richard Frith-Macdonald * Headers/Foundation/NSPathUtilities.h: Remove deprecated functions. * Source/NSPathUtilities.m: Remove backward compatibility hacks for old GNUsteprc support. Remove deprecated functions. Permit specification of config file Simplify code a little. Fix a retain/release bug. Fix per-user .GNUsteprc parsing to work as documented (ie override the system-window config, not just fill in undefined values). Deprecate use of '~' in per-user .GNUsteprc ... it adds complexity for little utility that I can see ... we can undeprecate it if I'm wrong. * Documentation/Base.gsdoc: Update to remove references to old config scheme. Remove documentation for deprecated '~' in per-user file Clarify how relative/absolute paths in config are treated. 2005-10-10 Richard Frith-Macdonald * Source/NSURLHandle.m: alter file handle to nitice if a file has changed. 2005-10-09 Richard Frith-Macdonald * Headers/Additions/GNUstepBase/GSFileHandle.h: * Headers/Additions/GNUstepBase/GSRunLoopCtxt.h: * Headers/Foundation/NSPort.h: * Headers/Foundation/NSRunLoop.h: * Source/GSFileHandle.m: * Source/NSData.m: * Source/NSFileManager.m: * Source/NSLog.m: * Source/NSRunLoop.m: * Source/NSSocketPort.m: * Source/NSTimeZone.m: Be consistent in usage of __WIN32__ and __MINGW__ 2005-10-09 Richard Frith-Macdonald * Source/NSLog.m: We had complaints about the new code to log output to the windows event log on microsoft ... so this has been changed to be activated by the GSLogSyslog user default (as the windows event log is roughly analogous to syslog on unix) rather than being done by default. * Source/NSTimeZone.m: * Source/NSPathUtilities.m: Fix a few cases where 16bit chartacter strings were being used as 8bit under windows. 2005-10-07 Chris Vetter * Source/NSPropertyList.m: Remove bogus newline generated for BOOL. 2005-10-06 Adam Fedor * Source/NSPage.m: Add include for Cygwin (patch from Tom MacSween). 2005-10-04 Richard Frith-Macdonald * Source/GSTcpPort.m: * Source/NSCallBacks.m: * Source/NSMessagePort.m: * Source/NSMessagePortNameServer.m: * Source/NSSocketPort.m: * Source/win32/GSRunLoopCtxt.m: Attempt to deal with systems where sizeof(int) < sizeof(void*) 2005-10-01 David Ayers * Source/NSString: (dataUsingEncoding:allowLossyConversion:): Use buffer returned by NSZoneRealloc to create the data object. 2005-09-29 Richard Frith-Macdonald * Headers/Additions/GNUstepBase/unicode/gsm0338.h: Map unicode no-break-space character to gsm space rather than to gsm escape character. 2005-09-28 Richard Frith-Macdonald * Source/Additions/GSMime.m: (-convertToBinary, -convertToBase64) new convenience methods for making documents compact or 7bit safe. 2005-09-25 David Ayers * Testing/benchmark.m: Add some NSMapTable tests. 2005-09-23 Richard Frith-Macdonald * Source/Additions/GSMime.m: (-rawMimeData) tolerate nil content of document ... should produce output with empty body. 2005-09-18 Adam Fedor * Version 1.11.1 2005-09-17 Saso Kiselkov * Headers/Foundation/NSInvocation.h: * Source/NSInvocation.m: (-targetRetained, -retainArgumentsIncludingTarget:): Added new methods which allow target to be not retained when arguments are and to check whether it is retained or not (-retainsArguments code moved in -retainArgumentsIncludingTarged and simplified by removing a redundant nested branch statement). * Source/NSUndoManager.m (-forwardInvocation:, -registerUndoWithTarget:selector:object:): Fixed bug #14488 by relying on previous new methods to retain undo invocation (taking in account the fact arguments may have been released before it is called). Patch committed by Quentin Mathe. 2005-09-01 Adam Fedor * Source/NSSortDescriptor.m ([NSArray -sortedArrayUsingDescriptors:sortDescriptors]): Use makeImmutableCopyOnFail:. 2005-08-31 Adam Fedor * Source/GNUmakefile: Install NSSortDescriptor.h 2005-08-31 Richard Frith-Macdonald * Source/NSNumber.m: Improve poor hash function. * Source/NSConcreteNumber.m: Improve poor hash function. * Testing/benchmark.m: Add some NSNumber tests. 2005-08-30 Saso Kiselkov * Headers/Foundation/NSSortDescriptor.h, Source/NSSortDescriptor.m: New files * Headers/Foundation/Foundation.h, Source/GNUmakefile: Add them to list. 2005-08-25 Richard Frith-Macdonald * Source/NSCalendarDate.m: Fix bug subtracting minute interval. * SSL/GSSSLHandle.m: Put handle in non-blocking mode before call to SSL_accept() or SSL_connect() so that we can be interrupted if the remote end doesn't respond (older code can hang waiting for the remote end). 2005-08-22 Adam Fedor * Source/NSGeometry.m (NSStringFromPoint, NSStringFromRect, NSStringFromSize): Add spaces around '='. (Based on suggestion from Matthias Hengartner). 2005-08-12 Adam Fedor * configure.ac: Check if we can read the psinfo struct from /proc (Solaris). * config/procfs.m4: Add psinfo check * config/config.psinfo.c: New file. * Source/NSProcessInfo.m (+load): Read from psinfo if we can. (Based on patch #4234 from Jeremy Bettis, with some modifications). 2005-07-31 Richard Frith-Macdonald * Source/GNUmakefile: Pass GNUSTEP_FLATTENED as preprocessor definitions when building. * Source/NSPathUtilities.m: Use GNUSTEP_FLATTENED and other definitions to fix bug in returning paths for non-flattened systems (code was previously returneing flattened paths irrespective of whether the system was configured flattened or not). 2005-07-30 Jeremy Bettis * Source/NSData.m: Support write to file for windows9x users. 2005-07-27 Adam Fedor * Source/Makefile.postamble (Info-gnustep.plist): Depend on ../Version. 2005-07-24 Jeremy Bettis * Source/NSCalendarDate.m: Fix bug adding interval to date. * Source/NSDebug.m: Implemented _NSNewStringFromCString() for gdb. * Source/GSFormat.m: Fix %S format. * Source/NSObject.m: ([conformsToProtocol:]) return NO if passed nul. * Source/NSBundle.m: be more tolerant. * Source/objc-load.m: Implemented objc_get_symbol_path() for windows. * Source/NSLog.m: On mingw write to debugger and event viewer. 2005-07-24 Richard Frith-Macdonald * Source/NSPathUtilities.m: Fix to avoid duplicate paths. Fix bug in order of application paths. * Tools/gspath.m: new utility to display paths/directories * Tools/gspath.1: man page for gspath * Tools/GNUmakefile: build and install gspath 2005-07-23 Richard Frith-Macdonald * Source/Additions/GSXML.m: fix typo in contributed code for when the additions library is built standalone on MacOS-X * Source/GNUmakefile: Don't build base subprojects when only building additions library! * Headers/Foundation/NSRunLoop.h: Tidy up enumerated type, simplifying mingw ifdefs * Tools/AGSHtml.h: Added defines for building without the gnustep base library. * Tools/gdnc.m: Fix minor documentation error. * Tools/gdnc.1: Fix minor documentation error and add documentation of flags to set public/network servers running. 2005-07-22 Richard Frith-Macdonald * Source/NSDate.m: ([isEqual:]),([isEqualToDate:]) change behavior to match current MacOS-X rather than OpenStep spec, as the old version was confusing and prevented dates being used as dictionary keys or stored in sets properly. 2005-07-21 Adam Fedor * Version 1.11.0 2005-07-18 Richard Frith-Macdonald * Source/NSUnarchiver.m: * Source/NSPortCoder.m: Relax checking of decoded types information to allow int/long/longlong types to be decoded using 'i/l/q' interchangably and 'I/L'Q' interchangably because the compiler may use different encodings on different machines. 2005-07-15 Adam Fedor * ChangeLog, ChangeLog.1, ChangeLog.2, GNUmakefile, Makefile, Makefile.postamble, config.mak.in, configure.ac, Documentation/Base.gsdoc, Documentation/BaseAdditions.gsdoc, Documentation/Functions.gsdoc, Documentation/GNUmakefile, Documentation/Makefile.postamble, Documentation/ReleaseNotes.gsdoc, Documentation/TypesAndConstants.gsdoc, Documentation/announce.texi, Documentation/gnustep-base.texi, Documentation/install.texi, Documentation/news.texi, Documentation/readme.texi, Documentation/General/Debugging.gsdoc, Documentation/General/GNUmakefile, Documentation/General/OpenStepCompliance.gsdoc, Documentation/HtmlNav/docs-web.html, Documentation/HtmlNav/index.html, Documentation/manual/GNUmakefile, Documentation/manual/index.html, Examples/GNUmakefile, Examples/Makefile.postamble, Examples/Makefile.preamble, Examples/custom-zone.m, Examples/dictionary.m, Headers/Additions/GNUstepBase/unicode/*, Source/dld-load.h, Source/hpux-load.h, Source/null-load.h, Source/simple-load.h, Source/win32-load.h, Testing/*, Tools/BaseTools.gsdoc, Tools/DocMakefile, Tools/GNUmakefile, Tools/Makefile.postamble, Tools/Makefile.preamble, Tools/autogsdoc.1, Tools/cvtenc.1, Tools/defaults.1, Tools/gdnc.1, Tools/gdnc.h, Tools/gdomap.c, Tools/gdomap.gsdoc, Tools/gsdoc.gsdoc, Tools/pl.m, Tools/pldes.1, Tools/sfparse.1, Tools/xmlparse.1, Tools/make_strings/GNUmakefile, Tools/make_strings/GNUmakefile.preamble, Tools/make_strings/README, Tools/make_strings/Using.txt, config/*: Further copyright/license updates. 2005-07-15 Richard Frith-Macdonald * Source/NSProcessInfo.m: ([+initialize]) always check to see if things have already been initialised before doing the initialisation here. Based on suggestion by Lloyd Dupont. 2005-07-14 Richard Frith-Macdonald * SSL/GSSSLHandle.m: Retains self when running runloop to allow ssl connect and accept operations. If the connect/accept takes a long time, the caller might give up and release the handle, causing resources to be freed and the ssl operation to crash. Retaining self (and noticing when a disconnect has taken place) prevents that. * Source/Additions/GSXML.m: Fix bug escaping emtities in fault message. 2005-07-13 Nicola Pero * Source/NSBundle.m: When building paths inside framework directories on Mingw (win32), don't add /Versions/%@; the new pseudo-framework support for Mingw does not support framework versioning. 2005-07-12 Nicola Pero * Source/NSBundle.m ([+_addFrameworkFromClass:]), ([-executablePath]): Mangle/demangle framework names so that we can support '-' (and '+') in framework names. Requires latest gnustep-make if you have a framework with '_', '-' or '+' in the name. 2005-07-08 Adam Fedor * Testing/GNUmakefile, Testing/nsfilehandle.m: Minor fixes. 2005-07-08 Richard Frith-Macdonald * Source/objc-load.m: Under mingw print filenames for debug using %S rather than %s 2005-07-08 Richard Frith-Macdonald Recommit all gcc-4 changes ... I was unable to find a problem in them and have been running lots of stuff ok with them for several days now ... perhaps I made a mistake in thinking there was an issue. 2005-07-08 Richard Frith-Macdonald * Source/NSTask.m: Fix bug #13685 ... raise exception on an attempt to re-launch a task. 2005-07-04 Adam Fedor * Documentation/ReleaseNotes.gsdoc: Update. 2005-07-01 Adam Fedor * Documentation/Base.gsdoc, Documentation/BaseAdditions.gsdoc, Documentation/Functions.gsdoc, Documentation/ReleaseNotes.gsdoc, Documentation/TypesAndConstants.gsdoc, Documentation/General/Debugging.gsdoc, Documentation/manual/GNUmakefile, Source/NSMessagePortNameServer.m, Testing/NSData-test.m, Testing/awake.m, Testing/basic.m, Testing/coder.m, Testing/containers.m, Testing/fref.m, Testing/gstcpport-client.m, Testing/gstcpport-server.m, Testing/heap.m, Testing/nsarchiver.m, Testing/nsarray.m, Testing/nscharacterset.m, Testing/nsconnection.m, Testing/nsconnection_client.m, Testing/nsconnection_server.m, Testing/nsdata.m, Testing/nsdate.m, Testing/nsdictionary.m, Testing/nsfilehandle.m, Testing/nsfilemanager.m, Testing/nshashtable.m, Testing/nshost.m, Testing/nsindexset.m, Testing/nsinvocation.m, Testing/nsmaptable.m, Testing/nsnotification.m, Testing/nspathutilities.m, Testing/nsprocessinfo.m, Testing/nsscanner.m, Testing/nsset.m, Testing/nstask.m, Testing/nstimer.m, Testing/nstimezone.m, Testing/nsundomanager.m, Testing/nsxmlparser.m, Testing/nxst.m, Testing/oldserver.h, Testing/prepend.m, Testing/randoms.m, Testing/release.m, Testing/server.h, Testing/string.m, Testing/tcpport-client.m, Testing/tcpport-server.m, Testing/thread-except.m, Testing/thread.m, Testing/values.m, Testing/wgetopt.h, Tools/BaseTools.gsdoc, Tools/autogsdoc.1, Tools/cvtenc.1, Tools/defaults.1, Tools/gdnc.1, Tools/gdomap.8, Tools/gsdoc.7, Tools/locale_alias.m, Tools/pldes.1, Tools/plist-0_9.dtd, Tools/sfparse.1, Tools/xmlparse.1: Add/fix copyright/licenses. 2005-07-01 Richard Frith-Macdonald * Bad day ... accidentally updated makefiles to build KVO stuff in last change ... so I might as well commit the partial implementation of NSKeyValueObserving.[hm] 2005-07-01 Richard Frith-Macdonald * The last change passed regression tests etc, but one program I have has stopped working, so there is a bug somewhere. Reverted change until I can isolate the problem and fix it. 2005-07-01 Richard Frith-Macdonald * Headers/Foundation/NSUserDefaults.h: Fix bad return type * Source/GSArray.m: * Source/GSCountedSet.m: * Source/GSFileHandle.m: * Source/GSSet.m: * Source/GSString.m: * Source/GSeq.h: * Source/NSArchiver.m: * Source/NSArray.m: * Source/NSAttributedString.m: * Source/NSCalendarDate.m: * Source/NSCharacterSet.m: * Source/NSConnection.m: * Source/NSCountedSet.m: * Source/NSData.m: * Source/NSDictionary.m: * Source/NSDistributedNotificationCenter.m: * Source/NSFileManager.m: * Source/NSMessagePort.m: * Source/NSMessagePortNameServer.m: * Source/NSMethodSignature.m: * Source/NSNotification.m: * Source/NSObject.m: * Source/NSPipe.m: * Source/NSPortCoder.m: * Source/NSPropertyList.m: * Source/NSRange.m: * Source/NSScanner.m: * Source/NSSerializer.m: * Source/NSSet.m: * Source/NSSocketPort.m: * Source/NSSocketPortNameServer.m: * Source/NSString.m: * Source/NSThread.m: * Source/NSTimeZone.m: * Source/NSTimer.m: * Source/NSURLHandle.m: * Source/NSUnarchiver.m: * Source/NSUserDefaults.m: * Source/NSValue.m: * Source/mframe.m: * Source/Additions/GSCategories.m: * Source/Additions/GSMime.m: * Source/Additions/GSObjCRuntime.m: * Source/Additions/GSXML.m: * Source/Additions/Unicode.m: * Tools/AGSHtml.m: * Tools/AGSIndex.m: * Tools/AGSOutput.m: * Tools/gdomap.c: * Tools/gdomap.h: * Tools/make_strings/make_strings.m: Tweaks to avoid compiler warnings with gcc-4. Mostly signed pointer casts and bogus interface declarations to allow +class to be called on a class for which we don't have the real interface visible. 2005-07-01 Richard Frith-Macdonald * Source/NSException.m: ([-raise]) Fix behavior to be the same as in MacOS-X (ie call the default uncaught exception handler after whatever handler is set, in case the set handler does not terminate). Ensures that the -raise method cannot return. * Testing/basic.m: Add test for uncaught exception handler. 2005-06-30 Richard Frith-Macdonald * Source/NSSerializer.m: deserializeFromInfo() check that cross reference indices are valid and raise an exception if not ... should fix bug reported by Roland Schwingel, where trying to deserialize a corrupt file could cause a crash. 2005-06-28 Adam Fedor * Source/NSInvocation.m (-getReturnValue:, -setReturnValue:): Only muck with size of buffer if we're using (deprecated) mframe. 2005-06-27 Richard Frith-Macdonald * Source/NSKeyedArchiver.m: Fix typo ... superClass should be superclass 2005-06-25 Richard Frith-Macdonald * Source/GSHTTPURLHandle.m: Preserve case of http headers when writing remote request, so that they can be tailored for remote servers which are buggy in having case sensitivity. When creating default http headers, capitalize the words in the header name, as this is the most common way headers are presented and documented, and thus the least likely to tickle case sensitivity bugs at the remote end of a connection. 2005-06-23 Adam Fedor * Source/mframe.m (mframe_decode_return): Change return struct to fixed size to avoid gcc bug. 2005-06-23 Richard Frith-Macdonald * Headers/Foundation/NSObject.h: * Documentation/coding-standards.texi: Minor documentation fixes. 2005-06-22 Richard Frith-Macdonald * Source/NSKeyValueCoding.m: * Headers/Foundation/NSKeyValueCoding.h: Change NSUnknownKeyException to NSUndefinedKeyException for MacOSX compatibility. Fixes bug #13842 2005-06-21 Richard Frith-Macdonald * Source/NSBundle.m: ([-initWithPath:]) expand paths with tildes. 2005-06-17 Richard Frith-Macdonald * Source/NSConnection.m: Removed bogus NSConnection(ConnectionDelegate) category .. these methods must not be implemented in NSObject. I hope that removing the concrete implementation of the category from the Object class will not cause problems (I believe there used to be problems with older versions of the compiler if we tried to use @selector(NN) where NN was not implemented in the same code unit, but I can't remember what the problems were and when they occurred). * Headers/Foundation/NSConnection.h: Added comments/documentation from NSConnection.h 2005-06-17 Adam Fedor * Remove objc/Protocol.h include from NSObject to avoid warnings with conflicting method signatures. * Headers/Foundation/NSConnection.h: Change Object categories to NSObject. * Source/NSConnection.m: Idem. * Headers/Foundation/NSObject.h: Don't include objc/Protocol.h add a few missing things. * Source/NSDate.m ([NSDate -isEqual:]): Use isKindOfClass. * Source/NSDistantObject.m, Source/NSProtocolChecker.m: Include objc/Protocol.h * Source/NSSerializer.m: Add method sig for performv:: 2005-06-15 Richard Frith-Macdonald * Documentation/manual/WorkingWithObjects.texi: Correct errors in the summary of memory management conventions. * Documentation/manual/WritingNewClasses.texi: Correct examples of memory management in constructor methods. 2005-06-15 Richard Frith-Macdonald * Source/GSFileHandle.m: * Source/NSSocketPort.m: * Source/NSMessagePort.m: Enable KEEPALIVE on stream sockets, so we will notice if the remote end drops the connection. 2005-06-08 Richard Frith-Macdonald * Source/NSCalendardate.m: Fix crash when a nil string is passed to initWithString... methods. 2005-06-06 Adam Fedor * Source/Makefile.preamble: Add objc lib on all platforms Fixes bug #9920. 2005-06-05 Richard Frith-Macdonald * Headers/Foundation/NSObject.h: Add a versioning constant and document a bit better. * Tools/AGSParser.m: Support new version constant and fix version comparison for minor and subminor numbers. * Tools/AGSHtml.m: ditto * Headers/Foundation/NSArchiver.h: convert o new versioning as test. * Documentation/Base.gsdoc: Document version constants. 2005-06-04 Richard Frith-Macdonald * Headers/Foundation/NSObject.h: Add subminor number to versioning macros as apple sometimes add/remove things at subminor versions. Add some constants for versions. * Tools/AGSParser.m: Support subminor version info * Tools/AGSHtml.m: ditto 2005-06-04 Richard Frith-Macdonald * Headers/Foundation/NSFileManager.h: hide private method in enumerator, swap one ivar for a new one keeping size the same. * Headers/Foundation/NSString.h: Mark some deprecated methods. * Source/GSFileHandle.m: Merge in win32 simplifications * Source/NSBundle.m: ditto * Source/NSData.m: ditto * Source/NSFileManager.m: ditto * Source/NSPathUtilities.m: ditto * Source/NSProcessInfo.m: ditto * Source/NSString.m: ditto * Source/NSTask.m: ditto * Source/win32-load.h: ditto Merge in simplifications from the win32 path handling branch and all changes/fixes since. 2005-06-04 Richard Frith-Macdonald * Source/GSFileHandle.m: * Source/NSFileManager.m: Define _FILE_OFFSET_BITS to be 64 so that, on unix-like systems which support large file handling (>2GB) the large file handling routines are used. * Source/NSTask.m: Try to deal with pipes properly when launching under windows. * Source/GSString.m: Fix bug returning unicode string from cString. 2005-05-21 Adam Fedor * Update FSF Address. 2005-05-20 Matt Rice * Source/NSArray.m (NSArray -removeObject:): Fix macro conditional so we release the object. 2005-05-15 19:57 Gregory John Casamento * Source/NSPropertyList.m: Changes to include limits.h rather than explicitly define UINT_MAX. 2005-05-13 Richard Frith-Macdonald * Source/GSHTTPURLHandle.m: Minor improvement to detail of failure reason. 2005-05-11 Richard Frith-Macdonald * Source/GSFileHandle.m: Increase size of buffer for incoming data ... on modern systems we have more memory and a bugger buffer can make a significant performance improvement when reading large amounts of streamed data. New define of READ_SIZE for this buffer ... easily adjusted in one place. 2005-05-10 Sheldon Gill * Resources/GNUmakefile * Resources/Languages/Locale.aliases * Resources/Spanish * Resources/Spanish.lproj/Localizable.strings Spanish language localisation from diemyr@yahoo.es 2005-05-10 Richard Frith-Macdonald * Tools/AGSHtml.h: * Tools/AGSHtml.m: * Tools/AGSParser.m: * Tools/gsdoc-1_0_2.dtd: Support deprecation version as well as addition/removal. 2005-05-09 David Ayers * Source/NSPropertyList.m (OAppend): Revert patch from 2005-02-28. It seems to fix the issue in the wrong place. Further investigation is necessary. 2005-05-09 Richard Frith-Macdonald * Tools/AGSHtml.m: Output 'Releases' rather than 'Standards' as it seems a better term for API version information. * Tools/AGSParser.h: * Tools/AGSParser.m: Parse OS_API_VERSION() and GS_API_VERSION() to produce detailed version information. * Headers/Foundation/NSObject.h: defines of the two version macros for proof of concept. 2005-05-08 Richard Frith-Macdonald * Tools/AGSHtml.h: Support versioning info instead of standards * Tools/AGSHtml.m: ditto * Tools/AGSOutput.m: ditto * Tools/AGSParser.m: ditto * Tools/GNUmakefile: Add new dtd and remove old tool. * Tools/autogsdoc.m: ditto * Tools/gsdoc-1_0_2.dtd: ditto * Tools/gsdoc.m: Remove obsolete tool. * Tools/gsdoc.gsdoc: Updated Changes to support OpenStep/OPENSTEP/MacOS-X versioning and GNUstep versioning, using add/rem attributes to specify the version at which a feature was added to or removed from the API. Drop the old 'standards' mechanism which was too rigid for detailed versioning. 2005-05-08 14:11 Gregory John Casamento * Source/NSPropertyList.m: Corrected setup so that compilation works on Solaris 9. 2005-05-08 Richard Frith-Macdonald * Source/NSString.m: nul terminate properly when a returned 'C string' is actually unicode. * Source/GSString.m: ditto. 2005-05-08 Fred Kiefer * Source/NSPropertyList.m: Added class BinaryPLGenerator to export property lists in Apple binary format. (+ dataFromPropertyList:format:errorDescription:) Use this new class. (+ propertyList:isValidForFormat:) Report NSPropertyListBinaryFormat_v1_0 as a supported format. (GSBinaryPLParser -initWithData:mutability:) Read table start correctly. (GSBinaryPLParser -objectAtIndex:) Better support for numbers. 2005-05-07 Richard Frith-Macdonald * Source/Additions/GSMime.m: Improve handling of text/xml without a charset. Add new method to determine the correct charset in the case where it has to be inferred from the actual data. Follow the instructions in http://www.w3.org/TR/REC-xml/ but be a bit more tolerant. (ebcdic not supported). * Headers/Foundation/GSString.m: Add a few new methods from macosx. * Source/NSString.m: ditto. * Source/GSString.m: ditto. 2005-05-04 Richard Frith-Macdonald * Source/Additions/GSMime.m: If given content of type text/xml without a charset, try to get the charset from the encoding="..." part of the header. 2005-04-29 Richard Frith-Macdonald * Source/GSHTTPURLHandle.m: Remove self as an observer of our file handle on deallocation ... prevent notfications being sent to deallocated object. 2005-04-28 Richard Frith-Macdonald * Documentation/coding-standards.texi: Added what appear to be the generally accepted parts of Sheldon's suggested coding standards additions. * Source/GSHTTPURLHandle.m: Modified to keep watching idle connections and handle things properly when the remote end drops the connection. Should fix occasional trouble when connectioin keepalive is used but the remote host drops the connection between requests. 2005-04-26 Richard Frith-Macdonald * Source/GSHTTPURLHandle.m: remove wProperties and wData from handle in sync. 2005-04-25 Richard Frith-Macdonald * Tools/defaults.m: Fix bug writing defaults whose values should be quoted strings. 2005-04-23 Richard Frith-Macdonald * Source/NSData.m: Fix bug in memory management when serializing an object over 65K in length. 2005-04-20 Richard Frith-Macdonald * Source/NSConnection.m: * Source/NSDistributedNotificationCenter.m: * Tools/gdnc.m: mingw tweaks 2005-04-19 Adam Fedor * Tools/gdomap.c (init_iface): Round size to make sure we don't violate pointer alignment boundaries. 2005-04-14 Richard Frith-Macdonald * Source/Additions/GSMime.m: Add tweak to cope with buggy mailers which insert space after the boundary in a multipart document. 2005-04-13 Adam Fedor * ANNOUNCE, NEWS, Documentation/news.texi, Documentation/ReleaseNotes.gsdoc: Merge in release info from 1.10.3 release branch. 2005-04-12 Richard Frith-Macdonald * Headers/Foundation/NSDistributedNotificationCenter.h: Added GSPublicNotificationCenterType and changed documentation for NSLocalNotificationCenterType to say it's private to the current user. * Source/NSDistributedNotificationCenter.m: Changed so that NSLocalNotificationCenterType is MacOS-X compatible and the new GSPublicNotificationCenterType works like our old implementation. * Source/NSPortNameServer.m: Add detailed message about forthcoming change to make the default port name server deal with message ports rather than socket ports ... for MacOS-X compatibility and security. * Source/externs.m: Added GSPublicNotificationCenterType * Tools/gdnc.m: Changes for new NSDistributedNotificationCenter behavior. Overview ... updated distributed notifications to be private to the owner of the processes by default. Added one-time warning message for developers that NSConnection will be changing the same way. These changes discussed a year or two ago (mostly with Alexander), but nobody ever actually implemented them. * Source/NSPathUtilities.m: Make temporary directory name based on uid so that it is consistent on a unix system where there are multiple named accounts with the same user id (essentially all aliases for a single account). 2005-04-05 Adam Fedor * gnustep-base.spec.in: Update make dependancy 2005-04-05 Richard Frith-Macdonald * Source/NSString.m: ([sttringByAppendingPathComponent:]) Fix bug eliding multiple slashes in path. 2005-04-02 Richard Frith-Macdonald * Source/NSTask.m: Fix missing nul terminator to arguments under win32 2005-04-01 Richard Frith-Macdonald * Source/NSBundle.m: Minor debug/warning log tweaks. * Headers/Foundation/NSBundle.h: Document differences between GNUstep and MacOS-X when initialising using a relative path. * Headers/NSString.h: Fix typo in comment. 2005-03-31 Adam Fedor * ANNOUNCE, NEWS, Documentation/news.texi, Documentation/ReleaseNotes.gsdoc: Merge in release info from 1.10.2 release branch. 2005-03-31 Adam Fedor * Source/NSBundle.m (_find_framework): New function. ([NSBundle +_addFrameworkFromClass:]): Use it. Based on patch from Sheldon Gill. 2005-03-31 Richard Frith-Macdonald * Source/NSString.m: (isAbsolutePath) always treat a path beginning with '/' as absolute except when in windows mode or on windows and not in unix mode. Treat all UNC paths as absolute ... a change made after a lot of trawling the web and looking at examples of UNC path usage. 2005-03-23 Richard Frith-Macdonald * config/pathxml.m4: Fix to get --with-xml-prefix= to work for xml2-config * configure: regenerated 2005-03-22 Richard Frith-Macdonald * Source/Additions/GSMime.m: Fix some charset-encoding mappings. Add utf-7 and utf-16. Add all aliases for ascii and latin1 Document mapping methods better. 2005-03-21 Richard Frith-Macdonald * Headers/Foundation/NSFileManager.h: Add path handling documentation. * Headers/Foundation/NSString.h: Add path handling methods documentation and new method to set global path handling mode. * Source/NSUserDefaults.m: Update path handling mode when defaults are read in. * Source/NSString.m: Implement selectable path handling mode ... gnustep/unix/windows. In the default gnustep mode we try to handle paths in any format and just do the right thing. Also updated handling of path extensions to match MacOSX behavior. * Source/Additions/GSMime.m: Remove deprecated method. Optimise a little by avoiding class lookups. 2005-03-18 Richard Frith-Macdonald * Source/NSPathUtilities.m: Use fprintf rather than NSLog to try to avoid possible recursion when errors occur. 2005-03-17 Richard Frith-Macdonald * Source/NSPathUtilities.m: Tidy variable and function names to fit GNUstep conventions. Simplify code a little. Don't attempt to parse per-user config file if its name is nil or empty string. Support parsing old config options for backward compatibility. 2005-03-15 Richard Frith-Macdonald * Source/Additions/GSMime.m: Ensure last line of base64 encoded data is terminated with crlf for clients which have buggy base64 decodedrs. 2005-03-15 Richard Frith-Macdonald * Source/Additions/GSMime.m: Mark ([setDefaultEncoding:]) as deprecated rather than just removing it ... in case someone has started using it. * Source/NSPathUtilities.m: Tidied a little ... moved a function. * Headers/Additions/GNUstepBase/GSFunctions.h: New header for functions * Headers/Foundation/NSPathUtilities.h: Moved function * Source/DocMakefile: Include GSFunctions.h * Source/GNUmakefile: ditto * Source/Additions/GNUmakefile: Build GSFunctions.m * Source/Additions/GSFunctions.m: New file for extra functions. * Source/NSString.m: ([stringByExpandingTildeInPath]) Improve handling of paths containing mingw drives. * Source/NSDate.m: Use same values for distant past/future as MacOSX * Source/NSCalendarDate.m: Support output of extreme year values. 2005-03-14 Adam Fedor * Continuation of NSPathUtilities patches * configure.ac: Add config-file option * Headers/Foundation/NSPathUtilities.h: Add GSFindNamedFile, more NSSearchPathDirectory enums. * Source/GNUmakefile: Don't install Win32 headers. * Source/NSPathUtilities.m (InitializePathUtilities, ...): Add support for reading standard path locations from a configuration file. Various support functions added/removed to fit. (GSFindNamedFile): New function. (GSSetUserName): Do nothing if the user is the same. (NSHomeDirectoryForUser): Use Windows utilities to get user name (on Windows, of course). (NSFullUserName): Default to NSUserName on Windows. (GSSystemRootDirectory): Mark as deprecated. (GSDefaultsRootForUser): Correctly return the actual defaults directory, not the user directory. (GSStandardPathPrefixes): Mark as deprecated. (NSSearchPathForDirectoriesInDomains): Add platform paths and additional search directories. * Source/NSUserDefaults (pathForUser): Correct use of GSDefaultsRootForUser. Remove obsolete path checking and defaults location checking. (Patches from Sheldon Gill with some modifications). * Documentation/Base.gsdoc: Update documentation. * Headers/Additions/GNUstepBase/Win32_Utilities.h, Source/win32/Win32_Utilities.m: Fix function arguments. 2005-03-12 Sungjin Chun * Source/Additions/GSXML.m: Port to MacOS-X 2005-03-11 Richard Frith-Macdonald * Source/NSPropertyList.m: Handle null object passed to OAppend() * Source/Additions/GSMime.m: Optimise setDefaultCharset: a little Add error checking to setDefaultEncoding: to make sure it sets a valid characterset encoding. Should almost certainly remove this method though ... as it duplicates setDefaultCharset: functionality in a somewhat less useful form. 2005-03-11 David Wetzel * Source/Additions/GSMime.m: * Headers/Additions/GNUstepBase/GSMime.h Added setDefaultEncoding: This is needed in GSWeb if you use utf-8 and faster than using a String as encoding name. 2005-03-09 Richard Frith-Macdonald * Source/NSCharacterSet.m: Fix bug in forming union ... was using wrong length. 2005-03-08 Richard Frith-Macdonald * Source/NSCharacterSetData.h: Add data outside unicode base plane. * Source/NSCharacterSet.m: Change to support all unicode characters rather than just UTF16. The current implementation is still based on (often much larger than before) bitmaps. It may be that the size of the bitmap data is too large for real world use, and we may have to introduce a different storage mechanism. The current mechanism is good for cases where the number of characters in the set is large and those characters are scattered, or where characters are only present in the base plane. Another implementation might be better for cases where characters are clustered into contiguous groups and the groups are scattered through the full range. 2005-03-07 Richard Frith-Macdonald * Headers/Additions/GNUstepBase/GSConfig.h.in: Extra types * configure.ac: Added types for GSConfig.h.in * configure: regenerated * Headers/Foundation/NSCharacterSet.h: New MacOS-X methods * Headers/Foundation/NSIndexSet.h: Remove bogus comment. * Source/GNUmakefile: Don't build NSBitmapCharSet.m * Source/NSBitmapCharSet.h: Removed ... merege into NSCharacterSet.m * Source/NSBitmapCharSet.m: ditto * Source/NSCharacterSet.m: Optimise a few methods. Add new MacOS-X methods (naive implementations) Merge in NSBitmapCharSet as private class 2005-03-06 Matt Rice * Headers/Foundation/NSRunLoop.h: Reorder RunLoopEventType for binary compatibility. 2005-03-06 Richard Frith-Macdonald * Headers/Foundation/NSCharacterSet.h: Add documentation and method ([-capitalizedLetterCharacterSet]) Change name of symbol set to match MacOS-X * Source/NSCharacterSet.m: Add new method and move documentation to header. Include local NSCharacterSetData.h for bitmap data. * Source/NSCharacterSetData.h: New file containing the bitmap data for the standard charactersets. Generated by dev-apps/charsets tools using the latest unicode characterset data today. * Source/NSCharacterSets/README.CharSet: mark as obsolete. * Source/GNUmakefile: No longer build/install NSCharacterSets The standard bitmap data for charactersets is now built in to NSCharacterSet. * Headers/Foundation/NSBitmapChar.h: Moved nonstandard header to private source directory. * Source/NSAutoreleasePool.m: Rewrite deallocation to cause the pool to remain as the current pool during the deallocation process ... Requires deallocation to be done in a loop to avoid possible leaks etc if an object which is being deallocated decides to autorelease something. Also removed a few private methods for simplification. 2005-03-04 Richard Frith-Macdonald * Source/Additions/GSXML.m: GSXMLRPC integrated. * Headers/Additions/GSUstepBase/GSXML.h: GSXMLRPC integrated. 2005-03-03 Adam Fedor * Source/NSFileManager.m (-createFileAtPath:...): Define var at beginning to work on gcc 2.x compilers. 2005-03-03 Adam Fedor * Start on integrating Sheldon Gills NSPathUtilities patches. * Headers/Foundation/NSPathUtilities.h: Depreciate GSSystemRootDirectory, GSStandardPathPrefixes. Add GSPreferencesDirectory to NSSearchPathDirectory enum. Enumerate NSSearchPathDomainMask values. * Headers/Additions/GNUStepBase/Win32Support.h, Headers/Additions/GNUStepBase/Win32_Utilites.h: New files. * Source/GNUmakefile: Add NSPathUtilities.m * Source/NSUser.m: Move everything in here... * Source/NSPathUtilities.m: to here. * Source/win32/GNUmakefile: Add Win32Support.m, Win32_Utilities.m * Source/win32Win32Support.m, Win32_Utilities.m: New files * Testing/nspathutilites.m: New file. (Files and patches from Sheldon Gill with minor modifications). 2005-03-02 Richard Frith-Macdonald * Headers/Foundation/NSKeyValueCoding.h: * Source/NSArray.m: * Source/NSKeyValueCoding.m: * Source/Additions/GSObjCRuntime.m: On the way back from FOSDEM I updated tje key-value-coding stuff to match the lastest version from Apple/MacOS-X panther. I don't use KVC in my code, and have not testcases for it, so would appreciate it if anyone who does could try this out and get bug reports back to me ASAP. 2005-03-01 Adam Fedor * Source/NSBundle.m (+gnustepBundle, +pathForGNUstepResource:ofType:inDirectory:]): Add deprecated log message. * Source/NSNotificationQueue.m, Source/null-load.h: Fix copyright message. 2005-03-01 02:50 Nicola Pero * Source/Makefile.preamble (ADDITIONAL_LIB_DIRS): When building a shared library, depend on all TARGET_SYSTEM_LIBS, not just CONFIG_SYSTEM_LIBS. * Headers/Additions/GNUstepBase/GSObjCRuntime.h: Do not use __declspec(dllexport) on mingw. Use extern instead. 2005-02-28 17:45 Richard Frith-Macdonald * NSCharacterSets/GNUmakefile: Use GNUSTEP_OBJ_DIR_NAME to run data conversion tool, since Tom Koelman points out that the 'obj' subdirectory does not work on windoze due to lack of symlinks. 2005-02-28 17:10 Richard Frith-Macdonald * Source/NSAutoreleasePool.m: * Source/NSCharacterSet.m: * Source/NSproxy.m: Damn ... when I ran the testsuite for the stuff I did at fosdem, it all worked ... but now I find that it was linking to an older version of the base library and actually the changes were broken. The new modifications should (hopefully) fix all breakage. The changes exposed rare bugs in the existing code ... NSCharacterSet was returning immutable copies of the standard character sets when it should return mutable ones, it was also being a bit bad about allocating new instances. NSProxy was failing to implement instanceMethodForSelector:, and NSAutoreleasePool had a bug which could mess up a bit if the objects being deallocated by it autoreleased anything. 2005-02-28 David Ayers * Source/NSPropertyList.m (OAppend): Attempt to transform description of non-proporty-list objects into property list before recursing for OPENSTEP compatibility. 2005-02-27 13:20 Richard Frith-Macdonald * Source/NSConnection.m: Set default timeouts to maximum timeouts for MacOS-X compatibility. 2005-02-27 08:45 Richard Frith-Macdonald * NSCharacterSets/dataToheader.c: new file to convert data files to constant values in a new header (NSCharacterSetData.h). * NSCharacterSets/GNUmakefile: build header from data files, and don't create resource set, since we no longer use the files at runtime. * Source/NSCharacterSet.m: include NSCharacterSetData.h and use it to create the standard charactersets rather than reading from data files. This has two advantages - It avoids the need to install characterset data files with the library, and it means that we have characterset data available immediately (before we need to access the filesystem) so we can use charactersets and NSString methods which depend upon them earlier on in the system initialisation. 2005-02-27 00:50 Richard Frith-Macdonald * Source/NSAutoreleasePool.m: ([-dealloc]) cache method implementations for release calls on the assumption that many of the objects in the pool will be of the same class. Optimisation suggested by Georg Wallmann 2005-02-23 Adam Fedor * configure.ac: Add test to check for poll emulation * Source/NSRunLoop.h: Don't use poll if we're just emulating. * Source/unix/GSRunLoopCtxt.m: Idem. 2005-02-23 14:00 Richard Frith-Macdonald * Headers/Additions/GNUstepBase/GSFileHandle.h: Add windows event * Headers/Foundation/NSPort.h: * Headers/Foundation/NSRunLoop.h: * Source/GNUmakefile: * Source/GSFileHandle.m: * Source/GSLocale.m: * Source/NSMessagePort.m: * Source/NSPipe.m: * Source/NSRunLoop.m: * Source/NSSocketPort.m: * Source/NSThread.m: * Source/NSUser.m: * Source/unix/GNUmakefile: * Source/unix/GSRunLoopCtxt.m: * Source/unix/GSRunLoopWatcher.m: * Source/unix/Makefile.preamble: * Source/win32/GNUmakefile: * Source/win32/GSRunLoopCtxt.m: * Source/win32/GSRunLoopWatcher.m: * Source/win32/Makefile.preamble: * Source/win32/NSRunLoopWin32.m: Applied patch by Luis Cabellos to use native win32 event handling rather than unix style select/poll on a win32 system. Rewrote various chunks to simplify, conform to coding standards, work for me etc. In particular, replaced code for thread synchronisation to use win32 Event rather than pipe. 2005-02-22 Adam Fedor * Branched freeze-1_10_2 for Version: 1.10.2 2005-02-22 14:00 Richard Frith-Macdonald * Documentation/Base.gsdoc: * Source/GSPrivate.h: * Source/NSDebug.m: * Source/NSLog.m: * Source/NSUserDefaults.m: Add GSLogThread to include thread id in NSLog() and debug output. * Source/NSMessagePort.m: * Source/NSSocketPort.m: Remove thread reporting in some debug statements as it can be done universally using GSLogThread. 2005-02-22 11:12 Richard Frith-Macdonald * Source/GSFFCallInvocation.m: * Source/GSFormat.m: * Source/GSString.m: * Source/GSTemplateValue.m: * Source/NSAutoreleasePool.m: * Source/NSData.m: * Source/NSDebug.m: * Source/NSDecimal.m: * Source/NSInvocation.m: * Source/NSMethodSignature.m: * Source/NSScanner.m: * Source/NSThread.m: * Source/NSTimeZone.m: * Source/NSUserDefaults.m: * Source/libgnustep-base-entry.m: * Source/thr-mach.m: * Source/thr-pthread.m: * Source/Additions/GSCategories.m: * Source/Additions/GSObjCRuntime.m: * Source/Additions/Unicode.m: * Source/Additions/behavior.m: Tidy up use of white space a little. 2005-02-21 20:30 Richard Frith-Macdonald * Source/GSFormat.m: Modified code to rewrite output to use correct decimal separator for locale (hopefully). Also made a small performance improvement in processing digits for output. 2005-02-21 14:30 Richard Frith-Macdonald * Source/GSFormat.m: * Source/NSConnection.m: * Source/callframe.m: * Source/cifframe.m: Include malloc.h for systems where it is needed for alloca() * Tools/gdomap.c: Avoid some warnings on mingw32 2005-02-21 14:10 Stefan Urbanek * Source/NSAttributedString.m: Fix loop decoding from archive. 2005-02-18 06:20 Richard Frith-Macdonald * Source/NSString.m: Tidy up some of last patch for unicode filesystem support. * Source/NSFileManager.m: Complete rewrite of unicode filesystem support to make code more readable and to allow it to easily be turned off by commenting out the 'UNICODE' and '_UNICODE' definitions at the start of the file. There is a bug in the mingw runtime which is (currently) still distributed in the 'current' complete mingw distribution ... which breaks unicode filesystem support very badly. So ... you can now either revert to 8bit charset filesystem support, or download a more recent version of the mingw runtime from the mingw site. * Source/NSTask.m: Fix setting environment for mingw ... use own method to get environment rather than examining instance variable, as the variable may not be set. Sort variables because windows needs them in alphabetical order. Fix conversion to unicode. 2005-02-16 14:40 Richard Frith-Macdonald * config/patchxml.m4: Try to detect libxml2 in standard directories exen if xml2-config is not present. * configure.ac: Detect libxml2 becore iconv, in case libxml2 requires iconv (which it usually will on a system where iconv is not built into the standard c library). * confingure: Regenerate * Source/Additions/GSXML.m: Set memory allocation functions to be used by libxml2, so we can use objc_free() to release strings returned by the library, and avoid linker problem with xmlFree() on mingw. 2005-02-15 08:00 Richard Frith-Macdonald * Source/NSTask.m: Fix incorrect version comitted. 2005-02-14 08:00 Richard Frith-Macdonald * Source/NSTask.m: Pass environment settings for mingw based on anonymous bug submission (bug #11360) * Source/NSUser.m: Fix bug #11378 * Tools/gdomap.c: Quote mingw arguments toi fix bug #11854 * Documentation/manual/Introduction.texi: Apply patch by pupeno (bug #11814) 2005-02-10 01:05 Alexander Malmberg * Tools/gdnc.m (main): Remove the program name from the arguments given to the new task. 2005-02-08 11:20 Richard Frith-Macdonald * Source/NSString.m: (unicodeString) rewrite to conform to coding standards and to be more efficient. 2005-02-08 10:10 Richard Frith-Macdonald * Tools/gdnc.m: Rewrite startup code to create a daemon using NSTask rather than calling fork()/spawn() etc. Make arguments more consistent with gpbs * Source/NSTask.m: Minor code layout/indentation tweaks. 2005-02-02 09:40 Richard Frith-Macdonald * Source/NSFileManager.m: Restructure last patch to conform to gnustep coding standards. (localFromOpenStepPath:) for unix paths, expand '~' abbreviations. 2005-01-31 Adam Fedor * Documentation/coding-standards.texi: Add section of documentation. 2005-01-29 03:46 Matt Rice * Source/NSUndoManager.m (-registerUndoWithTarget:selector:object:): Have the invocation to retain it's arguments. (Fixes bug #4692.) 2005-01-21 22:08 Gregory John Casamento * Source/NSUndoManager.m: [NSUndoManager redo] and [NSUndoManager undoNestedGroup] moved the call to actionName to a later point in both methods to get the name from the "groupToRedo" or the "groupToUndo" respectively. This corrects the issue with the wrong name sometimes appearing in the redo/undo menu items. 2005-01-16 07:59 Gregory John Casamento * Source/NSUndoManager.m: Added code to properly set the name of the action when undo/redo is called. 2005-01-16 06:37 Gregory John Casamento * Source/NSUndoManager.m: Check if the group is nil in endUndoGrouping before checking the count. 2005-01-15 06:17 Gregory John Casamento * Source/NSUndoManager.m: Undid previous change here. 2005-01-15 06:13 Gregory John Casamento * Source/NSUndoManager.m: Localized undo/redo menu title. 2005-01-14 06:50 Gregory John Casamento * Source/NSUndoManager.m: Correction for redo. 2005-01-14 05:43 Gregory John Casamento * Source/NSUndoManager.m: Fix forward invocation to not add a group when it doesn't contain any actions. 2005-01-08 Adam Fedor * Source/NSCalendarDate.m: fix time zone for %z format with only 2 digits in -initWithString:calendarFormat:locale: 2005-01-07 Adam Fedor * Source/NSTimeZone.m (+abbreviationDictionary): Retain dictionary (Fixes bug #11516). Copyright @copyright{} 2005 Free Software Foundation Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved.