From 4c2392d9b82c3623c317906e46623f2fa8838e5a Mon Sep 17 00:00:00 2001 From: rocky Date: Sat, 15 May 2021 02:37:57 -0400 Subject: [PATCH] Get ready for release 2.2.0 --- CHANGES.rst | 45 +++++++++++++++---------- mathics/doc/documentation/1-Manual.mdoc | 14 +++++--- mathics/version.py | 2 +- 3 files changed, 38 insertions(+), 23 deletions(-) diff --git a/CHANGES.rst b/CHANGES.rst index 35ec8c3485..0b95bd43bd 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -2,7 +2,7 @@ CHANGES ======= -2.1.1 +2.2.0 ----- Package update @@ -36,26 +36,30 @@ Enhancements * ``Cases`` accepts Heads option. Issue #1302. * ``ColorNegate`` for colors is supported. * ``D`` and ``Derivative`` improvements. -* ``Expand`` and ``ExpandAll`` now support a second parameter ``patt`` (#1301) -* ``Expand`` and ``ExpandAll`` works with hyperbolic functions (`Sinh`, `Cosh`, `Tanh`, `Coth`) +* ``Expand`` and ``ExpandAll`` now support a second parameter ``patt`` Issue #1301. +* ``Expand`` and ``ExpandAll`` works with hyperbolic functions (`Sinh`, `Cosh`, `Tanh`, `Coth`). * ``FileNames`` returns a sorted list (#1250). -* ``FindRoot`` now receives several optional parameters like ``Method`` and ``MaxIterations``. +* ``FindRoot`` now accepts several optional parameters like ``Method`` and ``MaxIterations``. See Issue #1235. * ``FixedPoint`` now supports the ``SameTest`` option. * ``mathics`` CLI now uses its own Mathics ``settings.m`` file * ``Prepend`` works with ``DownValues`` Issue #1251 * ``Prime`` and ``PrimePi`` now accept a list parameter and have the ``NumericFunction`` attribute. * ``Read`` with ``Hold[Expression]`` now supported. (#1242) -* ``ReplaceRepeated`` and ``FixedPoint`` now supports the ``MaxIteration`` option (#1260). +* ``ReplaceRepeated`` and ``FixedPoint`` now supports the ``MaxIteration`` option. See Issue #1260. * ``Simplify`` performs a more sophisticated set of simplifications. * ``Simplify`` accepts a second parameter that temporarily overwrites ``$Assumptions``. -* ``StringTake`` now accepts form containing a list of strings and specification (#1297). +* ``StringTake`` now accepts form containing a list of strings and specification. See Issue #1297. * ``Table`` [*expr*, *n*] is supported. * ``ToExpression`` handles multi-line string input. * ``ToString`` accepts an optional *form* parameter. -* The implementation of Streams was redone. -* ``ToExpression`` handles multi-line string input -* ``$VersionNumber`` now set to 10.0 (was 6.0) +* ``ToExpression`` handles multi-line string input. +* ``$VersionNumber`` now set to 10.0 (was 6.0). * The implementation of Streams was redone. +* Function ``mathics.core.definitions.autoload_files`` was added and + exposed to allow front-ends to provide their own custom Mathics. + settings. +* String output in the ``mathics`` terminal has surrounding quotes to make it more visually distinct from unexpanded and symbol output. + To disable this behavior use ``--strict-wl-output``. Bug fixes @@ -64,19 +68,26 @@ Bug fixes * ``SetTagDelayed`` now does not evaluate the RHS before assignment. * ``$InstallationDirectory`` starts out ``Unprotected``. * ``FindRoot`` now handles equations. +* Malformed Patterns are detected and an error message is given for them. * Functions gone over to ensure the ``Listable`` and ``NumericFunction`` properties are correct. Incompatible changes -------------------- -``System`$UseSansSerif`` moved from core and is sent front-ends using ``Settings`$UseSansSerif``. +* ``System`$UseSansSerif`` moved from core and is sent front-ends using ``Settings`$UseSansSerif``. + Internal changes ---------------- * doctest accepts the option ``-d`` to show how long it takes to parse, evaluate and compare each individual test. ``-x`` option (akin to ``pytests -x`` is a short-hand for stop on first error +* Some builtin functions have been grouped together in a module + underneath the top-level builtin directory. As a result, in the + documents you will list some builtins listed under an overarching + categery like ``Specific Functions`` or ``Graphics, Drawing, and + Images``. More work is expected in the future to improve document sectioning. 2.1.0 @@ -125,7 +136,7 @@ Pymathics Modules +++++++++++++++++ * Pymathics modules now can run initialization code when are loaded. -* The ``builtins`` list is not hardliked to the library anymore. This simplifies +* The ``builtins`` list is not hard-linked to the library anymore. This simplifies the loading and reloading of pymathics modules. * Decoupling of BoxConstructors from the library. Now are defined at the level of the definition objects. This is useful for customizing the @@ -135,10 +146,10 @@ Pymathics Modules Miscellanea +++++++++++ -* A pass was made to improve Microsoft Windows compatability and testing Windows under MSYS. +* A pass was made to improve Microsoft Windows compatibility and testing Windows under MSYS. * Include numpy version in version string. Show in CLI * Small CLI tweaks ``--colors=None`` added to match mathicsscript. -* In the ``BaseExpression`` and derivated classes, the method ``boxes_to_xml`` now are called ``boxes_to_mathml``. +* In the ``BaseExpression`` and derived classes, the method ``boxes_to_xml`` now are called ``boxes_to_mathml``. * In the ``format`` method of the class ``Evaluation``, the builtin ``ToString`` is called instead of ``boxes_to_text`` * In order to control the final form of boxes from the user space in specific symbols and contexts. * ``GraphicsBox`` now have two methods: ``to_svg`` and ``to_mathml``. The first produces SVG plain text while the second produces ```` tags with base64 encoded SVGs. @@ -161,7 +172,7 @@ What's to expect in a Future Release To accommodate growth and increased use of pieces of Mathics inside other packages, parts of Mathics have been split off and moved to separate packages. In particular: * The Django front-end is now a PyPI installable package called `Mathics-Django `_. -* Scanner routines, character translation tables to/from unicode, and character properties are now `mathics-scanner https://github.com/Mathics3/mathics-scanner`_. +* Scanner routines, character translation tables to/from Unicode, and character properties are now `mathics-scanner https://github.com/Mathics3/mathics-scanner`_. * Specific builtins involving heavy, non-standard routines were moved to pymathics modules `pymathics-graph https://github.com/Mathics3/pymathics-graph`_, `pymathics-natlang https://github.com/Mathics3/pymathics-natlang`_. Incompatible changes: @@ -254,7 +265,7 @@ Future * Work is also being done on asymptote. See `PR #1145 `_. * Makeboxes is being decoupled from a renderer. See `PR #1140 `_. * Inline SVG will be supported (right now SVG is binary). -* Better support integrating unicode in output (such as for Rule arrows) is in the works. These properties will be in the scanner package. +* Better support integrating Unicode in output (such as for Rule arrows) is in the works. These properties will be in the scanner package. * A method option ("mpmath", "sympy", or "numpy") will be added to the ``N[]``. See `PR #1144 `_. @@ -304,7 +315,7 @@ Enhancements and bug fixes - Extend ``DeleteCases`` to accept a levelspec parameter - Set ``Evaluation#exc_result`` to capture ``Aborted``, ``Timeout``, ``Overflow1``, etc. - ``ImageData`` changed to get bits {0,1}, not booleans as previously -- Add tokenizer symbols for ``<->`` and ``->`` and the unicode versions of those +- Add tokenizer symbols for ``<->`` and ``->`` and the Unicode versions of those - Small corrections to ``Needs``, e.g check if already loaded, correct a typo, etc. - ``System`$InputFileName`` is now set inside ``Needs`` and ``Get`` - Install shell scripts ``dmathicserver``, ``dmathicsscript``, and ``dmathics`` to simplify running docker @@ -408,7 +419,7 @@ Enhancements and bug fixes - proper sympolic expantion for ``Re`` and ``Im`` - fixes a bug in the evaluation of ``SympyPrime`` #827 - clean up ``ColorData`` -- fixes unicode characters in TeX document +- fixes Unicode characters in TeX document - update Django gallery examples - fixes ``Sum`` and ``Product`` #869, #873 - warn when using options not supported by a Builtin #898, #645 diff --git a/mathics/doc/documentation/1-Manual.mdoc b/mathics/doc/documentation/1-Manual.mdoc index 563fe45e32..867f86984e 100644 --- a/mathics/doc/documentation/1-Manual.mdoc +++ b/mathics/doc/documentation/1-Manual.mdoc @@ -996,7 +996,7 @@ When you enter Mathics in the top after the Mathics logo and the word "Mathics" It looks like this: - +
@@ -1025,7 +1025,7 @@ Assuming your are running locally or on a host called 'localhost' using the defa Worksheets exist in the browser window only and are not stored on the server, by default. To save all your queries and results, use the Save button which is the middle graphic of the menu bar. It looks like this: - + Depending on browser, desktop, and OS-settings, the "Ctrl+S" key combination may do the same thing. @@ -1033,7 +1033,7 @@ Depending on browser, desktop, and OS-settings, the "Ctrl+S" key combination may Saved worksheets can be loaded or deleted using the File Open button which is the left-most button in the menu bar. It looks like this: - + Depending on browser, desktop, and OS-settings, the "Ctrl+O" key combination may do the same thing. @@ -1053,7 +1053,7 @@ Normally, when you reload the current page in a browser using the default url, e However if you want a URL that will that records the input entered the Generate Input Hash button does this. The button looks like this: - + For example, assuming you have a \Mathics server running at port 8000 on localhost, and you enter the url http://localhost:8000/#cXVlcmllcz14, you should see a single line of input containing x entered. @@ -1076,11 +1076,15 @@ There are some keyboard commands you can use in the Django-based Web interface o
Save worksheet
'Ctrl+O'
Open worksheet
+
'Right Click' on MathML output
+
Opens MathJax Menu
+Of special note is the last item on the list: right-click to open the MathJax menu. Under "Math Setting"/"Zoom Trigger", if the zoom trigger is set to a value other then "No Zoom", then when that trigger is applied on MathML formatted output, the MathML formula pop up a window for the formula. The window can show the formula larger. Also, this is a way to see output that is too large to fit on the display since the window allows for scrolling. + Keyboard commands behavior depends the browser used, the operating system, desktop settings, and customization. We hook into the desktop "Open the current document" and "Save the current document" functions that many desktops provide. For example see: https://help.ubuntu.com/community/KeyboardShortcuts#Finding_keyboard_shortcuts -Often, these shortcut keyboard command are only recognized when a textfield has focus; otherwise,the browser might do some browser-specific actions, like setting a bookmark etc. +Often, these shortcut keyboard command are only recognized when a text field has focus; otherwise,the browser might do some browser-specific actions, like setting a bookmark etc.
diff --git a/mathics/version.py b/mathics/version.py index 825459beb7..2130fa6d03 100644 --- a/mathics/version.py +++ b/mathics/version.py @@ -4,4 +4,4 @@ # This file is suitable for sourcing inside POSIX shell as # well as importing into Python. That's why there is no # space around "=" below. -__version__="2.1.1.dev0" # noqa +__version__="2.2.0" # noqa