From d88254c19d668a6f90bb391e8ad582631038756e Mon Sep 17 00:00:00 2001 From: jfiat Date: Wed, 1 Jul 2020 08:54:56 +0000 Subject: [PATCH] Merge changes from trunk into 20.05 git-svn-id: https://svn.eiffel.com/eiffel-org/trunk@2254 abb3cda0-5349-4a8f-a601-0c33ac3a8c38 --- .../eiffel-tutorial-et/et-agents.wiki | 4 +++- .../eiffel-tutorial-et/et-instructions.wiki | 4 ++-- ...t-lexical-conventions-and-style-rules.wiki | 9 +++++--- ...eiffelstudio-diagram-tool-preferences.wiki | 4 +++- .../Release-notes-for-EiffelStudio-20.05.wiki | 22 +++++++++++-------- .../Persistence--storage--and-retrieval.wiki | 4 +++- 6 files changed, 30 insertions(+), 17 deletions(-) diff --git a/documentation/20.05/eiffel/Tutorials/eiffel-tutorial-et/et-agents.wiki b/documentation/20.05/eiffel/Tutorials/eiffel-tutorial-et/et-agents.wiki index 03dc9616..4eec5fa3 100644 --- a/documentation/20.05/eiffel/Tutorials/eiffel-tutorial-et/et-agents.wiki +++ b/documentation/20.05/eiffel/Tutorials/eiffel-tutorial-et/et-agents.wiki @@ -1,3 +1,5 @@ +[[Property:modification_date|Wed, 01 Jul 2020 08:52:09 GMT]] +[[Property:publication_date|Wed, 01 Jul 2020 08:52:09 GMT]] [[Property:title|ET: Agents]] [[Property:weight|-3]] [[Property:uuid|ba49a80d-5ddf-8b30-4943-528974fd0ddd]] @@ -131,7 +133,7 @@ The freedom to start from a routine with an arbitrary number of arguments, and c As another example of the mechanism's versatility, we saw above an integral function that could integrate a function of one variable over an interval, as in - your_integrator.integral (agent your_function (0, 1)) + your_integrator.integral (agent your_function, 0, 1) Now assume that function3 takes three arguments. To integrate function3 with two arguments fixed, you don't need a new integral function; just use the same integral as before, judiciously selecting what to close and what to leave open: diff --git a/documentation/20.05/eiffel/Tutorials/eiffel-tutorial-et/et-instructions.wiki b/documentation/20.05/eiffel/Tutorials/eiffel-tutorial-et/et-instructions.wiki index 65b4a617..3bd7f2e3 100644 --- a/documentation/20.05/eiffel/Tutorials/eiffel-tutorial-et/et-instructions.wiki +++ b/documentation/20.05/eiffel/Tutorials/eiffel-tutorial-et/et-instructions.wiki @@ -1,4 +1,4 @@ -[[Property:modification_date|Tue, 10 Sep 2019 21:54:55 GMT]] +[[Property:modification_date|Wed, 01 Jul 2020 08:48:12 GMT]] [[Property:publication_date|Tue, 10 Sep 2019 21:54:55 GMT]] [[Property:title|ET: Instructions]] [[Property:weight|-6]] @@ -392,7 +392,7 @@ There is, however, one form of check that continues to be monitored Here Assertion is a list of assertions as above, and Compound is a list of zero or more executable instructions. -This variant is used often when ensuring [[Void-safe programming in Eiffel|void-safety]]. It is used make certain that certain detachable entities are actually attached to objects when expected, and to create a new void-safe scope for accessing the objects. For example: +This variant is used often when ensuring [[Void-safe programming in Eiffel|void-safety]]. It is used to make certain that certain detachable entities are actually attached to objects when expected, and to create a new void-safe scope for accessing the objects. For example: check attached my_detachable as l_temp then l_temp.do_something diff --git a/documentation/20.05/eiffel/Tutorials/eiffel-tutorial-et/et-lexical-conventions-and-style-rules.wiki b/documentation/20.05/eiffel/Tutorials/eiffel-tutorial-et/et-lexical-conventions-and-style-rules.wiki index 3a801bcb..4c9cbff8 100644 --- a/documentation/20.05/eiffel/Tutorials/eiffel-tutorial-et/et-lexical-conventions-and-style-rules.wiki +++ b/documentation/20.05/eiffel/Tutorials/eiffel-tutorial-et/et-lexical-conventions-and-style-rules.wiki @@ -1,3 +1,5 @@ +[[Property:modification_date|Wed, 01 Jul 2020 08:44:12 GMT]] +[[Property:publication_date|Wed, 01 Jul 2020 08:44:12 GMT]] [[Property:title|ET: Lexical Conventions and Style Rules]] [[Property:weight|-2]] [[Property:uuid|60fdf029-8626-166d-cc4f-9069aacdda7f]] @@ -40,9 +42,9 @@ Successive declarations or instructions may be separated by semicolons. Eiffel's | frozen | if | implies -| indexing +| indexing |- -| infix +| infix | inherit | inspect | invariant @@ -56,7 +58,7 @@ Successive declarations or instructions may be separated by semicolons. Eiffel's | old | once | or -| prefix +| prefix |- | Precursor | pure @@ -75,6 +77,7 @@ Successive declarations or instructions may be separated by semicolons. Eiffel's | undefine |} +note: `infix`, `prefix` are not anymore reserved since version 19.12 , and `indexing` as well even before. Since this tutorial has covered all the essential mechanisms, you may ignore the keywords not encountered; they are reserved for future use. diff --git a/documentation/20.05/eiffelstudio/eiffelstudio-reference/eiffelstudio-preferences/preferences-reference/eiffelstudio-tools-preferences/eiffelstudio-diagram-tool-preferences.wiki b/documentation/20.05/eiffelstudio/eiffelstudio-reference/eiffelstudio-preferences/preferences-reference/eiffelstudio-tools-preferences/eiffelstudio-diagram-tool-preferences.wiki index 93638261..8f7fe994 100644 --- a/documentation/20.05/eiffelstudio/eiffelstudio-reference/eiffelstudio-preferences/preferences-reference/eiffelstudio-tools-preferences/eiffelstudio-diagram-tool-preferences.wiki +++ b/documentation/20.05/eiffelstudio/eiffelstudio-reference/eiffelstudio-preferences/preferences-reference/eiffelstudio-tools-preferences/eiffelstudio-diagram-tool-preferences.wiki @@ -1,3 +1,5 @@ +[[Property:modification_date|Wed, 01 Jul 2020 08:37:22 GMT]] +[[Property:publication_date|Wed, 01 Jul 2020 08:37:22 GMT]] [[Property:title|EiffelStudio Diagram Tool Preferences]] [[Property:weight|2]] [[Property:uuid|6e2eed8e-b225-0dee-5ea0-e4c25a0c3d5a]] @@ -13,7 +15,7 @@ This category gathers the preferences related to the EiffelStudio BON Diagram to | Show ancestors of a class up to a level of preference value. |- | Autoscroll speed -| Color for UML inheritance links. +| Speed for scrolling when dragging figures from diagram near the edge of the diagram tool (a valid value is between 0 and 100). |- | Client depth | Show clients of a class up to a level of preference value. diff --git a/documentation/20.05/eiffelstudio/eiffelstudio-reference/eiffelstudio-release-notes/Release-notes-for-EiffelStudio-20.05.wiki b/documentation/20.05/eiffelstudio/eiffelstudio-reference/eiffelstudio-release-notes/Release-notes-for-EiffelStudio-20.05.wiki index 5867a79b..64d9f6d1 100644 --- a/documentation/20.05/eiffelstudio/eiffelstudio-reference/eiffelstudio-release-notes/Release-notes-for-EiffelStudio-20.05.wiki +++ b/documentation/20.05/eiffelstudio/eiffelstudio-reference/eiffelstudio-release-notes/Release-notes-for-EiffelStudio-20.05.wiki @@ -1,22 +1,26 @@ -[[Property:modification_date|Tue, 02 Jun 2020 08:56:25 GMT]] +[[Property:modification_date|Fri, 26 Jun 2020 11:00:55 GMT]] [[Property:publication_date|Fri, 22 May 2020 15:44:58 GMT]] [[Property:uuid|99393109-3E37-4A3C-82FC-6509444BC948]] [[Property:title|Release notes for EiffelStudio 20.05]] [[Property:link_title|20.05]] [[Property:weight|-4]] ==Graphical environment== -* The editor search functionality now supports Unicode text. -* Improve code completion to include sequence of Unicode symbol for new Eiffel syntax. -* The new command line option `-reset_ide_layout` reset any IDE layout settings (docking, tools, ...). +* Supported search for Unicode strings in the editor. +* Extended code completion with Unicode symbols. +* Added a command line option `-reset_ide_layout` to reset IDE layout. ==Compiler== -* +* Supported multi-branch expressions that are similar to multi-branch instructions, but `Then_part`s and `Else_part` contain expressions instead of instruction sequences. +* Changed evaluation of untyped manifest strings to treat them as being of type STRING_32 if they contain characters with code points above 255. ==Libraries== -* There is now a simpler way to output Unicode text into the Console, using the new`PLAIN_TEXT_FILE.put_string_32 (text)` (note: for now only `put_string_32` is using the related encoding). -* Many web related libraries were updated to better follow recommendations and specifications (wikitext, feed with atom and rss, xml, and CMS xhtml page generation). -* Most (if not all) of the ISE specific codes are now in the ISE_RUNTIME class. -* Thanks to the new `wrap_c` tool, there are a bunch of new C wrapper library available via `iron`, such as yaml, sdl, libusb, quirc, libqrencode, libgit2, gsl, tiday, ... check [https://iron.eiffel.com/repository/20.05/package/?query=tag%3Awrapc] for the complete list. +* Supported direct Unicode output to text files and console with {PLAIN_TEXT_FILE}.put_string_32. +* Updated web related libraries to be closer to recommendations and specifications (wikitext, feed with atom and rss, xml, and CMS xhtml page generation). +* Generated many [https://iron.eiffel.com/repository/20.05/package/?query=tag%3Awrapc wrappers of C libraries] with `wrap_c` tool: yaml, sdl, libusb, quirc, libqrencode, libgit2, gsl, tidy, etc. +* Added [https://www.eiffel.org/blog/Alexander%20Kogtenkov/2020/06/unicode-aliases Unicode aliases] for existing features in classes BOOLEAN, COMPARABLE, NUMERIC and their descendants. +* Changed behavior of {CHARACTER_8}.to_lower and {CHARACTER_8}.to_upper by interpreting STRING_8 as encoded according to ISO 8859-1. +* Marked {READABLE_STRING_GENERAL}.plus as obsolete to avoid potential data loss. Added sized variants of the feature in sized variants of string classes. +* Added several implicit conversions from non-32-bit strings to STRING_32 and its variants. ---- See [https://dev.eiffel.com/EiffelStudio_20.05_Releases change log] for more details. \ No newline at end of file diff --git a/documentation/20.05/solutions/basic-computing/eiffelbase/eiffelbase-tutorial/eiffelbase-kernel/Persistence--storage--and-retrieval.wiki b/documentation/20.05/solutions/basic-computing/eiffelbase/eiffelbase-tutorial/eiffelbase-kernel/Persistence--storage--and-retrieval.wiki index 2d00826b..3af9cf45 100644 --- a/documentation/20.05/solutions/basic-computing/eiffelbase/eiffelbase-tutorial/eiffelbase-kernel/Persistence--storage--and-retrieval.wiki +++ b/documentation/20.05/solutions/basic-computing/eiffelbase/eiffelbase-tutorial/eiffelbase-kernel/Persistence--storage--and-retrieval.wiki @@ -1,3 +1,5 @@ +[[Property:modification_date|Wed, 01 Jul 2020 08:14:12 GMT]] +[[Property:publication_date|Wed, 01 Jul 2020 08:14:12 GMT]] [[Property:uuid|EA781CE6-3452-4EEF-BF05-47D94FC88A3D]] [[Property:weight|3]] [[Property:title|Persistence, storage, and retrieval]] @@ -90,7 +92,7 @@ store_object (o: ANY; p: PATH) do create f.make_with_path (p) f.open_write - create writer.make_for_writing (l_file) + create writer.make_for_writing (f) store (o, writer) f.close end