EiffelStudio 6.0 Releases

Below are not the release notes of EiffelStudio. It is the change log of EiffelStudio intermediate releases and the most important changes are highlighted in green or in red (for breaking changes). The release notes of EiffelStudio can be found at the following URL. You can also download the latest revision here. Information about other version can be found under Category:Releases.

EiffelStudio 6.0.x Releases

You may want to read the official 6.0 release notes before diving in the change log of 6.0.

6.0.6.9618 (July 25th 2007, Maintenance Release)

Bug fixes

  • installer: Fixed issue where installer would not be able to detect that the Microsoft C++ compiler is installed.
  • studio: Fixed incorrect location of some library files when using Borland as a backend C compiler.
  • studio: Fixed bug#12065, bug#12549, bug#12635, bug#12756, bug#12955, bug#13134, bug#13164, bug#13175, bug#13240, bug#13282, bug#13283, bug#13317 regarding various aspects of the docking facilities of EiffelStudio.
  • studio: Fixed the slowness of the toolbar hovering on some Unix window managers.
  • studio: Fixed bug#12873 where the position of an undocked toolbar would change after saving a layout and restoring it.
  • studio: Completed Russian translation.
  • studio: Fixed bug#13260 where pick and dropping the result of a search in the editor would not scroll at the right position.
  • studio: Fixed bug#13281 where a tooltip in the feature tool would remain on screen and never go away.
  • studio: Fixed bug#12929 that configuration dialog for visible classes did not expand if translation was larger.
  • studio: Fixed bug#12989 that features tool did not sync with editor.
  • studio: Fixed bug#12904 hidden diagram was not updated when relations changed.
  • studio: Fixed some issues with completion on target which are a formal generic with multiple constraints.
  • studio: Fixed bug#12826 where True and False were not translated in the project settings dialog.
  • studio: Fixed bug#13156 that editor view reset to text view in flat mode.
  • studio: Fixed bug#12762 for not giving focus to address combo when loading a new tab with a class in it.
  • studio: Fixed bug#13262: Keyboard navigation is non-standard in the Debugger Objects tree.
  • compiler: Fixed an unresolved external C compilation error when finalizing.
  • compiler: Fixed bug#13319 where compiler would not recompile the descendant classes of a class which just removed one feature.
  • compiler: Fixed bug#13307 bad code generation for DLL in workbench mode.
  • debugger: Improved the content of the clipboard when copying data from the watch/objects tool.
  • debugger: Fixed bug#13207 where sometimes the profile was not remembered.
  • debugger: Fixed a potential memory corruption while debugging and evaluating expressions.
  • dotnet: Fixed code generation issue when an Eiffel generic class inherit from a .NET class.
  • dotnet: Fixed bug#13323 where .NET Namespaces were not properly matching the specification from the project configuration file.
  • vision2: Fixed bug#13278 in EV_APPLICATION which could cause the default exception dialog to repeat itself indefinitely.
  • vision2: Fixed an issue with EV_TEXT not accepting the newline character.
  • vision2: Fixed an incorrect reported line number given a caret position in an EV_TEXT.
  • vision2: Ensured that the selection is always visible in an EV_TEXT or EV_RICH_TEXT on Windows to match the GTK behavior.
  • vision2: Fixed issue where `select_actions' were called more than once when removing a menu item from a menu.
  • vision2: Fixed bug#13249 where {EV_PIXEL_BUFFER}.make_from_pixmap was not working properly.
  • vision2: Fixed bug#13277 where pick and drop would stop working on EV_ITEMs.
  • vision2: Fixed bug#13301 and bug#13318 on GTK where maximizing a window on some window manager would resize it larger than the screen, or resizing doing a window would go smaller than its minimum size.
  • com: Updated the EiffelCOM wizard so that it can better handle multithreaded context, especially when a callback is done in a thread that was not created by the EiffelCOM library.
  • metrics: Fixed bug#13214 where cloning a metric would not work.
  • metrics: Fixed bug#13216 where the various metrics would not appear when EiffelStudio loads a project and the metrics tool is shown.

6.0.6.9201 (June 19th 2007, Final Release)

Feature removed

  • Removed backup restoring mechanism when a crash occurs while editing a class. The backup file is still created but won't be automatically loaded in the editor.

Bug fixes

  • Fixed an issue when customizing toolbars that would cause EiffelStudio to crash when switching the language used.
  • Added missing release notes in the documentation.
  • docking: Fixed bug#13179: Clicking Toolbar Options twice in particular configuration causes crash
  • docking: Fixed bug#13197: Violation of precondition `has_a_widget' of {SD_WIDGET_TOOL_BAR}.set_item_width
  • docking: Fixed bug#13196: Violation of precondition `is_dragging' in {SD_TOOL_BAR_ROW_POSITIONER}.on_pointer_motion
  • docking: Fixed bug#13195: Call of `disable_capture' on Void target in {SD_TOOL_BAR_RESIZABLE_ITEM}.on_pointer_release
  • docking: Fixed bug#13123: Restoring toolbar layout after changing language crashes or goes into infinite loop

6.0.6.9141 (June 17th 2007, Father's day release)

Bug fixes

  • installer: (Windows) fixed use of renamed MO localization files with language selection.
  • docking: Fixed bug#13036: Typing control-Tab after closing all tools and editors causes crash
  • docking: Fixed bug#13050: Seg fault in {SD_TOOL_BAR_DOCKER_MEDIATOR}.inline-agent#1 of float_tool_bar_zone
  • docking: Fixed bug#13094: Precondition `not_void' of {SD_TAB_STATE_ASSISTANT}.update_last_content_state violated
  • docking: Fixed bug#13066: Docking and undocking windows often leads to two copies of one tool
  • docking: Fixed bug#13102: Violation of `has_parent' of {EB_SD_COMMAND_TOOL_BAR_TOGGLE_BUTTON}.text_rectangle
  • docking: Fixed bug#13099: Violation of precondition `is_tracing' of {SD_DOCKER_MEDIATOR}.on_pointer_motion
  • docking: Fixed bug#13070: Precondition is_tracing of {SD_DOCKER_MEDIATOR}.on_pointer_motion violated
  • docking: Fixed bug#13096: Precondition `enough_max_space' of {SD_TOOL_BAR_ROW_POSITIONER}.position_front_to_back
  • docking: Fixed bug#13065: Resizing main window small and forcing env into debug mode uses all memory

6.0.6.8996 (June 10th 2007)

New features

  • examples: Added a number of ported .NET SDK samples under <install>/examples/dotnet/sdk
  • installer: (Windows) Added checks and warnings for predefined environment variables.
  • installer: (Windows) Added checks, warnings and explanations as to why a MS C/C++ could not be configure automatically.
  • installer: (Windows) The installer now allows you to choose a default system language.

Bug fixes

  • compiler: Fixed eweasel test#tuple006 showing another failure of calling `deep_copy' on a TUPLE object.
  • compiler: Fixed crash of bug#12782 (eweasel test#incr284) and incorrect behavior when changing type of attribute (eweasel test#incr249).
  • studio: Fixed bug#12765: Error pane doesn't show if sliding panel and a compilation error occurs
  • studio: Fixed bug#11640 where after canceling a wizard the controls were enabled when they should not. Now we simply disable the whole window while the wizard is shown, this makes it easier.
  • build: Fixed bug#12920 where pressing a digit while dropping was not adding x-time the selected widgets (where x is the digit pressed).
  • vision2: Fixed bug#12538: EV_LABEL does not respect container EV_NOTEBOOK themes
  • vision2: Fixed a bug in `update_for_pick_and_drop' where `forth' was called on Current, rather than `internal_list' causing an infinite loop if you have an EV_TABLE and start a pick and drop. (This fixes EiffelBuild bug#12496).
  • vision2: Fixed bug where `key_press_string' actions were not called for a combo box. This was because when the internal version received the WM_CHAR message it was not sent to the parent container. This fixes bug#13043.
  • docking: Fixed bug#12738: Resetting tools layout after auto-hiding all tools causes crash
  • docking: Fixed bug#12427: Switching to Force Debugger Mode and back crashes if auto-hidden tools
  • docking: Fixed bug#12558: Closing undocked Project toolbar while customizing it makes reshow fail
  • docking: Fixed bug#12213: Undocked window title not visible on Solaris SPARC with CDE when focus elsewhere
  • docking: Fixed bug#12550: Customizing undocked toolbar with one row splits it into two rows
  • docking: Fixed bug#12968: Breakpoints do not display
  • docking: Fixed bug#12957: Seg fault in parent called from {SD_OPEN_CONFIG_MEDIATOR}.open_tools_config
  • docking: Fixed bug#12956 Seg fault in {SD_NOTEBOOK}.select_item
  • docking: Fixed bug#12958: Editor tab fails to move or gets wrong cursor
  • docking: right click menu showing on pointer release actions instead of pointer press actions on GTK.
  • debugger: Fixed bug#12934 where the debugger would cause a memory corruption in a running multithreaded program.

Developer changes

  • studio: A new variable ISE_LANG has been introduce to set the default initialization language.

6.0.6.8843 (June 3rd 2007)

Bug fixes

  • estudio: Fixed bug#12812: Locked status of tools, toolbars, editors is wrong after opening saved layout
  • vision2: Fixed bug#12898: Right-clicking on Start button brings up button display/customize toolbar menu
  • docking: Fixed bug#12824: Postcondition violation in docking
  • docking: Fixed bug#12810: Sequence of layout saves/opens and switching to debug mode causes layout open error
  • docking: Fixed bug#12834: Minimized editor does not show the line
  • docking: Fixed bug#12896: Undocked toolbar Customize button brings up one customization window per click
  • docking: Fixed bug#12926: Moving item from one undocked toolbar to another while customizing causes crash
  • docking: Fixed bug#11828: No all toolbar buttons are available from 5.7
  • docking: Fixed bug#12330: Three simple docking moves causes crash

Developer changes

  • install: .NET precompiled libraries now exist in $ISE_PLATFORM-dotnet directories to support side-by-side merged x86 and x64 installations and future support for .NET on other non-Windows platforms.

6.0.6.8703 (May 27th 2007)

New features

  • compiler: Implemented bug#12380 by adding the platform value as part of the version info of the compiler. This will prevent trying to load a project compiled for a different platform instead of failing with a retrieval error.

Bug fixes

  • compiler: Fixed bug#12822 where the size of EIFGENs had multiply by 3 or more for large projects. Bug was introduced at the 6.0.6.7358 release.
  • compiler: Fixed bug#12823 where specifying a target in a different case than the lower case version of the actual target name would fail to find the target in your configuration file.
  • compiler: Fixed bug#12788: Compilation without configuration crashes if .ecf file exists.
  • runtime: Fixed a memory corruption which would occur once an invariant has been violated.
  • dotnet: Fixed issue where if you have a .NET class called Object, the compiler will confuse it with SYSTEM_OBJECT.
  • elks: Fixed bug#12843 with incorrect implementation of ARRAY.do_all_with_index and ARRAY.do_if_with_index.
  • elks: Fixed bug#12837 by removing duplicated postconditions in STRING_XX.substring (XX is either 8 or 32).
  • thread: Fixed bug#12838 where on Linux you could not create more than 2^15 threads even if they all exited. Now we force creation of threads in a detached mode to allow more than 2^15 thread creations.
  • wizards: Fixed bug#12837 where closing the wizard window from the cross on the window title bar would render EiffelStudio unresponsive.
  • docking: Fixed bug#12727 Unprotected agent in idle_actions in {SD_WINDOW}.initialize
  • docking: Fixed bug#12757 Customizing Standard buttons tool bar causes crash
  • docking: Fixed bug#12758 Seg fault in {SD_HUFFMAN_ALGORITHM}.next_best_grouping
  • docking: Fixed bug#12759 Saved layout has toolbar restored with wrong shape after docked vertically
  • docking: Fixed bug#12795 "Close All" on mulitple tabs crashes
  • docking: Fixed bug#12807 Seg fault in {SD_TAB_ZONE}.prune
  • docking: Fixed bug#12806 Docking tab context menu shown after action has been performed
  • docking: Fixed bug#12759: Saved layout has toolbar restored with wrong shape after docked vertically
  • docking: Fixed bug#12840: right-clicking on debug button to open execution settings violates a precondition
  • estudio: Fixed bug#12754 Nonexistent pixmap file for custom formatter makes original pixmap overlap neighbor
  • estudio: Fixed bug#12805 Clicking in Editor tab while Address bar completion list displayed causes crash
  • estudio: Fixed bug#12819 address manager crash when losing focus
  • estudio: Fixed bug#12779: Preferences are ordered according to their English names.
  • estudio: Fixed bug#12447: Dialog for task condition is too small after translation.
  • debugger: Fixed bug#12809: Changing environment variable to empty in Debugging Options causes crash
  • debugger: Fixed bug#12803: Unable to evaluate .NET function call
  • debugger: Fixed bug#12750: Stack overflow not working on Linux
  • debugger: Fixed bug#12531: Froce debugger session is enabled for .NET dlls
  • debugger: Fixed bug#12829: Multiple problems with command line debugger
  • configuration: Fixed bug#12814: Configuration: trying to add a new variable leads to crash (or assertion violation)


User changes

  • studio: changed the diagram default color from light yellow to white for consistency with the other tools background color.

6.0.6.8510 (May 20th 2007)

Bug fixes

  • studio: Fixed add assemblies dialog not showing assemblies such as mscorlib on 64 bit systems.
  • studio: New blank project wizard correctly sets focus to the system name.
  • studio: Fixed crash while displaying flat of routines containing a bracket operator.
  • debugger: Fixed bug#12725: Crash debugging .NET application call on Void which was preventing debugging dotnet system.
  • debugger: Fixed bug#12626: Object viewer is not read only
  • debugger: Completed support for creation of instance of class (including generic on classic AND .NET). Also completed support for manifest TUPLE, and manifest ARRAY. (For now creation of SPECIAL are forbidden).
  • debugger: Fixed bug#12717: (create {SPECIAL [NATURAL_8]}.make (10)).put (1, 1) expression crashes debugger. (For now creation of SPECIAL are not supported).
  • debugger: Added support for static routine evaluation for debugger.
  • debugger: Fixed bug#12604: Evaluating watch expression which is static access of external fails
  • debugger: Fixed bug#12705: Debugger cannot launch application if environment variable added
  • debugger: Fixed bug#12691: Object Viewer windows not shown relative to debugging window
  • debugger: Fixed (part of) bug#12696, Now if an auto expression has an error, the expression won't be displayed
  • debugger: Fixed bug#12723: Edit Expression button brings up 'New Expression' dialog
  • debugger: Fixed issue with .NET 2.0 to get the System.String's text.
  • debugger: Fixed bug#12724: Restart option not available in Debug Menu

User changes

  • compiler: Class names which don't match the source filename emit a warning

Developer changes

  • studio: Installed .NET precompiled libraries now use optimized parent precompiled libraries, when applicable.
  • studio: Add Assembly configuration dialog can now be used with a mouse wheel.
  • studio: Add Assembly configuration dialog now sorts items irrespective of case.
  • studio: New blank project wizard has been updated to use better default names.
  • studio: All wizard creating .NET targets set the applicable target's 'dotnet_naming_convention' setting to 'True'

6.0.6.8277 (May 13th 2007)

New features

  • debugger: Added support for instantiation of class (including manifest TUPLE, and manifest ARRAY) on debugger expression evaluation (all platforms).
  • studio: End user can directly resize address bar combo boxes by dragging the end of them.

Bug fixes

  • studio: Fixed bug#11927: Address manager combo boxes too small
  • studio: Fixed bug#12648: Focusing crash that I receive from time to time
  • studio: Fixed bug#12644: Context tool navigation bar does not close (Windows)
  • studio: Fixed bug#12652: Context menu key does not work in Feature Relation tool
  • studio: Fixed bug#12650: Context menu key would not work if cursor is at the beginning of a pickable item. Fixed Ctrl+F3 problem when cursor was at the end of a word.
  • studio: Fixed bug#12628: Project settings will now check the validity of the specified root cluster as otherwise entering invalid characters would render the configuration file unparsable.
  • studio: Fixed bug#12600: With very large fonts, the toolbar container the combo boxes for entering a class name and a feature name would be truncated.
  • docking: Fixed bug#12609: Debugger fails to break on Linux
  • docking: Fixed bug#12656: Undocked tools not closed when window closed, leading to crash
  • docking: Fixed bug#12611: Unmatched inspect value in {SD_TOOL_BAR_MANAGER}.tool_bar_container
  • docking: Fixed bug#12651: Dockable toolbars rearranged automatically on Linux
  • compiler: Fixed bug#12698: Compiler will not process target extension properly if not specified in lower case.
  • library: Fixed bug#12379: Bug in {TUPLE}.is_equal which would compare to True all tuples with one element.

6.0.6.8140 (May 5th 2007)

New features

  • studio: Integrated and activated contextual menus.
  • debugger: Added support for instantiation of class (and TUPLE) on debugger expression evaluation (except for generic type on .NET).
  • debugger: It is now possible to change the order of 'Current, arguments, locals, ...' in the objects tool's grid.
  • docking: Improved docking library tool bar and notebook Linux theme drawers. Now it support clearlook themes, and load style from resources.

Bug fixes

  • debugger: Fixed bug#12509: Cannot display locals and arguments before current object
  • debugger: Fixed bug#12516: Set Slice Limits button brings up one window per click if Objects window undocked
  • debugger: Fixed bug#11473: Problem evaluating TUPLE in debugger watch tool (classic only)
  • debugger: Fixed bug#12169 : Hit count shown in Breakpoints tool not zeroed when execution ends
  • debugger: Fixed bug#12587: Hexadecimal display not working on NATURAL_16 and NATURAL_8
  • debugger: Fixed bug#12554 : Trying to show breakpoints in command line debugger causes seg fault
  • studio: Fixed bug#12563: Customized formatters in Dependency tool are not displayed.
  • docking: Fixed bug#12519: Crash when rearranging editor tabs
  • docking: Fixed bug#12547: "Categorize classes in folder" button in Dependency tool has no effect
  • docking: Fixed bug#12522: Error wizard does not work anymore (Docking issue)
  • docking: Fixed bug#12574: White background in features tree toolbar icons
  • docking: Fixed bug#12485: EiffelStudio hangs after typing Ctrl+Tab
  • vision2: Fixed issue where a context menu would cause the window beneath to loose its focus on Windows.
  • compiler: Fixed bug#12565: a wrong EIFFEL_NAME_ATTRIBUTE would be generated on .NET.
  • compiler: Fixed bug#12591: compiler would not find classes from library referenced deeply using relative path. The other side effects is that the path in the title window of a class will not contain `.' or `..'.

User changes

  • runtime: Now the retrieval of objects is done with the GC (garbage collector) disabled.

6.0.6.8021 (April 29th 2007)

New features

  • studio: Made "Lock The Tools" lock tools only, and added new menu item "Lock the Editors"
  • docking: Added `pebble_function’, `accept_cursor,’ `deny_cursor.’ and related setting features to SD_TOOL_BAR_ITEMs

Bug fixes

  • studio: Fixed bug#11497 Showing exported feature for a .NET Enum produces stack trace.
  • studio: Fixed bug#11784 EiffelStudio crashes when hovering over .NET features in the class tool
  • studio: Fixed bug#12507 Show List shows all tools in zone instead of just those that are not visible
  • studio: Fixed bug#12540 Closing undocked toolbar while in debugger causes crash
  • studio: Fixed bug#12530 A second unreproducible exception trace moving toolbars
  • studio: Fixed a lot of new tool bar buttons were not droppable.

6.0.6.7948 (April 22nd 2007)

New features

  • studio: Replaced all native tool bars (EV_TOOL_BAR) with Smart Docking library tool bars (SD_TOOL_BAR).
  • docking: Tab navigation working on docking tabs. And user can use left/right button to navigation tabs when tab area has focus.
  • studio: Show search report after searching in customized scope or whole project.

Bug fixes

  • EiffelStore: Fixed bug#12478: SQL_SCAN is made generic to overcome a creation readiness problem. This is a breaking change and you might need to update your code.
  • docking: Fixed bug#12389: "Reset tools layout" in debug mode does not do what I am expecting.
  • docking: Fixed bug#12449: Docking is crashing in the .Net environment.
  • docking: Fixed bug#12485: EiffelStudio hangs after typing Ctrl+Tab.
  • docking: Fixed bug#12408: Clicking on "X" restores Editor tab instead of closing it if tab is minimized.
  • estudio: Fixed bug#12448: EiffelStudio does not exit if text in an inactive editor tab is modified.
  • metrics: Fixed bug#12493: metrics: issue with ancestor_is and 'feature' metric
  • metrics: Fixed bug#12495: callers, assigners, creators have the same pixmap (idem for callees, assignees, createes)
  • debugger: Fixed bug#12476: Multiple problems with setting debugger arguments
  • debugger: Fixed bug#12481: Errant character when copying call stack to clipboard
  • studio: Improved memory management.
  • studio: Fixed bug#12484 that one could not refocus Clusters tool via shortcut.
  • studio: Fixed bug#12491 that search found a class twice in report.
  • i18n: Fixed the problem that C was not accepted as locale id on Unix systems.

6.0.6.7849 (April 15th 2007)

New features

  • compiler: The notion of creation readiness according to ECMA Eiffel standard (2nd edition, chapter 8.12.12) is implemented.

Bug fixes

  • compiler: Fixed bug#12464: If a generic derivation in a deferred class uses `like Current' as generic parameter the creation constraints are not enforced on that particular formal.
  • debugger: Completed implementation for dotnet system: bug#12435: Evaluating an expression still checks for invariant.
  • debugger: Fixed bug#12435: Evaluating an expression still checks for invariant
  • debugger: Now it is possible to disable/restore assertion checking during debugging in classic AND dotnet system.
  • debugger: Fixed bug#12461: "Run Workbench" fails if no environment variable had been added.
  • debugger: Fixed bug#12442: Selecting Debug/Exception handling for uncompiled project causes crash
  • debugger: Fixed bug#12443: Run Workbench button in Debugging Options window does not work when app melted
  • studio: Improved memory management.

6.0.6.7775 (April 9th 2007)

New feature

  • vision2: ability to save an EV_PIXEL_BUFFER or to convert it to EV_PIXMAP.
  • wel: Added ability to convert image formats among all image formats on Windows (using WEL_GDIP_BITMAP).

Bug fixes

  • debugger: Fixed bug#12435: Evaluating an expression still checks for invariant (classic only)
  • debugger: Fixed bug#12443: Run Workbench button in Debugging Options window does not work when app melted
  • vision2: Fixed bug bug#12113: I'd like to be able to save an EV_PIXEL_BUFFER into a file
  • estudio: Fixed bug bug#12437: Previous docking layout are not valid

Developer changes

  • Set .NET namespaces on all ISE libraries to be as terse and coherent as possible.
  • .NET precompiled libraries binary names have been changed to fit present naming for .NET assemblies.

6.0.6.7670 (April 1st 2007)

New features

  • studio: Added ability to add new classes/clusters/assemblies early on in the compilation phase instead of waiting for a successful compilation.

Bug fixes

  • dotnet: Implemented suggestion from .NET_Namespace_Generation.
  • dotnet: Fixed bug#12433 where editing a class in EiffelStudio would change its generated namespace and thus invalidating the generated assembly (recompilation from scratch was necessary).
  • Vision2: Made sure that Windows and Unix behave the same way regarding widget navigation when one has set the default_key_processing_handler. The behavior is that if it is set, then the tab processing will be disabled if it returns True.
  • debugger: Fixed (again) bug#12371: Feature Relation window not scrolled to current line in debugger
  • debugger: Implemented suggestion bug#12395 :No splitter by default
  • debugger: Added start workbench and finalized system on Debugging option dialogs
  • debugger: Fixed bug#11688: Compiling all classes under .NET with EXE generation hangs debugger
  • estudio: Fixed bug#12203: Open Layout window disappears first time View/Open Layout is selected
  • estudio: Fixed bug#12164: Large Fonts not respected in all widgets
  • estudio: Fixed bug#12121: Wrong cursor if undock window operation in progress when compile ends
  • estudio: Fixed bug#12036: Enter on a category in the Features tool does not focus the Editor
  • estudio: Fixed bug#12104: Docked tracking preference ignored
  • estudio: Fixed bug#12134: Auto Hide button should have different tooltips for enable/disable
  • estudio: Fixed bug#12327: Closing Editor tab makes Clickable, Flat etc buttons insensitive
  • docking: Fixed bug#12103: Estudio doesn't remember layout correctly if force debugger mode or maximize a tool
  • docking: Fixed bug#12241: Hiding Address tool bar and reshowing it causes it to appear on Project tool bar row
  • docking: Fixed bug#12260: Hiding toolbars leaves vacant space at bottom
  • docking: Fixed bug#12114: Bringing up undocked window via View/Tools unmaximizes other too


Developer changes

  • visioon2: Added new class EV_BEEP which can make system default beeps.

6.0.6.7522 (March 25th 2007)

New features

  • studio: Add assembly dialog assembly entires are now placed in columns. Added columns for the assembly path and processor architecture.
  • studio: Added support for multi constraint code completion.

Bug fixes

  • debugger: Fixed bug#11558 about evaluation of expressions involving NATURAL_XY values
  • installer: (Windows) Fixed bitmap scaling issue for large fonts.
  • Fixed the problem that Precursor {CLASS}.* only showed once routines.
  • Fixed the problem that Result [i].* didn't work.
  • Fixed the problem that Precursor {NEW_CLASS_3} [1].* didn't work.
  • Fixed the problem that {INTEGER}.max_value.* didn't work.
  • Fixed bug#12323 changing class name and then canceling Class Rename crashes estudio.
  • Fixed bug#12331 Windows window showed two windows instead of one after exit and restart.
  • Fixed bug#12347 that deleting a class displayed in an editor tab caused crash.
  • Fixed a bug that initial dropping a cluster to diagram tool did nothing.
  • Fixed bug#12299 that compiling lost diagram tool when targeted to a cluster.
  • Fixed bug#12355 that selecting homonyms format for feature caused crash.
  • Fixed the bug that shortcut for an initial or edited external command did not work.
  • Fixed bug#11879 that show all docking indicators preference only respected when setting it.
  • Fixed bug#12324 that main window resizes after loading project.
  • Fixed bug#12118 that closing auto hidden tools during debugging leads to estudio crash.
  • Fixed bug#12120 that particular docking layout causes crash in {SD_STATE_VOID}.move_to_docking_zone.
  • Fixed bug#12339 that crash when rearranging editor tabs using mouse.
  • Fixed bug#12235 that toolbar text blurs when exposed on linux.
  • Fixed Eiffel Studio starting flicker problem, there is only 1 time flicker during the whole Eiffel Studio starting process now.

6.0.6.7358 (March 18th 2007)

New features

  • studio: Added configurable shortcuts for history back and forth.
  • studio: Added ability to remember show/hide formatting marks status.
  • studio: Made Eiffel Studio can open into debug mode directly.
  • studio: Disable fading effects for Eiffel Studio splash screen and disabled auto hide animations on remote desktop.
  • debugger: new object viewer tool. (to replace the pretty or expanded display dialog)
  • compiler: Added support for multiple constraints in formal generic parameters.
  • docking: Made docking library title bar drawing text position care about font size.


Bug fixes

  • compiler: Fixed issue with incorrect labeled tuples which were not detected in signature of features (see eweasel test#tuple008).
  • compiler: Fixed crash when checking an incorrect labeled tuple (e.g. TUPLE [a, a: INTEGER]) (see eweasel test#tuple009).
  • studio: Fixed bug#12083 where classes in override clusters would not get recompiled properly when automatically saved by EiffelStudio when requesting a compilation.
  • studio: Fixed display of public key token on add assembly dialog.
  • studio: Improved show/hide formatting marks command. This command only functioned on current editor and when current editor switched the name was not displayed correctly. Now it functions on all editors of current window.
  • studio: Fixed bug#12256 that dependency tool could not close.
  • studio: Fixed bug#12261 that find was broken, and added Home/End actions to the report grid.
  • studio: Fixed bug#12264 that first column of preference grid was too narrow.
  • studio: Fixed a bug that Alt+Left/Alt+Right didn't function on diagram tool and dependency tool.
  • studio: Fixed a bug that address history forth command was always disabled in diagram tool.
  • studio: Fixed bug#12258 that completion window was brought up by dot after a number.
  • studio: Fixed the bug that shortcut for class completion triggered feature completion window in completable text fields (i.e. Watch tool, conditional breakpoint dialog).
  • studio: Fixed bug#12037: Post condition violation at {EB_SMART_EDITOR}.refresh_line_number_display
  • studio: Fixed bug#12013: View | Toolbars indicates wrong state for hidden toolbars
  • studio: Fixed bug#12102: Search tool Options section cut off and mostly not visible
  • pref: fixed bug#12183: Filter in preferences window is case-sensitive but should not be
  • pref: fixed bug#12184 : Changing value of boolean preference when filter in effect causes crash
  • debugger: Fixed bug#12195: Trying to save exception dialog when in Force Debugger mode causes crash
  • debugger: Fixed bug#12194: Copying call stack to clipboard in Force Debugger mode causes crash
  • debugger: Fixed bug#12265 : Ctrl+Alt+W used by the Debug - Show object viewer tool
  • debugger: Fixed bug#12267: Multiple problems with Object Browser window (except for the width of the "Select Viewer" button, it seems a vision2 issue)
  • debugger: Fixed bug#12283: Confirmation improvement and wrong preference category
  • debugger: Fixed upper slice value for string display box.
  • debugger: Fixed bug#12246: continue on cond breakpoint failure does not seem to work with Not Yet Called once
  • debugger: Fixed bug#12170: Run to This Point doesn't stop unless hit count matches
  • debugger: Fixed bug#12251: Saving exception message from debugger gives no error when permission problem
  • debugger: Fixed suggestion bug#12230: Switch arguments and working directory in Debugging Options dialog
  • debugger: Allow to save a file without the extension; fixed bug#12293: Estudio insists on adding ".txt" when save exception message from debugger
  • debugger: Fixed issue with data associated with debugger grid line. A few internal data were not reseted when the expression's text was changed in the watch tool.
  • debugger: Fixed bug#12257 : Watch expression that is constant real expression evaluates to 0
  • vision2: Fixed bug#12210 where a pixmap will not be copied when assigned to a menu, and therefore you would get the same pixmap for all menu items instead of different ones.
  • docking: Fixed bug#11870: Default layout for toolbar is not properly left aligned.
  • docking: Fixed bug#11941: Dockable toolbars can have their handle placed so it cannot be accessed
  • docking: Fixed bug#11944: Dragging tabs to re-order is not stable
  • docking: Fixed bug#11829 CTRL+TAB selector item spacing/clipping
  • docking: Fixed bug#11962: Postcondition violation in `make' of SD_NOTEBOOK_HIDE_TAB_DIALOG
  • docking: Fixed bug#11970 Please add a tooltip to the Editor's class name tab
  • docking: Fixed bug#11974: Address Toolbar customisations are lost
  • docking: Fixed bug#12031: Another Internal Error on typing Ctrl+Tab
  • docking: Fixed bug#12078: Internal Error halting debugger
  • docking: Fixed bug#12090: Minor problems with resizing undocked windows
  • docking: Fixed bug#12307: Window below editor doesn't return to original size after running application.(same as bug#12312)
  • docking: Fixed bug#12091: Clicking "X" to close Editor tab often has no effect
  • docking: Fixed bug#12117: Auto hiding tools then stepping to start debugger crashes estudio
  • docking: Fixed Eiffel Studio on Linux hanging after just started undock a Window which is caused by a previous bug fixing.


Developer changes

  • configuration: Changed STRING_PROPERTY and STRING_CHOICE_PROPERTY to drop the generic parameter and use a value of STRING_32 all the time.

6.0.6.7183 (March 11th 2007)

New features

  • studio: Added ability to configure shortcuts
  • studio: Auto-completion after bracketed expression. i.e. arr [i].*
  • studio: Set editors’ description and details in Ctrl + Tab dialog.
  • studio: When no class are edited, dropping a class or feature stone in the empty grey box of the editors will open a new editor related with the stone
  • compiler: Supported reattachment of generic derivations with expanded parameters to generic derivations with reference parameters on .NET.
  • compiler: Added option for full class checking. It can be enabled at the system, cluster or class level. However not all our code has been compiled with this option so don't be surprised if you get errors in our libraries. The next release should fix all the remaining issues.
  • compiler: Added Compilation Without Configuration for simple projects.
  • docking: Implemented lock toolbars and lock tools docking mechanism feature, and added related two new menu items under View menu.
  • docking: Draw an extra floating title bar baseline to make it beautiful.

Bug fixes

  • studio: Fixed a bug that Ctrl + f4 didn't close debugger tools (call stack, object, watch and thread)
  • studio: Fixed bug#12216 that %B from editing text was taken as an instruction.
  • studio: Fixed bug#12208 of search report display issue. Improved its mouse/keyboard behaviors and interface a little bit.
  • studio: Fixed bug#12202 that linked tools did not update when auto hiding.
  • studio: Fixed bug#12185: Crash with old docking layout files
  • studio: Fixed bug#12212: Refactoring menu is missing
  • docking: Fixed bug#12164: Large Fonts not respected in all widgets
  • docking: Fixed bug#12158: Text labels disappear on panes docked to the side
  • docking: Fixed bug#12197: issue with maximized editor
  • docking: Fixed bug#12189: Undocked window comes back very small when shown again.
  • docking: Fixed bug#12228: Breakpoints window toolbar truncated
  • docking: Fixed bug#12225: Windows key messes docking indicators.
  • docking: Made double click to maximize feature works fine on Linux.

6.0.6.7079 (March 5th 2007)

Bug fixes

  • studio: Fixed issues with the way we launched finish_freezing.exe on Windows, we were not protecting the path to the executable against white spaces.
  • debugger: Fixed issue which would prevent debugging if ISE_EIFFEL has spaces in it.
  • install: Fixed incorrect shortcuts on Windows.

6.0.6.7057 (March 3rd 2007)

New features

  • compiler: we are now using FreeELKS as a replacement for EiffelBase
  • estudio: Made Window Eiffel Studio splash screen beautiful.

Bug fixes

  • install: (Windows) fixed fatal error bug#12146 when attempting to browse for a folder.
  • install: (Windows) fixed radio button background color different as best possible given the limitations of MSI.
  • install: (Windows) pressing Back on the installed when on the Precompilation Choice page goes to the correct parent page instead of the Configure C/C++ Compiler page.
  • compiler: Fix bug in .NET resx => resource generation by the compiler when using resx files with relative paths.
  • compiler: Adapted the compiler so that ISE_EIFFEL does not need to be defined with a short path name on Windows, since some file systems can disable support for short path

names.

  • studio: various bug fixes with the docking.
  • vision2: Fixed issue where hiding a widget in an EV_FIXED and changing its position would not be reflected when showing the widget later.
  • base: Fixed issue with LINKED_QUEUE.twin which would violate its invariant.
  • base: Revisited contracts of LINEAR_ITERATOR.
  • docking: bug#11981: Cannot put window from another application in front of undocked window
  • estudio: bug#12076: Refresh issue on Start/Continue button
  • docking: bug#12096: Sliding panel tools cause an unsightly redraw when revealed when on the right side on gtk
  • docking: bug#12098: Disable text in docking toolbar on linux doesn't look disabled
  • docking: bug#12099: Particular docking layout crashes estudio on exit
  • docking: bug#12111: Toolbars disappear after running debugger
  • docking: bug#12067: Estudio crash in {SD_TAB_STATE}.make called from move_to_zone_internal
  • docking: bug#12126: Maximizing tool then closing it closes other tools and makes them unavailable
  • docking: bug#12132: Estudio doesn't restore normal/debug layouts within same session
  • docking: bug#12138: Sequence of saving, opening and resetting tools layout causes crash
  • docking: bug#11984: Text on many buttons in estudio main window cut off at bottom
  • vision2: bug#11989: Unintuitive behavior when trying to move an undocked window
  • vision2: bug#12071: Auto Hide of window before pick ends hangs estudio, then F7 crashes it
  • vision2: bug#12143: Window titles in title bar not visible when window has focus

User changes

  • install: (Windows) removed information, on the welcome page, about setting up a C/C++ compiler if a compiler is detected.
  • estudio: Improved background color of Linux editor place holder zone.

Developer changes

  • docking: Added proprogate accelerator in SD_DOCKING_MANAGER.
  • docking: Added SD_CONTENT.update_mini_tool_bar_size.

6.0.6.6895 (February 25th 2007)

New features

  • Added the feature requested at bug#12046 that Ctrl+F3 searches current word if no text is selected.
  • Internationalized choices in interface.development_window.ctrl_right_click_receiver and tools.search_tool.init_scope.
  • debugger: Added "rescue" indicator in call stack tool's grid.
  • debugger: Added the possibility to evaluate an instruction with the debugger (i.e: procedure call).
  • compiler: Support for FreeELKS as a replacement for EiffelBase.
  • studio: Now we can exit directly from debugging mode, no changing to normal mode needed.
  • docking: SD_TOOL_BAR_CONTENT has new feature "unique_title" for store data, and using feature "title" for display.
  • install: (Windows) Installer detects and configures a resident VC/VC++ compiler and provides/hides options based on what it found.
  • install: (Windows) Precompilation is disabled if a VC/VC++ could not be configured to prevent creation of bad precompiled libraries.
  • install: (Windows) x64 version no longer displays the option for installing the Borland C compiler because it's for x86 compilations only.
  • install: (Windows) In the event of no C/C++ compiler found help is now link-provided to obtain a the free Windows SDK.
  • install: (Windows) new installers with compact look and feel and better auto-configuration.

Bug fixes

  • studio: Fixed bug#5437 that Shift+End selects too much text.
  • studio: Fixed the bug that menu commands like Cut, Copy, Paste and Select All and sub commands of "Search" didn't work consistently as their shortcuts did. i.e. "Select All" always selected texts in main editor, but Ctrl+A did correct thing that was select all texts in the editor where focus was.
  • studio: Fixed a bug that when dropping a stone to the editor, confirmation on saving a read only class didn't prevent the stone from loading, which means that the modified class got lost in this case.
  • studio: Fixed bug#12050 that EiffelStudio crashed when trying to save a file that you didn't have write access to. Open a Save As dialog if .swp file is not creatable.
  • studio: Fixed bug#12053 that Toggle Line Numbers and Go to didn't show correct sensitivity.
  • studio: Fixed bug#12029 that es crashed when reopening ES with general.locale changed from English to Chinese.
  • studio: Fixed bug#12061 that synchronization button not showing the proper tool. Now we try to synchronize the feature displayed in the combo box. (We only synchronized the stone.)
  • studio: Fixed a crash when updating viewpoints.
  • studio: Fixed bug#12068 and bug#12069, crashes when there was no editor.
  • debugger: fixed issue with native_array unable to be resized with slices tool. (dotnet debugger)
  • compiler: Fixed bug#11936 where namespace names included the cluster name when a cluster defined a namespace.
  • studio: Fixed bug#11987 that Closing Class tab crashes estudio after move to Clusters
  • studio: Fixed bug#12054 that Crash when select Editor window after exiting debugger
  • studio: Fixed bug#12000 that Particular docking layout causes estudio to crash at startup
  • studio: Fixed bug#11998 that Wrong tooltips on many Project tool bar buttons - say Show/Hide
  • studio: Fixed bug#11873 Breakpoint tool content not refreshed when switching to debug mode
  • docking: Fixed bug#11960 Alignment issues
  • studio: Set docking window title bar height, tool bar height a little bit bigger for Linux specially.
  • docking: Make hide tab indicator correct and tool bar drawing style correct for Linux implementation.
  • studio: Fixed bug that hidden tab dialog position not correct on Linux.
  • studio: Fixed bug that minimum height of docking (not tabbed) editor not correct on Linux.
  • docking: Fixed bug that select a tab from hidden item drop down menu, SD_CONTENT.focus_in_actions not been called.
  • docking: Fixed bug that close button of editor tab position not correct if not enough space.
  • docking: Fixed bug that close button of editor tab state not updated correctly sometimes.

User changes

  • debugger: the call stack tool now display a special icon when on feature with rescue cause.
  • studio: Changed shortcut for Cluster tool to Ctrl+Alt+U.
  • studio: Fixed bug#11998: Wrong tooltips on many Project tool bar buttons - say Show/Hide
  • studio: Fixed bug#12048: Please improve the Debug | Tools menu

Developer changes

  • studio: Improved the way of saving context session data. We save ids of the feature/class targeted in tools.

6.0.6.6595 (February 11th 2007)

New features

  • compiler: (windows) finish_freezing.exe now looks for the installed Windows SDK recently released from Microsoft. If installed, there is no need to perform any manual C-compiler configuration.
  • studio: Dependency tool tab receives stones.
  • build: Code generation will includes the facility of closing the application when last window is closed.

Bug fixes

  • studio: Fixed bug#12016 where EiffelStudio would crash when trying to debug an application after cancelling a finalization.
  • debugger: fixed "restart" feature which was broken in last release.
  • debugger: fixed "DEBUG_OUTPUT" processing in debugger for dotnet system.
  • debugger: fixed issue with "do not close ecdbgd" when the user decides to reuse the same "ecdbgd" process, be sure to reuse it.
  • debugger: fixed bug#11928 and more general issue with exception on framework .NET 3
  • studio: Fixed bug#11969 that diagram tool did not link to the editor (Neither dependency tool).
  • studio: Fixed bug#12003 that Pick and drop of a parent class in the feature tool targeted to class view instead of showing ancestor.
  • studio: Fixed bug#12018 that changing shortcut preference of external commands crashed es.
  • studio: Improved history behaviors mostly according to History behavior except the preference.
  • studio: Fixed a crash that opening ES with a group opened last time closing.
  • studio: Fixed the bug#11959 that after refactoring a class with file name changed was not correctly reloaded.
  • studio: Fixed bug#12002: Boolean Preferences cannot be edited via the keyboard
  • studio: Fixed bug#12006: Shortcut Preferences cannot be edited via the keyboard
  • studio: Fixed bug#11827: Extra padding on right for "Customize" toolbar menu
  • studio: Fixed bug#12005: Moving tabs around issue with metric
  • studio: Fixed bug#11814: Persistent redraw issue
  • studio: Fixed the bug that first time tool bar floating, the width is not correct.
  • studio: Fixed bug that favorite tool only can show in normal mode or debug mode.
  • build: Fixed crash when generating code which included a combo box in read-only mode.

User changes

  • studio: Changed shortcut of showing Diagram tool to Ctrl+Alt+I.
  • debugger: add possibility to continue on conditional breakpoint evaluation failure
  • debugger: Get rid of useless "Attributes" row in debugger's objects grids (This makes display less lighter).
  • debugger: now the "Once routines" also show states of "once procedures" and not only "once functions".

Developer changes

  • studio: Now we store in session data class/group IDs from EB_SHARED_ID_SOLUTION instead of class 'file_name's or group names which could cause a problem that moving a project lead to class missing and a problem wrong group returned (many groups with the same name).
  • studio: Made fake editors for clusters if hidden when opening.

6.0.6.6451 (February 4th 2007)

New features

  • debugger: now it is possible to force the environment to stay in debugger mode.

Bug fixes

  • runtime: Fixed a memory corruption which could occur when performing a deep_twin on an object whose graph contains a TUPLE object. See test#tuple006.
  • runtime: Fixed issue when retrieving 64-bit storables on 32-bit machines. It requires a regeneration of the 64-bit storables if one wants to retrieve them on 32-bit machines. Fixed bug#11744.
  • studio: Fixed bug#11848 and bug#11939 related to the `Debugging Options' dialog which could randomly crash (related to test#tuple006 issue).
  • studio: Fixed `on_text_fully_loaded' crash (bug#11943, bug#11938 and bug#11937).
  • EiffelStore: Fixed ODBC on Linux.
  • debugger: SPECIAL[SPECIAL[..]] is fully supported now by the debugger.
  • studio: Fixed bug#11761, bug#11865 and bug#11866, general.locale didn't initialize properly. "Unselected" entry was added.
  • studio: Corrected current output codepage/charset for command line ES.

6.0.6.6309 (January 27th 2007)

New features

  • studio: Finished internationalizing starting dialog, wizards.
  • studio: Integrated Smart Docking library.
  • studio: Integrated tab editor mechanism.
  • studio: Added preference "Maximum processor usage" to dictate the maximum number of processors/cores to use when compile c-code.
  • EiffelWizard: Introduced i18n library to make it possible to display in different languages.
  • compiler: .NET Enums are can be automatically converted to INTEGERs
  • compiler: indexing tags interface_metadata and class_metadata are supported on feature level like this is done on class level and allow to specify custom attributes for associated methods only in interface type or only in implementation type.
  • compiler: Static access on external routines is allowed even if not marked frozen (this simply applies a relaxed rule that was adopted by ECMA).
  • debugger: dropping feature or class stones on breakpoints tool to add related breakpoint
  • debugger: enhanced breakpoint mechanism by adding print message, hit count (condition), and provide "Is True" and "Has Changed" condition.
  • studio: Integrated encoding library and internationalized part of batch compiler.
  • base: Added facilities to read/write REAL_32 and REAL_64 values in big and little endian format in MANAGED_POINTER
  • net: Updated reading routines of EiffelNet so that for all basic types they would read all the required bytes, not just stop after the first reading. This is important as in some very bad network situation or if you have some signals you could mess up the reading by only reading half of the expected bytes.

Bug fixes

  • studio: Fixed bug#11760 that replacing on empty result crashed es.
  • studio: Auto-complete members for open target agents have been corrected. bug#11767.
  • studio: Fixed bug#11772 that a crash occurred while renaming clusters in property tool.
  • compiler: Fixed bug causing test#dotnet046 to fail, now functions that are .NET properties can be called and executed from client code.

User changes

  • studio: Added new docking feedback indicators.
  • compiler: added conversion of TYPED_POINTER to POINTER before reattachment to reference entity so that the behaviour is the same in classic and .NET modes
  • compiler: All versioned COM import interfaces now have versioned interface member names based on the trailing version number of the interface name, as this meta information is not available in any other way. This greatly improves the versioned names and makes implementing interfaces much easier.
  • compiler: The unique keyword will yield a syntax warning if enabled.
  • debugger: improved cosmetic of debugger's exception handling dialog
  • base: Changed INTERNAL so that it does not have the `is_pre_ecma_mapping_disabled' attribute. If you were setting it to True, you should instead create an instance of ECMA_INTERNAL (fixes bug#11792).

Developer changes

  • debugger: refactored breakpoints and exceptions processing for easier integration of other projects on debugger.
  • compiler: updated compiler to compile FreeELKS library, however it cannot yet be executed.

6.0.65740 (December 25th 2006)

New features

  • debugger: console based debugger is now working for classic, dotnet, on windows and unices (-debug or via -loop : still experimental)

Bug fixes

  • compiler: fixed a bug in .NET consumer that can cause some assemblies to be consume infinitely.
  • compiler: fixed a .NET bug that prevents System.Windows.Forms.Panel from being compiled correct and subsequently causing a compilation to fail, due to incorrect an mapped inherit property and assigner. This addresses test#dotnet043.
  • compiler: Fixed bug#11758 for eweasel test#incr279, where the compiler would crash when generating the call to Precursor when both the current class and the parent class had their number of formal generics changed.
  • compiler: Fixed bug#11766 for eweasel test#term146 and test#incr129 where the compiler would crash at degree 4 when checking the conformance of a feature, and the signature involves a type which have an incorrect parent hierarchy (i.e. one parent does not have the right number of actual generic parameters).
  • store: Fixed bug#10523: if you create a DB_REPOSITORY before being connected to the database, some of the queries made on the database are not returning the proper result in ODBC(e.g. odbc_sensitive_mixed will return 0 instead of 3 for an ORACLE database). By adding the precondition we nicely solve the problem by forcing client to connect first before creating an instance of DB_REPOSITORY.
  • store: Fixed some issues related to the new implementation of expanded semantics which would break some introspection part of EiffelStore.
  • favorites: fixed bug#11745 "feature item" favorites were being lost on restarting EiffelStudio
  • gui: fixed bug#11749 with debugger's grid being empty.
  • debugger: fixed bug#11755: empty string with huge capacity were slow to be displayed.
  • debugger: improved display of objects tool header bar. (minor)

User changes

  • base: sped up {SPECIAL}.copy_data which was not inlined.

6.0.65604 (December 17th 2006)

New features

  • compiler: improved backup mechanism so that overridden classes are copied in the library where they are defined (they were previously copied in the library where the override cluster was defined).
  • studio: Integrated the internationalization library. Added a preference named "general.locale" to switch among languages. English and Chinese are available for the moment
  • debugger: added auto expressions on watch tools
  • studio: Added metric history support. Calculated metrics with their inputs can be sent into history so they can be recalculated afterwards.
  • general: Revision number of EiffelStudio has changed because we reached the limit set by most OS for the revision (65535). So now it is split into revision.build, that is to say rev 65570 will read 6.5570.
  • debugger: added an experimental console based debugger.

Bug fixes

  • compiler: Fixed issue with inline agents where if you have one and during a compilation from scratch you have a compiler error, then fixing this error and recompiling, it would crash when melting or freezing (test#incr277).
  • compiler: Fixed issue with C compilation linking error when a generic class which have an invariant clause has its formal generics changed (test#incr278).
  • compiler: Fixed C compilation error on Windows for trying to compile empties Cxxx directories (test#ccomp061).
  • compiler: Fixed incorrect code generation of agents on attribute when target is open (test#exec264).
  • compiler: Fixed incremental bug when an agent creation based on a feature whose signature changes for less arguments (test#incr276).
  • compiler: Fixed a backup creation bug when two classes from the same cluster/library have the same original file name, the backup would only contain one or the other because we use the original file name. Now we use the original class name.

User changes

  • base: Sped up HASH_TABLE iteration and lookup by about 8% or more.
  • base: TUPLE can now compare items using reference equality (=) or object comparison (is_equal).
  • vision2: Changed behavior of {EV_TITLED_WINDOW}.raise to always make sure the window is visible on screen (show if hidden, restore if minimized).
  • vision2: Fixed behavior of is_show_requested and is_displayed for EV_GRID and its items so that it conforms to the widget behavior in Vision2.
  • wel/vision2: Raised compatibility bar to Windows 2000 or greater. No more support for Windows 98 or NT 4.0
  • dotnet: Renamed SYSTEM_ATTRIBUTE into NATIVE_ATTRIBUTE for consistency reasons.

Developer changes

  • debugger: deep refactoring (reduce the number of onces, renamed and moved some debugger related data)
  • studio: to help track incremental compilation bugs, we build a replay backup window that given a backup directory will go through each compilation and perform them the way it was done by the end user.

6.0.65344 (December 3rd 2006)

New features

  • compiler: A root type can now be a generic derivation.
  • studio: Project settings such as arguments/working directory/location are now stored in a user specific location that does not depend on the UUID of the project, but on its path.
  • compiler: Integers can now also be specified with binary and octal representation
  • compiler: Manifest characters can now also be specified with binary, octal and hexadecimal representation. Manifest characters can be specified up to 32 Bit.
  • compiler: Possibility for "hidden/implementation" clusters in libraries, clusters that are not accessible if the library is used (like libraries in libraries are not accessible).
  • compiler: Added supplier_precondition assertion level that enables to only check preconditions of trusted libraries.
  • debugger: New Debugging options dialog (to set the arguments and other)
  • compiler: Don't do an expensive degree 6 when we freeze or finalize.
  • compiler: Newly added clusters are recursive by default.
  • studio: Favorites are now stored in the user settings.
  • compiler: Warning if an environment variable has changed and opportunity to (temporarily) use the old, stored value
  • compiler: Trigger a full configuration rebuild if environment variables have changed
  • compiler: Added configurable (project to class-level) optimization for .NET project that will mark all classes frozen if they are not descended by another.
  • studio: Add assemblies dialog shows more assembly information.
  • studio: Some diagram generation for assemblies
  • studio:Display documentation for .NET Framework assemblies on .NET 2.0
  • studio: Display features tree for .NET classes.
  • studio: Display uncompiled .NET classes.
  • debugger: Now we can pass modified environment variables to the debuggee application.
  • compiler: Externals (includes, objects, resources, ...) can now be relative to the ecf file by using the new replacement $ECF_CONFIG_PATH.
  • compiler: UUID is not needed for non library systems. If no uuid is specified a random one will be generated. (Startup dialog may not work correct if the config has not been saved with the random generated uuid)
  • debugger: New contextual menu on breakpoints tool for multiple action on class (enable first bp on all features ...)
  • studio: Only expand the currently used target in the project settings.
  • compiler: Changed version of configuration format to 1.1.0
  • compiler: Only print warnings for unknown attributes and tags if we detect an unknown version (try to be upward compatible).
  • compiler: Speed up consumer cache synchronization so working with large .NET caches or large assembly sets is much faster.
  • debugger: now it is possible to restart the debuggee without unraising and raising again the debugger's interface
  • debugger: now we keep the layout for each watch tool in preferences.
  • compiler: Custom conditions now also take environment variables into account.
  • compiler: Display unsubstitued path to cluster/assembly/library if a file/directory open error occurs.
  • studio: Added a cancel button in the dialog of the automatic precompilation to cancel the precompilation.
  • COM Wizard: EiffelStudio button is enabled also if the Eiffel compilation fails.
  • compiler: Generate an error if a configuration file used in a precompile has structurally been changed as the precompile is not usable in this case anymore.
  • base: The HASH_TABLE in base has two new possibilities to detect/prevent catcalls, they can be enabled by enabling assertion checking and enabling the debug clauses prevent_hash_table_catcall and detect_hash_table_catcall.
  • studio: Added dependency view so supplier/client dependency of a group/folder/class can be investigated. Feature calls are included in dependency view.
  • studio: Added syntactical supplier/client support in class view.

Bug fixes

  • COM wizard: Time library was not included which lead to problems if a COM component used the DATE_TIME data type.
  • compiler: Fixed incrementality bug with agents where finalizing and then freezing would cause some unresolved externals.
  • compiler: Don't do an expensive degree 6 if assertion level or similar project settings have changed.
  • studio: Decreased amount of created GDI objects on windows in some grids.
  • studio: Fixed a problem with externals in the project settings.
  • studio: Fixed viewpoint handling for assemblies
  • studio: Fixed output to file redirection in the process library on windows.
  • studio: Fixed samples that would not compile.
  • compiler: Fixed a crash if a library without an UUID is used.
  • compiler: Fixed a problem that classes that were not visible before did not get compiled when they were made visible.
  • compiler: Fixed CECIL name if there is a renaming specified in the visible clause.
  • compiler: Fixed VTCT error was not detected if a prefix/renaming changed on an assembly or library.
  • vision2: Fixed bug when setting a pixmap on a menu entry which has a submenu, the submenu would disappear.
  • compiler: Fixed a bug in the check if local assemblies are present.
  • compiler: Fixed some problems with sub clusters of overrides.
  • compiler: Interpolate environment variables also in metadata cache path specified on the command line.
  • compiler: Fixed some bugs in the documentation generation related to sub clusters.
  • compiler: Option changes always led to an expensive degree 6 even if a fast degree 6 would have been enough.

User changes

  • base: EXECUTION_ENVIRONMENT.get will only retrieve environment variable. It won't retrieve a value from the registry key on Windows (from HKLM\Software\ISE\Eiffelxx\app_name). This also means that MELT_PATH on Windows cannot be set in registry; this is not really a problem since now you do not need to set it since the W_code knows where to find it.

Developer changes

  • cli_debugger is now under framework, and the corresponding clib has to be compiled.
  • New delivery scripts on unix will now compress packages using bzip2 as they are about 30% smaller than the packages build with gzip.
  • The eifinit/studio folder has now been moved into studio/eifinit
  • build has been renamed into esbuilder
  • vision2_tour has been renamed into vision2_demo
  • Possibility to build a delivery which fits into the unix directory layout.
  • Use the normal HASH_TABLE in the compiler.
  • ID_AS does no longer inherit from STRING, instead it has a name_id and the string is stored in NAMES_HEAP
  • Added additional applicable inspect-able types to VOMB1 error help text.

Road map to ISO/ECMA Eiffel

This important page describes the steps, accomplished and planned, towards completing the integration into the EiffelStudio compiler of the whole set of mechanisms specified by the ISO/ECMA international standard for the Eiffel language.