Files
eiffel-org/documentation/trunk/eiffelstudio/eiffelstudio-reference/eiffelstudio-release-notes/Release-notes-for-EiffelStudio-18.11.wiki
2018-12-06 21:22:12 +00:00

34 lines
3.2 KiB
Plaintext

[[Property:modification_date|Thu, 06 Dec 2018 21:22:12 GMT]]
[[Property:publication_date|Mon, 26 Nov 2018 10:45:37 GMT]]
[[Property:uuid|4452B417-C538-49AF-960F-C3C2473A3AF8]]
[[Property:title|Release notes for EiffelStudio 18.11]]
[[Property:link_title|18.11]]
[[Property:weight|-1]]
==Graphical environment==
* The '''debugger''' has improved support '''class routine'''. Safer expression evaluation in the watch tool, but also the call stack tool now displays a class icon for the non-object call.
* The '''completion popup dialog''' now shows the associated target class (if any) at the top of the dialog.
* The '''class tool''' can now display the `description` indexing note of classes within the tool using a toggle button to show/hide this information.
* Improved the '''diagram tool''' by scaling client-supplier lines with a minimum width of 3 pixels and a proportional increase of nested lines width and arrow size to the overall line width. And also use anti-aliasing when drawing (can be disabled via preferences).
* After a '''refactoring''' operation, the editor will now focus back on the related feature as expected.
* For convenience, it is possible to '''recompile from scratch''' the current project using the EiffelStudio `Project>Compile from scratch` menu.
*There is a new '''experimental''' functionality to '''export and import editor tabs to and from a text'''. It can be useful to restore open tabs from another machine (available in the hidden `menu>Service>Import/Export tabs...`, Ctrl+Alt+D).
==Compiler==
* '''Assertion expressions''' are used as '''tags''' for assertions without explicit tags.
* Concurrency and void-safety project settings can be overridden when compiling from the command line using `-config_option concurrency=...` or `-config_option void_safety=...`.
* Project settings can use '''conditions''' based on void safety level.
* Fixed a bug in handling an assigner command when checking for void safety of object initialization.
* '''Exception traces''' in final and workbench mode use the '''same breakpoint indexes'''.
==Libraries==
* '''OpenSSL''' binding: Updated the OpenSSL wrapper with asymmetric algorithms (RSA). Updated to OpenSSL 1.1.1a .
* '''JWT (JSON Web Token)''': made it possible to register custom JWT algorithm (as addition to the provided HS256 and none). Added the `jwt_openssl_extension` library, that provides RSA based JWT signing algorithm (implemented with the OpenSSL binding).
* '''JSON''': Improved the memory and speed '''performance''' of the JSON Parser (from 2x to 4x time faster). Added convenient function `JSON_VALUE.chained_item (a_key): JSON_VALUE` to be able to call `json @ "person" @ "address" @ "city" ` and get associated JSON value (if any) or JSON_NULL.
* '''ROC CMS''': Implemented protection against '''XSS attack'''.
* '''EiffelWeb''': Adopted '''nanoseconds timeout precision''', especially for standalone connector settings (use ns, us, ms, s suffix when defining the timeout in the .ini file).
* '''EiffelWeb''': Properly use the '''socket.timeout''' settings in httpd (before it was ignored and the timeout was not correctly set, and among other potential issues, it was causing high CPU usage for WebSocket).
----
See [https://dev.eiffel.com/EiffelStudio_18.11_Releases change log] for more details.