]> err.no Git - sope/blob - libFoundation/ANNOUNCE
Drop apache 1 build-dependency
[sope] / libFoundation / ANNOUNCE
1
2 We are pleased to announce you the availability of libFoundation 0.9.0, a
3 free and almost complete implementation of Foundation Kit as defined by the
4 OpenStep specifications, plus more classes that come with the newest releases
5 of OPENSTEP 4.x and Rhapsody. It completely or almost completely
6 implements the following classes:
7
8 NSObject
9 NSString, NSMutableString
10 NSArray, NSMutableArray
11 NSDictionary, NSMutableDictionary
12 NSSet, NSMutableSet
13 NSData, NSMutableData
14 NSValue, NSNumber
15 NSDate, NSCalendarDate, NSTimeZone
16 NSCharacterSet
17 NSEnumerator
18 NSAutoreleasePool
19 NSException
20 NSNotification, NSNotificationCenter
21 NSCoder, NSArchiver, NSUnarchiver
22 NSScanner
23 NSInvocation, NSMethodSignature
24 NSFileManager
25 NSBundle
26 NSProcessInfo
27 NSAccount
28 NSDistributedLock
29 NSPosixFileDescriptor, NSFileHandle, NSPipe
30 NSTimer
31 NSRunLoop
32 NSThread, NSTask
33 NSUserDefaults
34 NSHost
35
36 Some extensions to the OpenStep specification are also present. They
37 include an extended exception handling mechanism, a garbage collector
38 based on reference counting and a printf-like formatting class. In
39 addition to the reference counting garbage collector, the 0.9.0
40 release comes with support for the Boehm's garbage collector, which
41 add true garbage collection to OpenStep applications.
42
43 The exception handling mechanism is very similar with those found in
44 Java and C++ and requires support for nested functions from the
45 compiler. The garbage collectors adds the benefits of automatic or
46 pseudo-automatic garbage collection to the OpenStep programs and it is
47 fully integrated with OpenStep classes. The printf-like formatting
48 class is a general purpose class that can be used to do various
49 operations that require parsing of format strings like in
50 printf(). This class is used for example to do all the formatting jobs
51 in the NSString class in libFoundation.  There is another class
52 UnixSignalHandler designed for giving an object-oriented approach to
53 the Unix signal handling.
54
55 These extensions are also available in a separate library for other
56 OpenStep Foundation implementations; the current supported Foundation
57 libraries are gnustep-base and the Foundation library in OPENSTEP
58 4.x. We dropped the support for the buggy implementation of the
59 Foundation library that comes with NeXTSTEP 3.3; sorry for this.
60
61 The library requires GCC 2.8.1 or the EGCS 1.0.x compilers if you want
62 true garbage collection support. Patches for both compilers are
63 included in the distribution. If you don't need true garbage
64 collection you can still use the 2.7.2.1 compiler with an Objective-C
65 patch from
66
67 ftp://alpha.gnu.org/gnu/gnustep/contrib/gcc-2.7.2.1-objc-970318.diff.gz
68 ftp://ftp.net-community.com/pub/GNUstep/gcc-2.7.2.1-objc-970318.diff.gz
69
70 On NeXTStep machines the library can also be compiled with NeXT
71 Objective-C runtime besides the GNU runtime although the NeXT compiler
72 is not supported. Note that the library does not currently compile
73 with the NeXT runtime under OPENSTEP 4.x. In the future the OPENSTEP
74 4.x and NeXTSTEP 3.3 platforms will be no longer supported.
75
76 The library was ported on the following platforms:
77
78 - m68k-next-nextstep3
79 - i386-next-nextstep3
80 - i386-pc-linux-gnu
81 - i386-pc-cygwin32 (Windows NT)
82 - i386-unknown-solaris2.5.1
83 - sparc-sun-solaris2.5
84 - alpha-unknown-linux-gnu
85 - powerpc-ibm-aix4.1.5.0
86
87 The library also runs with GNU runtime on OPENSTEP 4.x for Mach with
88 the GNU compiler (not the native one). Anybody interested in the
89 compiler for OPENSTEP 4.x please contact us.
90
91 Support for Distributed Objects has been delayed until the next
92 release. We plan to base the code upon the Corba's IIOP, so that
93 OpenStep programs using libFoundation will be able to interoperate
94 with Corba programs without changes through the Distributed Objects
95 mechanism.
96
97
98 Changes in version 0.9.0 since version 0.8.0:
99
100 * The most important change is the support for Boehm's conservative
101   garbage collector, that makes the memory management much more easier
102   than the reference counting mechanism. Many thanks to Helge Hess
103   <helge@mdlink.de> for persuading me to implement this facility and
104   also for his support.
105
106 * Some portions of the code have been optimized to gain speed: objects
107   that were previously allocated in some functions or methods at each
108   invocation have been allocated once per-thread.
109
110 * The library has been ported to PowerPC running AIX 4.1.5. The port is
111   complete, it also includes the NSInvocation and NSMethodSignature
112   classes. Many thanks to Steven Besler <sbesler@exchange.ml.com> and
113   Leon Salvail <lsalvail@global-village.net> for supporting this work.
114
115 * Added support for dynamically loading bundles when running in the
116   GNUstep environment.
117
118 * The documentation is now written in Texinfo and we documented almost
119   all of the additional features libFoundation comes with in addition
120   to the OPENSTEP implementation.
121
122 * Bug fixes in several classes, including NSArray, NSString and
123   UnixSignalHandler.
124
125
126 Where you can get it?
127 =====================
128
129 You can download the source code from
130
131 http://www.slip.net/~ovidiu/libFoundation/libFoundation-0.9.0.tar.gz
132 ftp://alpha.gnu.org/gnu/gnustep/libFoundation-0.9.0.tar.gz
133 ftp://ftp.gnustep.org/pub/gnustep/libFoundation-0.9.0.tar.gz
134 ftp://ftp.net-community.com/pub/Free/libFoundation-0.8.0.tar.gz
135
136
137 Happy hacking,
138
139 Ovidiu Predescu <ovidiu@slip.net>
140 Mircea Oancea <mircea@pathcom.com>
141