Up to [cvs.NetBSD.org] / pkgsrc / lang / smalltalk
Request diff between arbitrary revisions
Default branch: MAIN
Current tag: MAIN
Revision 1.28 / (download) - annotate - [select for diffs], Fri Dec 29 03:56:42 2017 UTC (2 years, 1 month ago) by dholland
CVS Tags: pkgsrc-2019Q4-base, pkgsrc-2019Q4, pkgsrc-2019Q3-base, pkgsrc-2019Q3, pkgsrc-2019Q2-base, pkgsrc-2019Q2, pkgsrc-2019Q1-base, pkgsrc-2019Q1, pkgsrc-2018Q4-base, pkgsrc-2018Q4, pkgsrc-2018Q3-base, pkgsrc-2018Q3, pkgsrc-2018Q2-base, pkgsrc-2018Q2, pkgsrc-2018Q1-base, pkgsrc-2018Q1, pkgsrc-2017Q4-base, pkgsrc-2017Q4, HEAD
Changes since 1.27: +8 -7 lines
Diff to previous 1.27 (colored)
Update to 3.2.5 and fix broken build. pkgsrc changes: - use paxctl during the build to avoid crashes - depend directly on pcre - fix some pkglint Upstream changes: - Add Delay>>#value:onTimeoutDo: as an easy way to timeout an operation. - Improve Delay and millisecondClock behavior across image save and restore. millisecondClockValue is guaranteed to be monotonic across image save, and delays are restarted when the image is restored. - DateTime>>#today will return midnight of the current timezone. - DateTime has a new method #asLocal. - DateTime>>#readFrom: can read more time formats. - Time resolution is now based on nanoseconds. - Absolute-time delays (Delay>>#untilMilliseconds:) are precise and not anymore converted to relative-time delays. - package.xml files support a <dir> tag, like <dir name="Foo">. It can be used to make package.xml clearer for large packages. - MethodDictionary is now thread-safe. - String>>#% supports string keys, like %(string). They can be used when the argument of #% is a Dictionary or LookupTable. Note that the keys of the dictionary must be Strings, not Symbols. - Socket fixes including reporting of EndOfStream on broken pipes and connection resets. - Fix the FileDescriptor finalization code to close open descriptors. - The system file descriptor of FileDescriptor is set to nil on image restore. - The asynchronous event notification has been rewritten. The old version could fail when many file descriptors became available at the same time. - DBD-Postgres gained support to bind parameters on queries and various fixes to allow to resume images that use Postgres. - Images created with gst-remote can now be resumed. - Add #system:withArguments: to avoid using #system: with #% to add arguments. - Added Integer>>#printPaddedWith:to:. - Added CharacterArray>>#withShellEscapes - Added Collection>>#includesAllOf: - Stream>>#fold: works correctly. - 64-bit integer types are available using CLongLong and CULongLong. - gst-blox and gst-browser understand the -i/--rebuild-image option. - GObject errors show backtraces. - Improvements to multiarch support. - CType objects implement #= and #hash, so they can now be used as keys in a dictionary. - Floating-point numbers are printed more accurately in some rare cases. - Some optimization of OrderedCollection and SortedCollection - Selectors starting with an underscore are treated as keyword messages. - A new function gst_uint_to_oop is in libgst, and uintToOOP is also provided by the VMProxy. - Growing the heap is working again. - Various bugfixes. - GNU Smalltalk does not run anymore on i386 hardware, an i486 is needed. - Slightly faster garbage collection.
Revision 1.27 / (download) - annotate - [select for diffs], Tue Dec 29 23:34:55 2015 UTC (4 years, 1 month ago) by dholland
CVS Tags: pkgsrc-2017Q3-base, pkgsrc-2017Q3, pkgsrc-2017Q2-base, pkgsrc-2017Q2, pkgsrc-2017Q1-base, pkgsrc-2017Q1, pkgsrc-2016Q4-base, pkgsrc-2016Q4, pkgsrc-2016Q3-base, pkgsrc-2016Q3, pkgsrc-2016Q2-base, pkgsrc-2016Q2, pkgsrc-2016Q1-base, pkgsrc-2016Q1
Changes since 1.26: +2 -2 lines
Diff to previous 1.26 (colored)
Add patch comments.
Revision 1.26 / (download) - annotate - [select for diffs], Tue Nov 3 22:50:44 2015 UTC (4 years, 3 months ago) by agc
CVS Tags: pkgsrc-2015Q4-base, pkgsrc-2015Q4
Changes since 1.25: +2 -1 lines
Diff to previous 1.25 (colored)
Add SHA512 digests for distfiles for lang category Problems found with existing digests: Package nhc98 distfile nhc98src-1.22.tar.gz a8adc8f22371998ee0657bc0e01058a57d876abc [recorded] 81975fcb5f1dda5efeaabc30ce8c6dceae55e591 [calculated] Problems found locating distfiles: Package gcc-aux: missing distfile ada-bootstrap.i386.dragonfly.36A.tar.bz2 Package gcc-aux: missing distfile ada-bootstrap.i386.freebsd.84.tar.bz2 Package gcc-aux: missing distfile ada-bootstrap.x86_64.dragonfly.36A.tar.bz2 Package gcc-aux: missing distfile ada-bootstrap.x86_64.freebsd.84.tar.bz2 Package gcc-aux: missing distfile ada-bootstrap.x86_64.solaris.511.tar.bz2 Package gcc5-aux: missing distfile ada-bootstrap.i386.dragonfly.36A.tar.bz2 Package gcc5-aux: missing distfile ada-bootstrap.i386.freebsd.84.tar.bz2 Package gcc5-aux: missing distfile ada-bootstrap.x86_64.dragonfly.36A.tar.bz2 Package gcc5-aux: missing distfile ada-bootstrap.x86_64.freebsd.84.tar.bz2 Package gcc5-aux: missing distfile ada-bootstrap.x86_64.solaris.511.tar.bz2 Package ghc7: missing distfile ghc-7.6.3-boot-i386-unknown-freebsd.tar.xz Package icc11: missing distfile l_cproc_p_11.1.080.tgz Package jini: missing distfile jini-1_2_1_001-src.zip Package oo2c: missing distfile oo2c_32-2.0.11.tar.bz2 Package openjdk7: missing distfile openjdk7/bootstrap-jdk-1.7.76-freebsd-10-amd64-20150301.tar.xz Package openjdk7: missing distfile openjdk7/bootstrap-jdk-1.7.76-netbsd-5-i386-20150301.tar.xz Package openjdk7: missing distfile openjdk7/bootstrap-jdk-1.7.76-netbsd-6-i386-20150301.tar.xz Package openjdk7: missing distfile openjdk7/bootstrap-jdk-1.7.76-netbsd-7-earmv6hf-20150306.tar.xz Package openjdk7: missing distfile openjdk7/bootstrap-jdk-1.7.76-netbsd-7-sparc64-20150301.tar.xz Package openjdk7: missing distfile openjdk7/bootstrap-jdk7u60-bin-dragonfly-3.8-amd64-20140719.tar.bz2 Package openjdk8: missing distfile openjdk7/bootstrap-jdk-1.7.76-freebsd-10-amd64-20150301.tar.xz Package openjdk8: missing distfile openjdk7/bootstrap-jdk-1.7.76-netbsd-5-i386-20150301.tar.xz Package openjdk8: missing distfile openjdk7/bootstrap-jdk-1.7.76-netbsd-6-i386-20150301.tar.xz Package openjdk8: missing distfile openjdk7/bootstrap-jdk-1.7.76-netbsd-7-earmv6hf-20150306.tar.xz Package openjdk8: missing distfile openjdk7/bootstrap-jdk-1.7.76-netbsd-7-sparc64-20150301.tar.xz Package openjdk8: missing distfile openjdk7/bootstrap-jdk7u60-bin-dragonfly-3.8-amd64-20140719.tar.bz2 Package oracle-jdk8: missing distfile jdk-8u60-linux-i586.tar.gz Package oracle-jdk8: missing distfile jdk-8u60-solaris-x64.tar.gz Package oracle-jre8: missing distfile jre-8u60-linux-i586.tar.gz Package oracle-jre8: missing distfile jre-8u60-solaris-x64.tar.gz Package sun-jdk6: missing distfile jdk-6u45-linux-i586.bin Package sun-jdk6: missing distfile jdk-6u45-solaris-i586.sh Package sun-jdk7: missing distfile jdk-7u72-linux-i586.tar.gz Package sun-jdk7: missing distfile jdk-7u72-solaris-i586.tar.gz Package sun-jre6: missing distfile jce_policy-6.zip Package sun-jre6: missing distfile jre-6u45-linux-x64.bin Package sun-jre6: missing distfile jre-6u45-solaris-x64.sh Package sun-jre7: missing distfile jre-7u72-linux-i586.tar.gz Package sun-jre7: missing distfile jre-7u72-solaris-i586.tar.gz Otherwise, existing SHA1 digests verified and found to be the same on the machine holding the existing distfiles (morden). All existing SHA1 digests retained for now as an audit trail.
Revision 1.25 / (download) - annotate - [select for diffs], Sat Dec 27 00:13:28 2014 UTC (5 years, 1 month ago) by dholland
CVS Tags: pkgsrc-2015Q3-base, pkgsrc-2015Q3, pkgsrc-2015Q2-base, pkgsrc-2015Q2, pkgsrc-2015Q1-base, pkgsrc-2015Q1, pkgsrc-2014Q4-base, pkgsrc-2014Q4
Changes since 1.24: +3 -2 lines
Diff to previous 1.24 (colored)
Sort out depends. - Add options.mk and make most of the heavy depends optional. - Add optional support for SDL, disabled by default. - Fix curses buildlinking; closes PR 49478. - Update readline support for semi-recent API changes. - Update PLIST accordingly. PKGREVISION -> 20.
Revision 1.24 / (download) - annotate - [select for diffs], Sun Mar 24 16:54:59 2013 UTC (6 years, 10 months ago) by joerg
CVS Tags: pkgsrc-2014Q3-base, pkgsrc-2014Q3, pkgsrc-2014Q2-base, pkgsrc-2014Q2, pkgsrc-2014Q1-base, pkgsrc-2014Q1, pkgsrc-2013Q4-base, pkgsrc-2013Q4, pkgsrc-2013Q3-base, pkgsrc-2013Q3, pkgsrc-2013Q2-base, pkgsrc-2013Q2, pkgsrc-2013Q1-base, pkgsrc-2013Q1
Changes since 1.23: +2 -1 lines
Diff to previous 1.23 (colored)
Don't define static modfl and friends, it now conflicts with math.h. Use our libltdl to avoid the libc.la hack.
Revision 1.23 / (download) - annotate - [select for diffs], Sat Apr 30 11:46:15 2011 UTC (8 years, 9 months ago) by asau
CVS Tags: pkgsrc-2012Q4-base, pkgsrc-2012Q4, pkgsrc-2012Q3-base, pkgsrc-2012Q3, pkgsrc-2012Q2-base, pkgsrc-2012Q2, pkgsrc-2012Q1-base, pkgsrc-2012Q1, pkgsrc-2011Q4-base, pkgsrc-2011Q4, pkgsrc-2011Q3-base, pkgsrc-2011Q3, pkgsrc-2011Q2-base, pkgsrc-2011Q2
Changes since 1.22: +5 -8 lines
Diff to previous 1.22 (colored)
Update GNU Smalltalk to version 3.2.4 List of user-visible changes in GNU Smalltalk NEWS FROM 3.2.3 TO 3.2.4 o Autoload is extended to allow plugging in arbitrary loaders. o Array items in a CStruct didn't work, this is fixed now. o DLD could have problems when the same library was requested multiple times. o Errors in the bind() system call were not detected correctly; this has been fixed. o Fixes for platforms with 113-bit long doubles. o Fixes to Delay in the presence of delays with the exact same expiration. o Fixes to the HTTP package, including correct flushing of POST requests and doesNotUnderstand exceptions when the host did not exist. o GLUT bindings now build correctly under Windows. o Many smalltalk-mode improvements. o New methods: TextCollector>>#critical:, o nil can be passed to a C function accepting a #cObjectPtr (i.e. void **) argument. o SocketAddress>>#allByName: returns nil now, instead of an empty array, when getaddrinfo succeeds but returns no address for the requested address class. o SocketAddress>>#byName: returns addresses for the default address class when the receiver is SocketAddress (and not a subclass). o Support for older versions of GnuTLS. o Swazoo's static content serving was broken and has been fixed. o The GST_PACKAGE macro supports having multiple .la files in its last argument. gst-package's --prepare option was broken and has been fixed. o The NetClients exception ProtocolError now includes the erroneous response. Similarly, the package includes ProtocolNotification which is used, for example, for HTTP redirects. o Updated the Squeak/Pharo fileout parser. o Updated VisualGST. ----------------------------------------------------------------------------- NEWS FROM 3.2.2 TO 3.2.3 o Class attributes can have more than 1 keyword. o Documented #byteArrayOut C call argument passing mode. o Fixed crash when an invalid UnicodeString was created using #changeClassTo: o Fixed deadlock with #atEnd and two-way pipes. o Fixed bugs when adding instance variables to an existing class. o Fixed Socket>>#isPeerAlive falsely returning true. o Fixed some bugs in UTF-7 conversion. o FreeBSD port and 64-bit Darwin port. The latter requires a pre-installed libsigsegv. o "gst-convert -f squeak" reads binary selectors with more than two characters; however they should be shortened with rewrite rules to use the output. o gst-doc can generate sensible documentation for a package if some of its prerequisite are not loaded, even if some of the package's classes subclass from the prerequisite. o GTK+ bindings are generated correctly for newer versions of GLib (tested up to 2.26). o If found, pre-installed libsigsegv, libffi and libltdl are used by default. o Improvements for Emacs mode. Installation of Emacs mode detects Debian's /etc/emacs/site-start.d, and a --with-lispstartdir option is provided for distributions that are not Red Hat- or Debian-based. o Machine-specific optimizations for x86-64, and other microoptimizations resulting in small but consistent performance improvements. o More out of memory conditions are detected. o New methods: ByteArray>>#castTo:, ByteArray>>#asCData, String>>#asCData, UndefinedObject>>#inheritsFrom: o New goodie: Announcements. o Number class>>#readFrom: can parse numbers in scientific notation. o Package descriptions do not need to include a <file> item for each <filein> item. However, it is still possible to include them for backwards compatibility, and it is possible to include a source file as both <filein> and <built-file> (so that gst-package --dist will skip it). o Packages can be downloaded using HTTPS if GnuTLS libraries are present. o Performance statistics printed by -V are now correct. o Scoped methods ("A class >> a") can be used in an "A class [ ... ]" block. o Semaphore>>#wait returns nil if the wait was interrupted externally (e.g. from Process>>#resume). o String>>#asCData: and String>>#asCData NULL-terminate their output. o Support for timeouts when waiting on a Semaphore. o Swazoo supports SCGI. Its configuration however is still manual, since the Seaside and Iliad adaptors do not know about it. o Updated VisualGST.
Revision 1.22 / (download) - annotate - [select for diffs], Sat Jul 31 22:06:24 2010 UTC (9 years, 6 months ago) by asau
CVS Tags: pkgsrc-2011Q1-base, pkgsrc-2011Q1, pkgsrc-2010Q4-base, pkgsrc-2010Q4, pkgsrc-2010Q3-base, pkgsrc-2010Q3
Changes since 1.21: +7 -10 lines
Diff to previous 1.21 (colored)
Update to GNU Smalltalk 3.2.2 NEWS FROM 3.2.1 TO 3.2.2 o Fixes to gst-remote. o Fixes to the Emacs mode. o Fixes to compilation warnings. o Generational GC is broken on SPARC and is now disabled. o When compiling a 32-bit version on a 64-bit system, detection of which packages to install was improved. NEWS FROM 3.2 TO 3.2.1 o All built-in packages can be disabled with a configure option like --disable-gdbm or --disable-complex. o All tools support --verbose. o Fixed bugs in the distributed gnu-smalltalk.pc file. o Improved portability to Solaris. o Many bug fixes to UDP sockets. In particular, daragrams received from a socket can be placed directly onto another socket using #nextPut:. o Many improvements to VisualGST. o Each test in the testsuite has a 1-minute timeout. o The undocumented DynamicVariable class in GNU Smalltalk 3.2 is now documented, but it had a small change in the implementation. The #defaultValue class method is not present anymore, and is replaced by #valueIfAbsent:. Subclasses can override #value to obtain the effect of #valueIfAbsent:. The class has also been rewritten and is much faster now. NEWS FROM 3.1 TO 3.2 Backwards-incompatible bug fixes and changes: o Collection>>#anyOne gives an error if the receiver is empty. o "aNumber raisedToInteger: 0" will raise an exception if and only if aNumber is not a floating-point value. This was backwards in previous versions. o Interval>>#first and Interval>>#last give an error if the interval is empty (i.e. if start > stop and the step is positive, or start < stop and the step is negative). o SequenceableCollection>>#sortBy: was renamed to #sort:. The old message is _not_ provided for backwards-compatibility. o The semantics of recursive directory descent were adjusted as follows: 1) the '.' and '..' directory entries are not passed; 2) for #do:, the file is passed directly (3.1 used to pass another recursive decorator); 3) before the descent starts, the directory itself is passed to the block. o The XML parser will ignore whitespace if placed in non-validating mode. o The suggested way to instantiate an XML parser is now using "SAXParser defaultParserClass", which will work with either of the two available parsers (the existing Smalltalk parsers, and the Expat bindings; see below). New features (base classes): o Floating-point rounding to integer is now correct also for very large numbers; fix contributed by Nicolas Cellier. o Methods have been added to Integer to print numbers with padding to a specified width. o New FilePath methods #owner:, #group:, #owner:group: allow setting a file's owner and group. o Sending mode, file time and owner setters to a recursive directory decorator (such as `Directory working all') sets the mode/time/owner on all files under the path. o Speedups for hashed collections o String>>#subStrings: accepts a single separator character or also, in accordance with ANSI, a String holding a list of separators. o The old instance-based exception handling has been removed. Standard ANSI class-based exceptions have been available since GNU Smalltalk 1.8.2. o The text-based #inspect method is now available also as Object>>#examine and Object>>#examineOn:, so that it will also work on arbitrary streams and will be available when a GUI is loaded. Contributed by Stefan Schmiedl. New features (tools): o gst-convert can emit Squeak fileouts. o New graphical interface VisualGST, loaded with gst-browser. The old browser is still available, but obsolete. o New ProfilerTools package for callgraph profiling of Smalltalk programs. A companion gst-profile tool will create profiles in callgrind-compatible format. Contributed by Derek Zhou. o Packages can be downloaded and updated directly from the network. The repository of packages is at http://smalltalk.gnu.org/project; the repository holds the location of the package.xml files, which point to the svn or git URL of the code. In order to download a package with git, version 1.6.2 is required. o SUnit supports expected failures. New features (VM): o Fixes in garbage collection heuristics provide improved performance on programs allocating many long-lived objects. Contributed by Derek Zhou. o Floating-point numbers are now read correctly. o In idle times, GNU Smalltalk will perform incremental garbage collection. When it finishes, GNU Smalltalk will consume zero CPU. o Mostly rewritten Windows port. It should mostly work except for sockets. The socket code will be rewritten (for all platforms) for 3.3 anyway. o Support for one-way become (Object>>#becomeForward:) o The millisecond clock uses CLOCK_MONOTONIC where available. New features (packages): o Many improvements to the Gtk bindings. o NetClients supports ESMTP commands. o New goodie, the SandstoneDb object persistence framework. o Swazoo upgraded to version 2.2, plus local fixes. o The Complex package uses numerically stable algorithms o The Continuations package provides delimited continuations via BlockClosure>>#shift and BlockClosure>>#reset. Both methods accept a block (1-arg for shift, 0-arg for reset). o An XML pull parser is included as package XML-PullParser. The package is based on the VisualWorks and Squeak pull parsers by Anthony Blakey and Ken Treis. o In addition to the validating XML parser, a non-validating Expat-based parser is available in package XML-Expat. The Expat parser is experimental, but it is very fast and supports both pull and push operation. Bug fixes: o Code running as a Generator now honors exception handlers outside the Generator block. o Fixed copying of Dictionary to not share the underlying associations. o Fixed ##() expressions that return a block o EPIPE is handled correctly. o Running on kernels without SOCK_CLOEXEC support will not fail even if the VM was compiled on a kernel that supported it. o The Sockets package failed to initialize when the machine was not connected to the network; this has been fixed. o The Transcript now uses a RecursionLock. This fixes crashes when an exception occurred while printing a backtrace. Miscellaneous: o GNU Smalltalk now does not rely anymore on specific (old) versions of libtool. o GNU Smalltalk tries to enable Emacs modes automatically on systems that support a site-lisp/site-start.d directory. o REPL autocompletion includes all symbols including unary messages (and variable names). o Process-local variables are now stored in an IdentityDictionary rather than a LookupTable.
Revision 1.21 / (download) - annotate - [select for diffs], Fri Apr 9 01:54:20 2010 UTC (9 years, 10 months ago) by obache
CVS Tags: pkgsrc-2010Q2-base, pkgsrc-2010Q2
Changes since 1.20: +3 -1 lines
Diff to previous 1.20 (colored)
* fixes build with gmp-5 (patch-ai). * apply CVE-2009-3376 patch (patch-aj). * drop dependency on libltdl, not used Bump PKGREVISION.
Revision 1.20 / (download) - annotate - [select for diffs], Thu Jan 21 06:26:35 2010 UTC (10 years ago) by asau
CVS Tags: pkgsrc-2010Q1-base, pkgsrc-2010Q1
Changes since 1.19: +2 -2 lines
Diff to previous 1.19 (colored)
Add RCS Id and comment to the patch.
Revision 1.19 / (download) - annotate - [select for diffs], Thu Jan 21 06:21:07 2010 UTC (10 years ago) by asau
Changes since 1.18: +3 -2 lines
Diff to previous 1.18 (colored)
Avoid creating broken libc.la, bump revision.
Revision 1.18 / (download) - annotate - [select for diffs], Thu Jun 4 07:40:58 2009 UTC (10 years, 8 months ago) by hasso
CVS Tags: pkgsrc-2009Q4-base, pkgsrc-2009Q4, pkgsrc-2009Q3-base, pkgsrc-2009Q3, pkgsrc-2009Q2-base, pkgsrc-2009Q2
Changes since 1.17: +2 -1 lines
Diff to previous 1.17 (colored)
Make it build on DragonFly.
Revision 1.17 / (download) - annotate - [select for diffs], Fri Apr 10 17:36:43 2009 UTC (10 years, 10 months ago) by asau
Changes since 1.16: +7 -7 lines
Diff to previous 1.16 (colored)
Update to GNU Smalltalk 3.1. There're numerous changes, which include various improvements, new features and bug fixes. Most notable changes include async. signal safety, threads support, remote control of Smalltalk VM via TCP socket, DBI improvements, bindings to Cairo, LibSDL, OpenGL and GLUT, Swazoo web server, newer Seaside application server and web framework.
Revision 1.16 / (download) - annotate - [select for diffs], Mon Sep 3 16:28:56 2007 UTC (12 years, 5 months ago) by obache
CVS Tags: pkgsrc-2009Q1-base, pkgsrc-2009Q1, pkgsrc-2008Q4-base, pkgsrc-2008Q4, pkgsrc-2008Q3-base, pkgsrc-2008Q3, pkgsrc-2008Q2-base, pkgsrc-2008Q2, pkgsrc-2008Q1-base, pkgsrc-2008Q1, pkgsrc-2007Q4-base, pkgsrc-2007Q4, pkgsrc-2007Q3-base, pkgsrc-2007Q3, cwrapper, cube-native-xorg-base, cube-native-xorg
Changes since 1.15: +2 -1 lines
Diff to previous 1.15 (colored)
Fixed build error. Patch provided by Aleksej Saushev in PR 36888.
Revision 1.15 / (download) - annotate - [select for diffs], Mon Sep 3 13:36:29 2007 UTC (12 years, 5 months ago) by obache
Changes since 1.14: +7 -8 lines
Diff to previous 1.14 (colored)
Update smalltalk to 2.3.5. List of user-visible changes in GNU Smalltalk NEWS FROM 2.3.4 TO 2.3.5 o Added more examples of continuations. o Fixed a floating-point accuracy problem in the test suite. o Fixed a 64-bit cleanliness problem in the GDBM bindings. o Generational GC enabled on x86_64. o Support for writing a block with arguments and no statements as [ :a :b ] in addition to [ :a :b | ]. o The StreamFilter.st example, which provided lookahead, filtering, concatenation and other kinds of manipulation for Streams, has been promoted into the default image. ----------------------------------------------------------------------------- NEWS FROM 2.3.3 TO 2.3.4 o Behavior>>#evaluate: and MethodDictionary>>#removeAt:ifAbsent: would cause the method dictionary's size to double. This caused sometimes spurious failures in floatmath.st. o Fixed bug in LargeInteger division on systems not equipped with GMP. o Fixed bug in socket #nextHunk implementation, which lost the first or second byte in the input buffer. o Fixed paths in the image when "make DESTDIR" was used. o Fixed implementation of Dictionary>>#addAll:, and fixed Integer>>#binomial: when the argument is 0 or self. o Fixed various minor bugs and imprecisions in the documentation. o Improvements to the ancillary scripts gst-load and gst-sunit. In particular, a package can describe the classes that constitute its testsuite, and gst-sunit allows to quickly run the testsuite for a package. o Improvements to the test suite. Several of the modules included with GNU Smalltalk are tested. The testsuite is now written using Autotest. o Some libffi files (for IA64 and PA) were missing from the distribution. o Upgraded libsigsegv, for improved Mac OS X on Intel support o zlib bindings provided in package ZLib. ----------------------------------------------------------------------------- NEWS FROM 2.3.2 TO 2.3.3 o Introduced the --with-imagedir configure option to specify the directory used for the image. o The manual was not properly generated in version 2.3.2. o Removed text relocations from the virtual machine's shared library. ----------------------------------------------------------------------------- NEWS FROM 2.3.1 TO 2.3.2 o #copyFrom:to: is uniformly 0-based for all Streams (unlike in Collections), because a Stream has 0-based #position and #position: methods. o Fixed many floating point rounding bugs in LargeIntegers and Fractions, thanks to Nicolas Cellier. ----------------------------------------------------------------------------- NEWS FROM 2.3 TO 2.3.1 o configure does not lock up when the system emacs is XEmacs and does not include both the comint package and the package's source code. o Fixed a garbage collection bug that typically occurred when installing GNU Smalltalk, or when launching the installed image. o gst-package honors the INSTALL command found by configure. o gst-config does not "forget" to prefix the library directories with -L. o Segmentation violations on large integer operations (on 64-bit hosts) were fixed. ----------------------------------------------------------------------------- NEWS FROM 2.2 TO 2.3 IMPORTANT: GNU Smalltalk now adds an explicit exception to the GNU GPL license, allowing the programs running under the virtual machine to use a GPL-incompatible license. This exception is used both by the virtual machine and by the library bindings included in GNU Smalltalk. This clears gray areas when a Smalltalk program is using functions in the external library bindings via dynamic linking and the foreign function call interface (C call-outs). o C call-outs returning #void now return self rather than nil. Performance of code heavily using C call-outs has improved. o FileStreams can now use pwrite for more efficient operation on files opened for read/write, and will do many less gratuitous lseek operations. pread will also be used by FileStream>>#copyFrom:to:. The number of system calls issued when generating the documentation, for example, is reduced by a third. o Fixed bug in methods containing both -0.0 and 0.0 (positive and negative floating-point zero). o Fixed bug in Directory class>>#create:, that could not create a directory relative to the current directory. o Fixed bug in File>>#touch, which did not work really. There are also methods to modify a file's atime and mtime. o Fixed bug in SortedCollection. After #removeAtIndex:, adds would leave the collection unordered. o Fixed many more bugs. o Introduced a method to efficiently convert a WriteStream into a ReadStream. It is called #readStream and makes WriteStream more polymorphic with String. o Introduced two more class shapes, #character and #utf32, that can be used for String and UnicodeString. o More reliable detection of at-end-of-file condition for pipes, TTYs, and so on (especially on Mac OS X), and of sockets closed by the peer. Due to incompatibilities between various OSes, you are advised to test end-of-stream conditions *before* rather than after reading a character from stdin. In 2.2, either way would work, but serious bugs were found on Mac OS X unless stdin was redirected from a file. o Moved gdk_draw_ functions to GdkDrawable. o New goodie to parse the command line. Look at the documentation for the Getopt class and for SystemDictionary>>#arguments:do:. o New example, lazy collections. When loaded, #select:, #reject: and #collect: do not create a new collection unless necessary. Idioms like (a select: [ :each | ... ]) do: [ : each | ... ] or a := a select: [ :each | ... ]. a := a reject: [ :each | ... ]. a := a select: [ :each | ... ]. ^a size can be much faster when this example is loaded. o Regular expressions are now included in the default image. The interface is now definitive and is similar to 2.2. The concrete classes for RegexResults are in a private namespace (since the user need not instantiate them anyway). Right now, regular expressions are only usable for String objects (see Unicode support below). This may change in the future. o The backtraces now omit again the internal methods in the exception handling system. o The class above which super-send bytecodes start searching is now embedded in the bytecode stream. This provides the infrastructure to implement 'here' as in Smalltalk/X or 'self.Foo b' to execute the Foo>>#b method (these possible extensions have not been implemented). o The header files compile cleanly with a C++ compiler. For the occasion, the preferred name of the old `mst_Object' has changed to `gst_object'. o Various speedups. Unicode support: o Characters above 127 are no longer used to represent extended ASCII characters. Instead, they are only used to represent a byte in the encoding of the Unicode characters from 128 on. To create them use the Blue Book method Character class>>#value:. To represent Unicode characters above 127 use the (ANSI Smalltalk) Character class>>#codePoint: method. Note that these characters *cannot* be shown on a stream with #nextPut: (use #display: instead) nor compared with #== (use #= instead). Character literals like $+ or $A are guaranteed to create normal "Character" objects, for which you can safely use #nextPut:. Right now, these are valid only for characters between 0 and 127. To create Character literals for unicode characters, use the new syntax to express characters using their Unicode code point. This may be extended in the future to support Unicode character literals. A ``safe'' way to obtain the character whose encoding is between 128 and 255 is this (which requires the Iconv module to be loaded): ##('<your character>' asUnicodeString first) (This snippet has no shortcut by design because, in general, converting a Character to a UnicodeCharacter is not a well-defined operation). o New UnicodeCharacter and UnicodeString classes. These new classes can also be passed to and received from C functions. See the manual for more information. o New syntax $<13> to express characters using their Unicode code point. As anticipated, this syntax will create instances of the new UnicodeCharacter class when the number is > 127. o Part of the I18N module was separated into the Iconv module, which provides support for printing Unicode characters and strings correctly. Other goodies: o NCurses bindings, contributed by Brad Watson. ----------------------------------------------------------------------------- NEWS FROM 2.1.12 TO 2.2 Scripting improvements: o A sharp-bang sequence at the beginning of a file is parsed as a one-line comment. o Provides an "-f" option (long option "--file") to be used in a #! line, as in "#! /usr/bin/env gst -f", which has the same effect of -Q, processing the file indicated by the option's argument, and passing the rest of the command line to GNU Smalltalk. In other words, the two invocations that follow are equivalent: gst -f script.st ARG1 ARG2 gst script.st -Qa ARG1 ARG2 o Load.st installed as gst-load, Reload.st installed as gst-reload, Test.st installed as gst-sunit. VM changes: o Can define subclasses of CompiledMethod and have a method invoked on the instances whenever the method is called. o Can pass a "void **" to C using the #cObjectPtr parameter specifier (previously undocumented and broken). o The #class method can be overridden. This is useful for example for debuggers and proxies. o Code for decoding/interpreting the bytecode set is for the most part automatically generated. Take a look at the ``genbc'' and ``genvm'' programs if you are going to write an high performance interpreter, and write to the mailing list for any information on them or on the other program ``superops'' (this one is much more specialized). o CompiledBlocks and CompiledMethods are read-only. o Dollars are allowed in the middle of identifiers and method names. This is unportable, so do not abuse it. As with underscores, it is not possible to use them at the beginning of an identifier or method name. o Fixed bug that caused the compiler to accept duplicate argument or temporary names. o GCC needed to compile GNU Smalltalk. o gst_smalltalk_args accepts a const char **. o Improved clarity and portability using intptr_t, size_t and ptrdiff_t more widely and wisely. o Indexed instance variables can be 8-bit and 16-bit, signed and unsigned integers; or they can be 32-bit and 64-bit, signed integers and unsigned integers and floating point values; or objects of course. Previously the only three possibilities were objects, 8-bit unsigned ints, and pointer-sized unsigned ints. o Instance variables are scanned backwards: if a subclass declares an instance variable with the same name of the superclass, it wins when compiling code in the subclass (fixes the so-called "fragile subclass" problem). o Keywords and parameters need not be separated by a space (as in `self x: y z:w'). o New bytecode set. This is a significant departure from the Blue Book's instruction set, and it improves performance by ~20%. Over 150 common bytecode sequences are optimized, saving on dispatching overhead and minimizing the cost of decoding arguments. o Options -l and -L (--log-changes and --log-file) are no more. The change log is not useful outside the GUI, while inside the GUI it ought to be maintained by the GUI itself. o Option -s is no more. It was made the default in 2.1.5. o Passing floating-point arguments to C works. o Prefetching instructions are used wherever supported (Alpha, SPARC, PPC, AMD K6 or newer, Intel PIII or newer, all with GCC 3.2). This speeds up the startup by up to 20%. o Instances of subclasses of CompiledBlock and CompiledMethod can be created using the same primitive that creates CompiledBlocks and CompiledMethods, but sent to the subclass. o Several important bug fixes in event handling and asynchronous file input/output. o Subclasses of MethodInfo can be used as the descriptors for CompiledMethod objects. o Two-character binary messages ending with a minus are scanned differently if followed by a number: "1+-2" is now read as "1 + -2", not "1 +- 2". This is what you would usually expect; however, including spaces explicitly is recommended. o When GCC 3.3 or later is used, a shared library is also built. The code has been to some extent optimized to make this less expensive, but the shared library still has a 5-10% performance hit. Note that the x86 shared library is undebuggable (-fomit-frame-pointer) with GCC < 4.0 because of the dearth of registers. The installed virtual machine is not linked to the shared library for optimal speed. o Wider set of operations available to modules that plug into GNU Smalltalk, including access to system classes, queries on the method dictionaries, and access to indexed instance variables. Smalltalk changes: o CLongDouble class allows one to access long doubles; long doubles are supported by CStruct, Memory and ByteArray as well. o CompiledCode>>#literalsDo: does what CompiledCode>>#allLiteralsDo: used to do. CompiledCode>>#allLiteralsDo: recurses into literal arrays. o Glorp, a layer for mapping objects to relational databases, is provided and integrated with the MySQL driver. o GNU Smalltalk includes a mechanism for defining security policies on a class-by-class basis. See below for more information. o Interval can return a #first and #last even if the Interval is empty. These are the start and stop object that it was created with. The private methods #start, #stop and #step have thus been superseded by #first, #last and #increment. o #min: and #max: always return a NaN when one of the two operands is a NaN; previously they would always return the other operand. o New syntax for C call-outs, can be transparently filed out from the image and then filed back in. See the documentation or the kernel/CFuncs.st file for more information. o PackageLoader can be told the namespace in which to load the package. Most package loading scripts are now no longer necessary or can be reduced to simple initialization duties. o #raisedToInteger: is better optimized and does the minimum number of multiplications for exponents up to 256. o SequenceableCollection has a more efficient implementation of #fold:, as well as #second, #third, and #fourth (and I'm going to stop here!). o #return and #return: now reinstate exception handlers, which will therefore be active while executing pending #ensure: or #ifCurtailed: blocks. o Stored CompiledBlocks into the method's literal frame for non-clean blocks, and turned #blockCopy: into a `make dirty block' bytecode without introducing a method of unclear utility. This is a little faster and (consistently) saves around 1% on image files. o The syntax for primitives has been generalized into a "method attribute" mechanism; pragmas are accessible through methods in CompiledMethod. o The thisContext variable is compiled as a message send like "ContextPart thisContext". o When a send to super fails, #doesNotUnderstand: is also sent to super and not to self. This change is experimental; these semantics look more coherent to me. As a result (think about it...) sends to super from a root class are now forbidden. o When a non-existing message is sent with the wrong number of arguments (using #perform:), #doesNotUnderstand: is invoked. In the past, the wrong number of arguments error would have been printed. The reason for this is to allow selector names that would be invalid for the Smalltalk language. Work in progress: o Blox-GTK interface, to use the browser under Gtk+. Currently, only the browser works; to try it, configure with --enable-gtk=blox or load the BloxGTK package. Thanks to Robert Collins. o GNU Smalltalk now supports executing (some) Java programs. See the info documentation for more information. The class library is based on GCJ 3.4, but should be reasonably upwards-compatible. There is no AWT nor JNI support, and it is not planned; networking, reflection and serialization are not there but should be added in the future. Overview of the security mechanism: o Implemented class-level permissions. Each class can have its own permission set, and if this is not trivial (all-allowed) the class is marked untrusted; then instances of that class, as well as contexts that have at least an untrusted object as the receiver in the sender chain, are considered untrusted. In the future, security checks will be made for untrusted objects in such methods as C call-outs [#memoryAccess] CObject class>>#alloc: [#memoryAccess] CObject class>>#alloc:type: [#memoryAccess] CObject>>#free [#memoryAccess] CObject>>#at: [#memoryAccess] CObject>>#at:put: [#memoryAccess] Memory>>#at: [#memoryAccess] Memory>>#at:put: [#memoryAccess] FileDescriptor>>#fileOp:... [#io] ObjectMemory>>#snapshot: [#io] ObjectMemory>>#quit: [#system] ObjectMemory>>#abort [#system] ObjectMemory>>#setSpaceGrowRate: [#system] ObjectMemory>>#setSmoothingFactor: [#system] ObjectMemory>>#setGrowThresholdPercent: [#system] ObjectMemory>>#setBigObjectThreshold: [#system] ObjectMemory>>#growTo: [#system] Object>>#makeUntrusted: [#securityManagement] Object>>#instVarAt: [#debugging] Object>>#instVarAt:put: [#debugging] Object>>#perform:... [#debugging] Object>>#changeClassTo: [#debugging] Process>>#suspend [#processManagement] Process>>#resume [#processManagement] UndefinedObject>>#subclass:... etc... [#system] Class>>#subclass:... etc... (mutation) [#system] Metaclass>>#instanceVariableNames: [#system] MethodDictionary>>#at:put: [#system] o Instance variables of an untrusted class that are declared by a trusted class are read-only. This is necessary to avoid that a misbehaving class method screws up the instance variables of Behavior that are known to the VM. o Methods are verified. o Permissions can be granted by a method to its callees if the method's definition class owns those permissions. This can be used to invoke trusted C call-outs. o Primitives cannot be declared for untrusted objects (this might be fine-grained in the future). ----------------------------------------------------------------------------- NEWS IN 2.1.12 This is a bugfix release. It fixes several problems on 64-bit systems. ----------------------------------------------------------------------------- NEWS IN 2.1.11 This is a bugfix release. ----------------------------------------------------------------- NEWS IN 2.1.10 This is a bugfix release, but with this visible change: o PackageLoader supports loading package source code from multiple directories. Directory packages.xml is in Directories looked in /usr/share/smalltalk /usr/share/smalltalk parent of local kernel directory, if any image directory parent of local kernel directory parent of local kernel directory image directory image directory image directory o Directory>>#append:to: supports passing an absolute path as the file name (first argument). In this case, the file name itself is returned. This release works under MacOS X 10.3 and 10.4 as well. It also works around bugs in MacOS X Tiger's poll function.
Revision 1.14 / (download) - annotate - [select for diffs], Sat Jun 23 08:26:44 2007 UTC (12 years, 7 months ago) by minskim
CVS Tags: pkgsrc-2007Q2-base, pkgsrc-2007Q2
Changes since 1.13: +2 -1 lines
Diff to previous 1.13 (colored)
Use stdlib.h instead of malloc.h, which is nonstandard.
Revision 1.13 / (download) - annotate - [select for diffs], Wed Mar 7 18:37:33 2007 UTC (12 years, 11 months ago) by joerg
CVS Tags: pkgsrc-2007Q1-base, pkgsrc-2007Q1
Changes since 1.12: +2 -1 lines
Diff to previous 1.12 (colored)
Fix build on DragonFly. XXX Make this use devel/libsigsegv.
Revision 1.12 / (download) - annotate - [select for diffs], Thu Feb 24 09:03:11 2005 UTC (14 years, 11 months ago) by agc
CVS Tags: pkgsrc-2006Q4-base, pkgsrc-2006Q4, pkgsrc-2006Q3-base, pkgsrc-2006Q3, pkgsrc-2006Q2-base, pkgsrc-2006Q2, pkgsrc-2006Q1-base, pkgsrc-2006Q1, pkgsrc-2005Q4-base, pkgsrc-2005Q4, pkgsrc-2005Q3-base, pkgsrc-2005Q3, pkgsrc-2005Q2-base, pkgsrc-2005Q2, pkgsrc-2005Q1-base, pkgsrc-2005Q1
Changes since 1.11: +2 -1 lines
Diff to previous 1.11 (colored)
Add RMD160 digests
Revision 1.11 / (download) - annotate - [select for diffs], Fri Nov 19 13:01:46 2004 UTC (15 years, 3 months ago) by adam
CVS Tags: pkgsrc-2004Q4-base, pkgsrc-2004Q4
Changes since 1.10: +5 -5 lines
Diff to previous 1.10 (colored)
Changes 2.1.9: o DLD can open the C library (2.1.6). o Fix bug in compilation of ##() expression where the expression evaluates to an integer (2.1.8). o Fix bug in #next: on sockets (2.1.6). o Fix crash when accessing an ill-formed namespace from Smalltalk code (2.1.8). o Fixes to the JIT compiler (2.1.8). o Improvements to Gtk+ bindings (2.1.9). o libltdl is no longer configured in a separate subdirectory (2.1.6). o Portability improvements (2.1.8). o Updated to Automake 1.8, Libtool 1.5 (CVS checkout on 2003-08-01), Autoconf 2.59a, snprintfv 1.1 (2.1.6). o Updates to Emacs mode (2.1.6).
Revision 1.10 / (download) - annotate - [select for diffs], Sun Apr 18 18:41:19 2004 UTC (15 years, 10 months ago) by snj
CVS Tags: pkgsrc-2004Q3-base, pkgsrc-2004Q3, pkgsrc-2004Q2-base, pkgsrc-2004Q2
Changes since 1.9: +2 -2 lines
Diff to previous 1.9 (colored)
Fix build by changing "libtool --tag disable-shared" to "libtool --tag=disable-shared", from rudihl (a) gmx.de in PR pkg/25230.
Revision 1.9 / (download) - annotate - [select for diffs], Mon Aug 4 15:43:45 2003 UTC (16 years, 6 months ago) by jtb
CVS Tags: pkgsrc-2004Q1-base, pkgsrc-2004Q1, pkgsrc-2003Q4-base, pkgsrc-2003Q4
Changes since 1.8: +3 -3 lines
Diff to previous 1.8 (colored)
Update to version 2.1.4. NEWS FROM 2.1.3 TO 2.1.4 o Fix bugs treating old objects that have already been considered by the incremental GC (and survived it). Example: ObjectMemory globalGarbageCollect. HomedAssociation class instanceCount gave 0 instead of 1. As a result, --enable-checking now can be used. o Fix bugs when doing #become: between old objects, exactly one of which has not been considered by the incremental GC and was incorrectly swept when the collector finally reached it. o Fix bugs when garbage collection triggered finalization while a primitive was being run. Finalization is now done in a separate Process. o Fix bugs treating very large objects. o Fix infinite loop when the big object threshold was set between the size of survivor spaces and the size of the eden. o Printing Integers was unbelievably inefficient. Fixed together with some more low-hanging fruit. o SequenceableCollection>>#replaceFrom:to:with:startingAt: allows again that stop=start-1 (like replaceFrom: 1 to: 0 with: ...)
Revision 1.8 / (download) - annotate - [select for diffs], Mon Jul 7 21:02:03 2003 UTC (16 years, 7 months ago) by seb
Changes since 1.7: +2 -1 lines
Diff to previous 1.7 (colored)
REgen after last update of package.
Revision 1.7 / (download) - annotate - [select for diffs], Wed Jul 2 22:35:37 2003 UTC (16 years, 7 months ago) by jtb
Changes since 1.6: +1 -2 lines
Diff to previous 1.6 (colored)
Use LIBTOOL_OVERRIDE rather than LTCONFIG_OVERRIDE.
Revision 1.6 / (download) - annotate - [select for diffs], Wed Jul 2 00:00:23 2003 UTC (16 years, 7 months ago) by jtb
Changes since 1.5: +5 -3 lines
Diff to previous 1.5 (colored)
Update to version 2.1.3. The NEWS file contains around 650 lines of changes from 1.95.10, so I won't include it here.
Revision 1.5 / (download) - annotate - [select for diffs], Thu Jan 31 14:08:58 2002 UTC (18 years ago) by mjl
CVS Tags: pkgviews-base, pkgviews, netbsd-1-6-RELEASE-base, netbsd-1-6-1-base, netbsd-1-6-1, netbsd-1-6, netbsd-1-5-PATCH003, buildlink2-base, buildlink2
Changes since 1.4: +3 -3 lines
Diff to previous 1.4 (colored)
Update to 1.95.10. Changes are bug fixes in library classes: * kernel/Behavior.st: added a missing period * kernel/ExcHandling.st: added a missing period * kernel/RootNamespc.st: added a missing period
Revision 1.4 / (download) - annotate - [select for diffs], Sun Jan 20 01:32:55 2002 UTC (18 years, 1 month ago) by mjl
Changes since 1.3: +3 -5 lines
Diff to previous 1.3 (colored)
Update gnu smalltalk to 1.95.9 o improve SortedCollection performance and ensures that the Directory class>>#image method returns the *current* rather than the default image path. o fix a few bugs that were apparent when trying to extend base classes. o bugfixes in the I/O subsystem, missed a few I/O available events if many happened in a row. o The #(a b) syntax for symbols inside Arrays has been obsoleted, since 2.0 will parse it according to the ANSI standard. o Calls to the virtual machine from plugins, and objects that are passed as OOPs in call-outs, put OOPs in the incubator rather than in the registry; call-outs are wrapped in incSavePointer/incRestorePointer. o Command line parsing uses getopt and thus behaves exactly like other programs (previously there were some discrepancies) o Errors are signaled if a file specified on the command line is not found. o Events can be passed to the Smalltalk image via an ObjectMemory class. o Fixed bug in evalExpr and typeNameToOOP (gave a parse error). o Removed the `make optimize' mess. o Supported two additional ways to pass objects from Smalltalk to C: #selfSmalltalk and #variadicSmalltalk, which are similar to respectively #self and #variadic but pass raw object pointers to the C function instead of attempting automatic conversions. o #bindWith:... methods now accept other objects than Strings as parameters. o Complete hierarchy of exceptions, with more meaningful error message and possibility of more fine-grained exception handling. o FileStream calls are not blocking and can preempt the current Process. o FileStream handling has been rewritten; the buffering is now done by Smalltalk code rather than implied in stdio. Unbuffered file descriptor access (which used to be provided by UnixStream, defined by the TCP package) is provided by FileStream's parent, FileDescriptor. o Many methods in SystemDictionary were moved to ObjectMemory (a new class); the old ones are now deprecated. o SortedCollection's #includes:, #indexOf:, and #occurrencesOf: can check for objects that could not be inserted in the collection (e.g. an Integer in a collection of Strings). Fixed bugs in the same methods related to sort blocks for which sort-block equality (a <= b and b <= a) does not imply equality. o Support for init blocks will be removed in a future version, as it was replaced by the much more powerful ObjectMemory class. o The SystemDictionary>>#enableGC: method does not exist any more, since it only caused harm (the correct way to obtain its effect is to use the incubator, since what we want is to unregister a batch of many objects at the same time). o The TCP library does not poll the socket for I/O, but relies on the system's preemptive I/O facilities. As a result, the polling period methods in Socket have disappeared. o Usual round of bug fixes New goodies: o MD5 checksums o Perl regular expressions o Support for localization, internationalization and multiple character sets
Revision 1.3 / (download) - annotate - [select for diffs], Tue Jul 10 22:37:36 2001 UTC (18 years, 7 months ago) by mjl
Changes since 1.2: +4 -3 lines
Diff to previous 1.2 (colored)
Update to 1.95.4. Too many changes to list here (about a year of development)
Revision 1.2 / (download) - annotate - [select for diffs], Thu Apr 19 15:00:57 2001 UTC (18 years, 10 months ago) by agc
CVS Tags: netbsd-1-5-PATCH001
Changes since 1.1: +3 -2 lines
Diff to previous 1.1 (colored)
Move to sha1 digests, and add distfile sizes.
Revision 1.1 / (download) - annotate - [select for diffs], Tue Apr 17 11:32:04 2001 UTC (18 years, 10 months ago) by agc
+ move the distfile digest/checksum value from files/md5 to distinfo + move the patch digest/checksum values from files/patch-sum to distinfo
This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.