[[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 <e>PATH</e> was added, and most libraries using a string to represent a file name have been updated to also take a <e>PATH</e> instance as argument.

===Bug fixes===
* Fixed a crash during debugging that would cause an exception in <e>{ES_OBJECTS_TOOL_PANEL}.real_update</e>.
* 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 <e>PATH</e> class to represent a Unicode path. In addition it offers many features to compose or decompose a path in multiple components.
* <e>STRING</e>:
** Migrated many queries only found in <e>STRING_8</e> or <e>STRING_32</e> into parent class <e>READABLE_STRING_GENERAL</e>, for example: <e>has</e>, <e>item</e>, <e>index_of</e>, <e>last_index_of</e>, ...
** Added <e>prepend_substring</e> and <e>append_substring</e> for efficient insertion of substrings.
** Replaced commands <e>tail</e> and <e>head</e> (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 <e>REPEATABLE</e> class.
* Added <e>is_first</e> and <e>is_last</e> queries to iterators.
* Fixed bug#18272 where <e>{MANAGED_POINTER}.copy</e> did not properly set <e>count</e> and thus yielded a postcondition violation when duplicating an instance.
* Added new <e>ARGUMENTS_32</e> class to handle Unicode arguments.
* Added new <e>UTF_CONVERTER</e> class to handle various Unicode encoding conversions.
* Changed definition of <e>{DEBUG_OUTPUT}.debug_output</e> to be <e>READABLE_STRING_GENERAL</e>, so that Unicode characters in the string representation of an object can be displayed in the EiffelStudio debugger.
* Fixed an issue with `<e>incorrect_mismatch</e>' when it was applied to a <e>HASH_TABLE</e> whose keys are expanded but do not have a default value: the retrieved <e>HASH_TABLE</e> 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 <e>DECIMAL</e> 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 <e>WEL_FONT</e> 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 <e>WEL_GDIP_METAFILE</e> 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]]

