Release notes for EiffelStudio 5.2

Graphical environment

  • Added a status bar, which gives a lot of information, such as the state of the compilation or the name of the current project.
  • Clicking feature clauses in the feature tree now centers the editor on the selected feature clause.
  • More specific icons in the feature and cluster trees, so that identifying deferred classes and the nature of features is now straightforward.
  • Up to 10 external commands can now be defined and called from the Tools menu.
  • The new Quick compile command lets you recompile only the classes that have been edited in EiffelStudio, skipping the sometimes tedious degree 6, that looks for modified classes.
  • Control picking now has a configurable effect.
  • More improvements in usability and bug fixes.

Compiler

  • Click here for more details on compiler improvements and full Eiffel support on .NET

Debugger

  • Right-clicking on one of the run buttons will pop up a dialog enabling you to choose the command line argument (it is a shortcut for Project Settings-> Debug tab).
  • Expressions can now be dynamically evaluated in the debugger. ( info )
  • Conditional breakpoints. ( info )
  • Classes can now define debug_output , a feature inherited from DEBUG_OUTPUT , whose string result is automatically displayed in the debugger for all objects of that type. ( info )
  • Possible stack overflows can now be detected in the debugger before they occur. ( info )

Libraries

EiffelBase

  • Improved speed of search operations in ARRAYED_LIST and HASH_TABLE .
  • Reduced number of exported features in TUPLE .
  • Updated INTERNAL and TUPLE to accept INTEGER_XX based queries/commands.
  • STRING changes:
    • Fixed is_integer to return False for strings of the form "(-|+)[a-zA-Z]+[0-9]*)"
    • Improved speed of to_lower and to_upper .
    • Updated for ELKS 2001 conformance:
      • Changed signature of out and replace_substring to use STRING instead of like Current.
      • Added keep_tail , keep_head , remove_tail , remove_head and make head and tail obsolete.
      • Added string , same_string , has_substring , fill_with , insert_string , insert_character , as_lower , as_upper .
      • Modified make_from_string so that no sharing of internal string is done.
      • Made remake , replace_character and insert obsolete.

EiffelThread

  • Fixed crashes when using join or terminated from THREAD_CONTROL .

EiffelTime

  • Rewritten so that no additional C libraries is needed. Therefore you have to update your project configuration files to reflect this change, i.e. removing the include directory and the object file of the old EiffelTime library.

EiffelVision2

WEL

  • Changed type of non-exported feature internal_data of WEL_WINDOW from INTEGER to POINTER .
  • Fixed a GDI memory leak when creating/releasing instances of descendant of WEL_CONTROL .

Patch releases

Version 5.2.1402:

  • Put Windows and Unix version to the same version number.
  • Fixed EiffelWeb documentation and example.
  • Fixed minor issues found with EiffelVision2 on Unix and Windows which were affecting EiffelBuild.
  • Fixed incorrect configuration file specification for EiffelVision2 examples and wizards on Unix platforms where application could be linked dynamically with libpng but should not.
  • Fixed EiffelStore handle for Oracle so that it works fine when compiled with the Borland C compiler.
  • Fixed incorrect version number in VERSION file on Unix platforms.

Version 5.2.1313:

  • Fixed resource leak on Windows 98 and Windows Me.
  • Fixed incorrect implementation of area and substring for STRING in dotnet mode.
  • Fixed issue with setting of arguments. After restarting EiffelStudio the command line argument contains an extra ] character.
  • Fixed issue with working directories where only the first one ever set was used even if new ones have been set afterwards.
  • Fixed issue in IL code generation where having a class that inherits from a non-Eiffel .NET class. And the class has the following features:

a: ARRAY [like f] f: STRING is do end

Then you could neither load nor execute the generated code.

  • Fixed issue with incorrect C code generation of inspect instruction based on character values above 128.
  • Fixed bug in copy from STRING where following code was violating valid_count invariant from STRING :

local s, t: STRING do create s.make (9) create t.make (10) t.append ("1234567890") s.copy (t) end

  • Fixed incorrect C file naming when generating a .NET system that uses a C++ external (it should be .cpp, not just .c).
  • Enabled support for Borland C compiler in .NET.
  • Fixed issue where generating documentation for all/library cluster would stop during generation without completing.
  • Fixed crash in diagram tool when moving label on client/supplier link between two classes.

Version 5.2.1123:

  • Fixed issue when inheriting a .NET class that has some static constants defined.

Version 5.2.1122:

  • Fixed issue when opening the about dialog of EiffelStudio.
  • Enabled EiffelStudio for all users on a machine, not just for the one installing EiffelStudio.

Version 5.2.1118:

  • First initial release of EiffelStudio 5.2

Click here to check out what was new in other versions

cached: 03/18/2024 9:20:13.000 PM