New release

This commit is contained in:
rfm 2025-02-10 17:00:46 +00:00
parent 3259018843
commit b641bf1e99
5 changed files with 824 additions and 705 deletions

View file

@ -1,7 +1,7 @@
1 Announcement
**************
The GNUstep Base Library, version 1.30.0, is now available.
The GNUstep Base Library, version 1.31.0, is now available.
1.1 What is the GNUstep Base Library?
=====================================
@ -16,80 +16,22 @@ remote object messaging support (distributed objects), and event loops.
portion of the OpenStep standard (the Foundation library).
There is more information available at the GNUstep homepage at
'http://www.gnustep.org'.
http://www.gnustep.org.
1.2 Noteworthy changes in version '1.30.0'
1.2 Noteworthy changes in version 1.30.0
==========================================
* Library version changed from 1.29 to 1.30
* autogsdoc (and many source/header files) updated for ObjC-2 support
* gdnc gspath spelling error fixes
* GSFileHandle remove handle from run loop when -dealloc is called
* GSHTTPURLHandle close socket if we end loading with I/O in
progress.
* GSMimeDocimnet optimisations
* GSPrivateSymbolPath() portability improvements
* GSVersionMacros add GS_UNIMPLEMENTED to mark unimplemented methods
* HTMLLinker man page groff warning fixed
* Make GSTcpTune options available to streams as well as file handles
and improve debug logging for stream operations.
* NSBundle improvements in librarym bundle lookup
* NSCache thread safety fix
* NSData caching data of file URLs and OSX consistency tweak to
permissions when writing file atomically
* NSDate implements +now constructor.
* NSDecimalNumber fix possible coimparison bug for zero values
* NSError -description and -localizedDescription formats match OSX
* NSException portability improvments
* NSFileManager makeed safety fix and make enumerating a file URL
return URLs rather than paths.
* NSIndexSet implements enumerateRangesInRange convenience methods.
* NSISO8601DateFormatter.m: bugfix for date/time string generation
* NSJSONSerialization fix memory leak, fix issue with unicode
surrogate pairs.
* NSKeyValueObserving Add methods to remove observers
* NSLocale Fix -countryCode incorrectly returning language code, fix
for hyphen and underscore in locale identifier
* NSMessagePort remove restriction on Distributed Objects message
length
* NSNotificationCenter fix for memory leak, minor bugfixes (use
before initialise)
* NSNull fix for -valueForUndefinedKey: to return singleton
* NSNumberFormatter make minimum/maximum properties NSNumbers
* NSObject optimise allocation with new runtime library
* NSOperation fix occasional scheduling bug
* NSOrderedSet Fix keyed encoding to match Apple platforms.
* NSPathUtilities fix intialisation order deadlock.
* NSPredicate fix for array access keywords
* NSProcessInfo android support
* NSString correct class used when loading empty string from
file/URL, implements regular expression search methods.
* NSTask return an error if the path to launch in is bad, use _exit
to terminate forked process if needed, use closefrom() to close
descriptors in child process if possible
* NSTimer wrap call to block in exception handler (bug #289)
* NSTimeZone improvements
* NSURL Fix NSURL path on Windows for UNC paths.
* NSURLRequest: Support deleting using setValue:forHTTPHeaderField:
with nil value.
* NSURLSession many bugfixes and improvements
* NSUserDefaults fix potential deadlock
* NSXMLElement bugfix to remove previous attributes when setting
attributes.
* NSXMLNode returns NSError on failure to evaluate xpath expression.
1.3 Where can you get it? How can you compile it?
=================================================
The gnustep-base-1.30.0.tar.gz distribution file has been placed at
The gnustep-base-1.31.0.tar.gz distribution file has been placed at
<ftp://ftp.gnustep.org/pub/gnustep/core>.
It is accompanied by gnustep-base-1.30.0.tar.gz.sig, a PGP signature
It is accompanied by gnustep-base-1.31.0.tar.gz.sig, a PGP signature
which you can validate by putting both files in the same directory and
using:
gpg --verify gnustep-base-1.30.0.tar.gz.sig
gpg --verify gnustep-base-1.31.0.tar.gz.sig
Signature has been created using the key with the following
fingerprint:

View file

@ -1,3 +1,12 @@
2025-01-10 Richard Frith-Macdonald <rfm@gnu.org>
* ChangeLog: Update for new release
* ANNOUNCE:
* NEWS:
* Documentation/ReleaseNotes.gsdoc:
* Documentation/news.texi:
Update release notes for 1.31.0 release.
2025-01-04 Richard Frith-Macdonald <rfm@gnu.org>
* Headers/Foundation/NSRegularExpression.h:

View file

@ -27,6 +27,69 @@ notice and this notice are preserved.
migrate to using a newer version of the library.
</p>
<section>
<heading>Version 1.30.0</heading>
<p>
</p>
<p>Implementation of weak references for the GNU runtime, so that
weak references are now supported/available in portable code, and
in conjunction with NSPointerFunction fixes we now support weak
references in NSMapTable, NSHashTable, and NSPointerArray as well
as supporting automatic deregestration of deallocated observers
in NSNotificationCenter.
</p>
<p>Autogsdoc updated to support modern CSS based HTML and provide
simple diagrams of inheritence in the reference documentation.
</p>
<p>New experimental implementation of NSURLSession ... we still
need work to replace non-portable (blocks dependent) code before
it can be a supported class.
</p>
<p>New KeyValueObserving code for Clang and GNUstep runtime.
</p>
<p>Other new methods/features<br />
BSByteOrder fixes for NSSwappedFloat and NSSwappedDouble<br />
[NSDate] small object optimisation when using Clang<br />
-[NSFileManager URLsForDirectory:inDomains:]<br />
NSGeometry missing functions implemented<br />
[NSInvocation] missing typedefs implemented<br />
[NSOperation] threads are now named for easy identification<br />
[NSPredicate] BETWEEN operator for more types<br />
-[NSString enumerateLinesUsingBlock:]<br />
[NSThread] priority support now working on Android<br />
[NSString] NSRegularExpressionSearch option<br />
[NSString] ICU collator cached for improved performance<br />
-[NSURLRequest assumesHTTP3Capable]<br />
-[NSURLRequest setAssumesHTTP3Capable:]<br />
[NSUserDefaults] use bundle identifier rather than program name<br />
[NSValue] edge insets added<br />
-[NSZombie logZombie:]<br />
</p>
<p>Support for being built with the '-asan yes' command line option
or the GNUSTEP_WITH_ASAN=1 environment variable setting. The library
is also aware when it was not built with that option but is linked to
an executable which was (and a few features which confuse the leak
checker are turned off). In addition NSObject+GNUstepBase.h declares
new methods for tracking the ownership of objects of a particular
class (or individual instances) to help in identifying the cause of
any leak found by the leak sanitizer.
</p>
<p>Many minor bugfixes and very, very many minor memory leaks fixed
in both the library and the automated testcases.
</p>
<p>Removed deprecated locking code and changed many classes to use
lightweight and more fine-grained locking for simple cases protecting
short regions. We retain a global lock for more complex situations
where there is a significant chance of deadlock.
</p>
<p>Several symbols (variables and functions) which were accidentally
public have been made static or internal to the library.
</p>
<p>Updated to work with recent versions of autoconf.
</p>
</section>
<section>
<heading>Version 1.30.0</heading>
<p>

View file

@ -11,9 +11,60 @@ The currently released version of the library is
See the @url{ReleaseNotes.html} document for more information.
@end ifclear
@section Noteworthy changes in version @samp{1.30.0}
@section Noteworthy changes in version @samp{1.31.0}
@itemize @bullet
@item Library version changed from 1.30 to 1.31
@item Implementation of weak references for the GNU runtime, so that
weak references are now supported/available in portable code, and
in conjunction with NSPointerFunction fixes we now support weak
references in NSMapTable, NSHashTable, and NSPointerArray as well
as supporting automatic deregestration of deallocated observers
in NSNotificationCenter.
@item Autogsdoc updated to support modern CSS based HTML and provide
simple diagrams of inheritence in the reference documentation.
@item New experimental implementation of NSURLSession ... we still
need work to replace non-portable (blocks dependent) code before
it can be a supported class.
@item New KeyValueObserving code for Clang and GNUstep runtime.
@item Other new methods/features
@itemize @minus{}
@item BSByteOrder fixes for NSSwappedFloat and NSSwappedDouble
@item [NSDate] small object optimisation when using Clang
@item -[NSFileManager URLsForDirectory:inDomains:]
@item NSGeometry missing functions implemented
@item [NSInvocation] missing typedefs implemented
@item [NSOperation] threads are now named for easy identification
@item [NSPredicate] BETWEEN operator for more types
@item -[NSString enumerateLinesUsingBlock:]
@item [NSThread] priority support now working on Android
@item [NSString] NSRegularExpressionSearch option
@item [NSString] ICU collator cached for improved performance
@item -[NSURLRequest assumesHTTP3Capable]
@item -[NSURLRequest setAssumesHTTP3Capable:]
@item [NSUserDefaults] use bundle identifier rather than program name
@item [NSValue] edge insets added
@item -[NSZombie logZombie:]
@end itemize
@item Support for being built with the '-asan yes' command line option
or the GNUSTEP_WITH_ASAN=1 environment variable setting. The library
is also aware when it was not built with that option but is linked to
an executable which was (and a few features which confuse the leak
checker are turned off). In addition NSObject+GNUstepBase.h declares
new methods for tracking the ownership of objects of a particular
class (or individual instances) to help in identifying the cause of
any leak found by the leak sanitizer.
@item Many minor bugfixes and very, very many minor memory leaks fixed
in both the library and the automated testcases.
@item Removed deprecated locking code and changed many classes to use
lightweight and more fine-grained locking for simple cases protecting
short regions. We retain a global lock for more complex situations
where there is a significant chance of deadlock.
@item Several symbols (variables and functions) which were accidentally
public have been made static or internal to the library.
@item Updated to work with recent versions of autoconf.
@end itemize

1334
NEWS

File diff suppressed because it is too large Load diff