- 18.11 (released) ...
Release notes for EiffelStudio 18.11
- The debugger marks a class routine with a special icon in the call stack and prevents using non-class features in the watch tool inside a class routine.
- The completion popup dialog shows the associated target class (if any) at the top of the dialog.
- The class tool displays description of classes (if enabled).
- The diagram tool has improved drawing of figures and connectors.
- After refactoring, the editor restores current position as expected.
- A project can be recompiled from scratch from the Project menu.
- Editor tabs can be exported and imported via the hidden experimental menu Service > Import/Export tabs... ( ).
- 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.
- Project settings can use conditions based on void safety level.
- Checks for void safety of object initialization take into account an assigner command.
- Exception traces in final and workbench mode use the same breakpoint indexes.
- Several code-generation and run-time bugs are fixed.
- All container classes are now
ITERABLEthat allows for iterating over them with the acrossloop and simplifies conversions between different types of containers. for descendant classes that did not implement new_cursor.
duplicate, duplicate_alland related features of container classes are now obsolete to simplify inheritance from these classes in the future. The affected effective classes now have the feature make_from_iterable.
- Figures in Vision can be drawn with anti-aliasing (on Windows).
HASH_TABLEnow takes arguments of type Ginstead of detachable Gand introduces a feature definite_itemof type G(in addition to the existing feature itemof type detachable G).
- OpenSSL binding uses
OpenSSL 1.1.1aand supports new asymmetric algorithms (RSA).
- JWT (JSON Web Token) supports custom JWT algorithms. The associated extension library provides RSA signing algorithms.
- Performance of the JSON parser is improved by 40% on large regular files.
- The new function
JSON_VALUE.chained_item (a_key): JSON_VALUEallows for expressions json @ "person" @ "address" @ "city"to get associated JSON value.
- ROC CMS implements protection against cross-site scripting attacks.
- EiffelWeb adopts nanoseconds timeout precision and supports suffixes
sfor the standalone connector in the initialization file.
- EiffelWeb correctly uses the setting
socket.timeoutfor httpd (before the misuse of the setting caused high CPU usage for WebSocket).
- Creation procedures of some container classes are now secret. for clients of the classes.
- Code analyzer does not report false positives for the rules about an unread variable (
CA020) and replacement of a regular loop with an iterative form (
processor_pooldemonstrates how a pool of active SCOOP processors can be used to execute tasks from passive regions.
See change log for more details.