Difference between revisions of "Release Notes (Versions history)"
Jump to navigation
Jump to search
Hzwakenberg (talk | contribs) |
Hzwakenberg (talk | contribs) m |
||
Line 61: | Line 61: | ||
** Some of the newer core libraries do not work very well when there is no GC |
** Some of the newer core libraries do not work very well when there is no GC |
||
** See the [https://savannah.gnu.org/bugs/?group=liberty-eiffel bugs page] |
** See the [https://savannah.gnu.org/bugs/?group=liberty-eiffel bugs page] |
||
− | |||
− | == SmartEiffel (all releases which are predecessors of Liberty) == |
||
− | |||
− | |||
− | === Release 2.3 [Antoine-Auguste Parmentier] - Wednesday July 11th 2007 === |
||
− | |||
− | Again, a lot of novelties for this release: |
||
− | |||
− | * New [[Typing policy|typing rules]] have been revisited and are now crystal clear. See [[Typing policy|this page]] for details. |
||
− | * Implemented a new [[class loading]] algorithm, which takes into account the "distance" between classes, thus reifying the notion of clusters and sub-clusters. |
Revision as of 20:40, 28 August 2018
Liberty Eiffel (latest release first)
For other upcoming releases see the list of names.
Curtiss (2018.dev, to be named after Glenn Curtiss)
- not yet released (see next section for current release notes)
- User-visible changes:
- redesign of eiffeldoc generated HTML to reduce its size dramatically
- addition of a zsh completer for se
- finally got rid of obsolete classes GEN_RAND, MIN_STAND and STD_RAND
- removed support for some unused legacy platforms (Amiga, Elate, BeOS, OS/2, Macintosh)
- obsolete keyword 'creation' now generates an error
- obsolete class READY_DESCRIPTION removed from sequencer cluster
- 'is_prime' feature added to class INTEGER_GENERAL
- 'is_fibonacci' feature added to class INTEGER_GENERAL
- C99 conforming C code generation (hopefully)
- Developer changes:
- RUN_FEATUREs now have clear names (hopefully)
- to better support the user access rights model of the more recent Windows versions, the config file is no longer written to a root directory but rather to %ALLUSERSPROFILE% or %USERPROFILE%
- Known bugs:
- see [1] for the full list
Bell (2016.05, named after Alexander Graham Bell)
- released in May 2016
- first release since Liberty Eiffel has become the official GNU Eiffel compiler
- User-visible changes:
- changed Environment Variable name from SmartEiffel to LibertyEiffel (anyhow, normally it should not be necessary to set this one)
- new tool Mock
- removed linebreaks in compiler output
- many bugfixes
- GC call at exit is optional
- generic creation
- agents are now closures
- finder now finds all classes in the universe with the given name, not only the first one
- keyword is at the beginning of a feature is now deprecated
- Added support for alias "[]" and alias "()"
- constants are now visible in the eiffeldoc generated documentation
- Known bugs:
- there is still an issue in both GC implementations (classical SEGC and BDW), if it shows up, it often yields a "Bad target type" runtime error.
- for the full list see [2]
Adler (2013.11, named after Charles Adler, Jr.)
- First release as Liberty Eiffel
- User-visible changes:
- Added NATURAL_8, NATURAL_16, NATURAL_32, and NATURAL_64 classes. See tutorial/natural.e for examples.
- Even low-level features (i.e. external "built_in") are now checking their assertions. As an example, division by zero is now checked by assertions.
- Inlined dynamic dispatch for better performance
- A missing export clause is deprecated. Use {ANY} instead.
- New core libraries: cli, json, log, parse (beware, these libraries are not yet tuned to be used without GC)
- Improved libraries: string (with notably a new FIXED_STRING class)
- Wrapper libraries: gtk, gdk, readline, ffi...
- A new tool that can generate mocks to help unit testing
- BDW GC support
- Collections implementation of is_equal changed to compare the contained objects using their is_equal functions instead of = (which was formerly the functionality of is_equal_map). The old functionality of is_equal is available by fast_is_equal.
- Developer changes:
- The web site now belongs to the repository
- Automatic testing tools (ET on the web, and watch_eiffeltest.sh in the shell)
- Automatic Debian packages generation
- Known bugs:
- BDW GC is not well tested; currently weak references seem not to work properly; and the GC is not run at program exit (it should run all finalizers)
- Sometimes SmartEiffel's native GC behaves wrongly, analysis is welcome
- Some of the newer core libraries do not work very well when there is no GC
- See the bugs page