[[Property:title|Release notes for EiffelStudio 7.2]]
[[Property:link_title|7.2]]
[[Property:weight|11]]
[[Property:uuid|579e75a9-9e50-41ba-70e1-211a092d0f87]]
==Graphical environment==
===What's new===
* Added support for handling Unicode file names, environment variables, command line arguments and exception messages to your applications while preserving backward compatibility for existing code.
===Improvements===
* Usability improvements in the Eiffel Information System:
** Find elements in deeper levels of referenced libraries
** Try to locate links even if no system or cluster is specified
** Better error messages
* Allowed refactoring tool to rename a feature or a class by reusing an existing name.
* Added support of class text containing Unicode characters when prettifying code.
===Changes===
* To support Unicode file names a new class PATH was added, and most libraries using a string to represent a file name have been updated to also take a PATH instance as argument.
===Bug fixes===
* Fixed a crash during debugging that would cause an exception in {ES_OBJECTS_TOOL_PANEL}.real_update.
* Fixed a crash while trying to import preferences and no project was loaded yet.
==Compiler==
* Click [[Major changes between ISE Eiffel 7.1 and ISE Eiffel 7.2|here]] for the compiler release notes.
==Libraries==
===EiffelBase===
* Added new PATH class to represent a Unicode path. In addition it offers many features to compose or decompose a path in multiple components.
* STRING:
** Migrated many queries only found in STRING_8 or STRING_32 into parent class READABLE_STRING_GENERAL, for example: has, item, index_of, last_index_of, ...
** Added prepend_substring and append_substring for efficient insertion of substrings.
** Replaced commands tail and head (which have been obsolete since 2001) with queries creating a copy of the current string with characters removed at the beginning or at the end.
** Added caseless comparison of Unicode strings.
* Added new REPEATABLE class.
* Added is_first and is_last queries to iterators.
* Fixed bug#18272 where {MANAGED_POINTER}.copy did not properly set count and thus yielded a postcondition violation when duplicating an instance.
* Added new ARGUMENTS_32 class to handle Unicode arguments.
* Added new UTF_CONVERTER class to handle various Unicode encoding conversions.
* Changed definition of {DEBUG_OUTPUT}.debug_output to be READABLE_STRING_GENERAL, so that Unicode characters in the string representation of an object can be displayed in the EiffelStudio debugger.
* Fixed an issue with `incorrect_mismatch' when it was applied to a HASH_TABLE whose keys are expanded but do not have a default value: the retrieved HASH_TABLE had one more item than the original one. It should fix eweasel test#table013.
===EiffelStore===
* Added support for Unicode SQL queries.
* Added support for immutable strings.
* Fixed an issue where passing a DECIMAL as an argument of a procedure did not set the scale (thus storing 1.00 when 100.00 was expected).
* Added ability to perform a sequence of database select/update/delete as a transaction.
* Fixed some limitations on the length of columns, errors and warnings.
===EiffelVision2===
* [[Revisions and Bug Fixes|Click here for EiffelVision2 release notes.]]
===WEL===
* Added support for Unicode file names.
* Added support for properly handling UTF-16 surrogate pairs.
* Fixed a bug in WEL_FONT for the computation of the size of a string that could cause string access on an invalid index; and removed unused calculations.
* Fixed a bug in WEL_GDIP_METAFILE that would cause a C compilation error when compiled using GCC.
[[EiffelStudio release notes|Click here to check out what was new in other versions]]