diff --git a/documentation/current/eiffelstudio/eiffelstudio-reference/compiler/compiler-history/major-changes-between-ise-eiffel-72-and-ise-eiffel-73.wiki b/documentation/current/eiffelstudio/eiffelstudio-reference/compiler/compiler-history/major-changes-between-ise-eiffel-72-and-ise-eiffel-73.wiki new file mode 100644 index 00000000..a32ca80e --- /dev/null +++ b/documentation/current/eiffelstudio/eiffelstudio-reference/compiler/compiler-history/major-changes-between-ise-eiffel-72-and-ise-eiffel-73.wiki @@ -0,0 +1,36 @@ +[[Property:title|Major changes between ISE Eiffel 7.2 and ISE Eiffel 7.3]] +[[Property:link_title|7.3]] +[[Property:weight|10]] +[[Property:uuid|84a0a02d-b9cc-9897-c1d9-41dfc27c294a]] +==What's new== +* Added support for agents with targets of separate types. +* Added new levels of void-safety: "conformance" that enables taking attachment marks into account when checking for conformance; "transitional" (previously "all") that checks almost all void-safety rules except those for unqualified agents and allows CAPs for preconditions and check instructions; "all" that checks all void-safety rules. + +==Improvements== +* Fixed issue that causes many classes to be recompiled when not needed. +* Relaxed rules for using Current and unqualified agents when not all attributes are set to report VEVI errors only when qualified calls are involved in a sequence of unqualified calls and creation procedure calls ("targeted rules"). + +==Changes== +* The BIT type has been completely removed from libraries and runtime. + +==Bug fixes== + +===Language issues=== +N/A + +===Compiler issues=== +* Fixed error in processing replicated and selected attributes with self-initializing attribute bodies that could lead to reporting these attributes as uninitialized. +* Fixed a bug that might result in a missing VEVI error for Result in a self-initializing attribute body. + +===SCOOP issues=== +* Fixed a bug that caused incorrect conformance checks for formal generics of different separate status. +* Fixed a bug that might cause incorrect conformance checks for attachment and separateness status of a constrained formal generic parameter against a class type. +* Fixed a C code generation bug that might cause an access on an invalid address during object test evaluation with an expression of a separate type. + +===Runtime/code generation issues=== +* Fixed a bug where the TYPE instance of a new generic derivation in the running system would be corrupted. + +===Store/Retrieve issues=== +* Fixed a bug in .NET where using the Eiffel serialization or marking objects would trigger computation of `hash_code' on Eiffel objects and thus changing their state. + + diff --git a/documentation/current/eiffelstudio/eiffelstudio-reference/eiffel-information-system/eis-outgoing/information-tool/change-analysis.wiki b/documentation/current/eiffelstudio/eiffelstudio-reference/eiffel-information-system/eis-outgoing/information-tool/change-analysis.wiki index c6fce335..808b6c94 100644 --- a/documentation/current/eiffelstudio/eiffelstudio-reference/eiffel-information-system/eis-outgoing/information-tool/change-analysis.wiki +++ b/documentation/current/eiffelstudio/eiffelstudio-reference/eiffel-information-system/eis-outgoing/information-tool/change-analysis.wiki @@ -3,26 +3,30 @@ [[Property:uuid|a503cf13-6374-9932-5ee2-a69b363e6701]] [[Image:information tool change analysis]] -Within EiffelStudio 7.3, there will be new functions in Infomation tool to track changes on target or external resouce side, and potentially affected items on either side are listed. +The information tool can track changes in an Eiffel system or external resources side, and potentially affected items on either side are listed. == Major Features == -* '''Affected target:''' List of elements of current system that would be affected by external resource changes. (External resource is limited to local files.) -* '''Affected source:''' List of external resources that might be affected by changes of current system. (No limit of the type of external resources) -* '''Change acknowledgement:''' Acknowledgement of the changes that are aware of and will be ignored without any further actions. +* '''Affected target:''' List of elements of the Eiffel system that would be affected by a change in external resources. +* '''Affected source:''' List of external resources that might be affected by changes in the Eiffel system. +* '''Change acknowledgement:''' Acknowledgement of the changes which will be ignored with no further actions. == Typical Work Flows == -=== Affected external resources caused by current system change === -# Open a class, add an Information entry with an external source in the class. +=== Affected external resources caused by a change in the Eiffel system === +# Open a class, add an Information entry with an external resource in the class. # Start working on that class, save it at as you normally do on regular basis. -# Open Info tool, go to Affected source item in the left tree. -# Check the list of external resouces that might be affected by last changes, as shown in the sceen cast bellow. -# Acknowledge the changes if you find that the external resources do not need a change for last changes of current system. +# Open the information tool, go to Affected source item in the left tree. +# Check the list of external resources that might be affected by last changes. +# Acknowledge the changes once you have updated the external resource accordingly (possibly no change is required in the case of simple system changes). + +=== Affected items in the Eiffel system caused by an external resource change === +# Open a class, add an Information entry with an external resource in the class. +# Start working on that external resource, save it at as you normally do on regular basis. +# Open the information tool, go to Affected target in the left tree. +# Check the list of classes that might be affected by last changes of the external resource. (You may need to click on the "sweep the system now." button to get a full list if auto-sweeping is not enabled.) +# Acknowledge the changes once you have updated the Eiffel system accordingly (possibly no change is required in the case of a simple edit in the external resource). + +== Current limitations == +The tracking of external resource changes is limited to external resources that are local files. If an external resource is a URL, it will not detect any potential changes done at that URL. -=== Affected items in the system caused by external resource change === -# Open a class, add an Information entry with an external document (limited to local files in 7.3) in the class. -# Start working on that document, save it at as you normally do on regular basis. -# Open Info tool, go to Affected target in the left tree. -# Check the list of targets that might be affected by last changes of the document. (You may need to click on the "sweep the system now." button to get a full list if auto-sweeping is not enabled.) -# Acknowledge the changes if you find that current system does not need a change for last changes of the document. diff --git a/documentation/current/eiffelstudio/eiffelstudio-reference/eiffelstudio-release-notes/release-notes-eiffelstudio-73.wiki b/documentation/current/eiffelstudio/eiffelstudio-reference/eiffelstudio-release-notes/release-notes-eiffelstudio-73.wiki index 558a13b9..e7a01c0e 100644 --- a/documentation/current/eiffelstudio/eiffelstudio-reference/eiffelstudio-release-notes/release-notes-eiffelstudio-73.wiki +++ b/documentation/current/eiffelstudio/eiffelstudio-reference/eiffelstudio-release-notes/release-notes-eiffelstudio-73.wiki @@ -5,7 +5,9 @@ ==Graphical environment== ===What's new=== -* A change analysis for documents in the [[Eiffel Information System]] where one can be notified of which documents to update when a class is modified, and conversely whenever a document is modified which classes might need updating. +* A [[change analysis]] for documents in the [[Eiffel Information System]] where one can be notified of which documents to update when a class is modified, and conversely whenever a document is modified which classes might need updating. +* EiffelStudio will now show you contracts of a feature when completing code, letting you quickly find out the proper way to call it +* When debugging, moving the mouse pointer over an expression will cause the debugger to evaluate the expression and display its computation result in a tooltip. ===Improvements=== * Used void-safety settings of a target to list libraries that are compatible with it and provided more details on their void-safety status in the dialog for adding libraries. @@ -14,17 +16,25 @@ * In [[AutoTest]], tests will be executed under the location of the Eiffel configuration file (ECF) and not in the Testing subdirectory of the EIFGENs directory. ===Bug fixes=== +* Fixed a memory corruption that would occur when you have multiple errors during a compilation and you are opening each error in its own tab editor, after opening 4 or 5 tabs, EiffelStudio could become unstable. +* Fixed a crash after saving a diagram as a PNG file. ==Compiler== * Click [[Major changes between ISE Eiffel 7.2 and ISE Eiffel 7.3|here]] for the compiler release notes. +==Debugger== +* Click [[Release notes for EiffelStudio 7.3 related to the debugger|here]] for the EiffelStudio debugger release notes. + +==EiffelBuild== +* Click [[EiffelBuild Version History|here]] for the EiffelBuild release notes. + ==Libraries== ===EiffelBase=== * Updated TUPLE and depending classes to separate entities. * Updated ROUTINE and descendants to be usable for agents with separate targets. * Fixed a comparison bug with EQUALITY_TUPLE which actually would only compare the last elements. -* Made INTERNAL obsolete, it is now replaced by two set of classes: a static introspection class and a dynamic one. The class that lets you examine the static content is REFLECTOR; most references of INTERNAL can easily be replaced by REFLECTOR. To inspect objects, you have a new set of classes starting with REFLECTED_OBJECT. This let you inspect objects with copy semantics without actually causing a copy each time you access it, unlike what was happening before with INTERNAL. +* Made INTERNAL obsolete, it is now replaced by two set of classes: a static introspection class and a dynamic one. The class that lets you examine the static content is REFLECTOR; most references of INTERNAL can easily be replaced by REFLECTOR. To inspect objects, you have a new set of classes starting with REFLECTED_OBJECT. This let you inspect objects with copy semantics without actually causing a copy each time you access it, unlike what was happening before with INTERNAL. * Fixed a reallocation bug in SED_MEMORY_READER_WRITER where if you retrieve a large chunk, we would not allocate enough memory. * Added ability to store/retrieve expanded objects and objects with copy semantics with SED. * Storables made using SED from version 6.6 or earlier of EiffelStudio not using the `is_for_fast_retrieval' setting won't be recoverable. @@ -39,6 +49,7 @@ ===WEL=== * Fixed a 64-bit truncation bug in the message dispatcher of WEL. * Fixed a memory corruption that would occur when loading a 32-bit BMP image as a background image of a container in a 16-bit or lower display. +* Fixed an issue with WEL_CHOOSE_FOLDER_DIALOG where set_starting_path had no effect [[EiffelStudio release notes|Click here to check out what was new in other versions]] diff --git a/documentation/current/solutions/gui-building/eiffelbuild/eiffelbuild-version-history.wiki b/documentation/current/solutions/gui-building/eiffelbuild/eiffelbuild-version-history.wiki index b7e89dd9..14089602 100644 --- a/documentation/current/solutions/gui-building/eiffelbuild/eiffelbuild-version-history.wiki +++ b/documentation/current/solutions/gui-building/eiffelbuild/eiffelbuild-version-history.wiki @@ -1,6 +1,10 @@ [[Property:title|EiffelBuild Version History]] [[Property:weight|2]] [[Property:uuid|8cc0540e-8ee7-c005-0534-a2ed62f41c96]] +== 7.3 Release == +* Fixed a crash which could occur when generating a project. +* Fixed a crash when saving a project if it contained a pixmap with no path specified. + ==7.2, 7.1 and 7.0 Release== No changes. diff --git a/documentation/current/solutions/gui-building/eiffelvision-2/revisions-and-bug-fixes.wiki b/documentation/current/solutions/gui-building/eiffelvision-2/revisions-and-bug-fixes.wiki index 77304646..135e4fa5 100644 --- a/documentation/current/solutions/gui-building/eiffelvision-2/revisions-and-bug-fixes.wiki +++ b/documentation/current/solutions/gui-building/eiffelvision-2/revisions-and-bug-fixes.wiki @@ -1,29 +1,45 @@ [[Property:title|Revisions and Bug Fixes]] [[Property:weight|10]] [[Property:uuid|eb11a237-0c75-0427-452a-303d4f276b97]] -This document contains details of modifications and bug fixes to the EiffelVision 2 library listed by the release version of EiffelStudio. All bug fixes and modifications are relative to the previously released version. +This document contains details of modifications and bug fixes to the EiffelVision 2 library listed by the release version of EiffelStudio. All bug fixes and modifications are relative to the previously released version + +==EiffelStudio 7.3== +'''Improvements''' +* Added {EV_PIXEL_BUFFER}.stretched which gives you a stretched version of an EV_PIXEL_BUFFER. The quality of the stretch image is much better than of the previous implementatio of EV_PIXMAP for Windows. On Unix it is the same quality as EV_PIXMAP. +* Improved stretching of EV_PIXMAP on Windows by using the Color on Color stretching mode of the Win32 API StretchBlt. + + +'''Bug fixes''' +*'''Platform Independent''' +** Fixed inconsistencies in maximize/restore window behavior between Windows and Gtk platforms. +** Fixed {EV_GRID_COLUMN}.required_width_of_item_span to only take into account visible item. + +*'''Windows''' +** Fixed a resizing bug when you have a vertical/horizontal box with a minimum size set, if one of the item has a minimum size larger than its parent, then in some circumstances the child will be shrinked beyond its minimum size causing some visual glitches. ==EiffelStudio 7.1== + '''New''' * Added experimental GTK3 support with HTML5 backend. * Added SCOOP compatibility. - + '''Improvements''' * Added a hint facility for the height of the drop down in a combo box. Currently the hint is only followed on Windows. * Improved keyboard navigation of EV_GRID's including tab handling of activatable grid items. * Improved keyboard activation/settings for certain type of grid items. * Improved latency of asynchronous agents calling through do_once_on_idle when adding from another thread. - + '''Bug fixes''' + *'''Platform Independent''' ** Fixed problems when keyboard navigating in EV_GRID's when hidden columns are present. - + *'''Windows''' ** Added support for high resolution wheel mice. ** Fixed a potential crash when using an EV_FIXED if resizing causes some redraw operations. ** Fixed an issue where the pick and drop lines would disappear after performing an Alt+Tab to switch between applications. ** Made sure colors are not shared between a widget and the original color object used to set the color of the widget. - + *'''GTK''' ** Fixed a bug (PR#18082). The fix ensures that in cases in which a descendant of EV_TEXTABLE contains pixmaps but no text, the pixmaps are properly centered. ** Fixed internationalization handling for keyboard input.