Skip to content

Commit 8c732b2

Browse files
committed
Merge pull request #1375 from mathics/release-2.2.0
Get ready for release 2.2.0
2 parents 462f995 + 4c2392d commit 8c732b2

File tree

4 files changed

+39
-24
lines changed

4 files changed

+39
-24
lines changed

CHANGES.rst

Lines changed: 28 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ CHANGES
22
=======
33

44

5-
2.1.1
5+
2.2.0
66
-----
77

88
Package update
@@ -36,26 +36,30 @@ Enhancements
3636
* ``Cases`` accepts Heads option. Issue #1302.
3737
* ``ColorNegate`` for colors is supported.
3838
* ``D`` and ``Derivative`` improvements.
39-
* ``Expand`` and ``ExpandAll`` now support a second parameter ``patt`` (#1301)
40-
* ``Expand`` and ``ExpandAll`` works with hyperbolic functions (`Sinh`, `Cosh`, `Tanh`, `Coth`)
39+
* ``Expand`` and ``ExpandAll`` now support a second parameter ``patt`` Issue #1301.
40+
* ``Expand`` and ``ExpandAll`` works with hyperbolic functions (`Sinh`, `Cosh`, `Tanh`, `Coth`).
4141
* ``FileNames`` returns a sorted list (#1250).
42-
* ``FindRoot`` now receives several optional parameters like ``Method`` and ``MaxIterations``.
42+
* ``FindRoot`` now accepts several optional parameters like ``Method`` and ``MaxIterations``. See Issue #1235.
4343
* ``FixedPoint`` now supports the ``SameTest`` option.
4444
* ``mathics`` CLI now uses its own Mathics ``settings.m`` file
4545
* ``Prepend`` works with ``DownValues`` Issue #1251
4646
* ``Prime`` and ``PrimePi`` now accept a list parameter and have the ``NumericFunction`` attribute.
4747
* ``Read`` with ``Hold[Expression]`` now supported. (#1242)
48-
* ``ReplaceRepeated`` and ``FixedPoint`` now supports the ``MaxIteration`` option (#1260).
48+
* ``ReplaceRepeated`` and ``FixedPoint`` now supports the ``MaxIteration`` option. See Issue #1260.
4949
* ``Simplify`` performs a more sophisticated set of simplifications.
5050
* ``Simplify`` accepts a second parameter that temporarily overwrites ``$Assumptions``.
51-
* ``StringTake`` now accepts form containing a list of strings and specification (#1297).
51+
* ``StringTake`` now accepts form containing a list of strings and specification. See Issue #1297.
5252
* ``Table`` [*expr*, *n*] is supported.
5353
* ``ToExpression`` handles multi-line string input.
5454
* ``ToString`` accepts an optional *form* parameter.
55-
* The implementation of Streams was redone.
56-
* ``ToExpression`` handles multi-line string input
57-
* ``$VersionNumber`` now set to 10.0 (was 6.0)
55+
* ``ToExpression`` handles multi-line string input.
56+
* ``$VersionNumber`` now set to 10.0 (was 6.0).
5857
* The implementation of Streams was redone.
58+
* Function ``mathics.core.definitions.autoload_files`` was added and
59+
exposed to allow front-ends to provide their own custom Mathics.
60+
settings.
61+
* String output in the ``mathics`` terminal has surrounding quotes to make it more visually distinct from unexpanded and symbol output.
62+
To disable this behavior use ``--strict-wl-output``.
5963

6064

6165
Bug fixes
@@ -64,19 +68,26 @@ Bug fixes
6468
* ``SetTagDelayed`` now does not evaluate the RHS before assignment.
6569
* ``$InstallationDirectory`` starts out ``Unprotected``.
6670
* ``FindRoot`` now handles equations.
71+
* Malformed Patterns are detected and an error message is given for them.
6772
* Functions gone over to ensure the ``Listable`` and ``NumericFunction`` properties are correct.
6873

6974

7075
Incompatible changes
7176
--------------------
7277

73-
``System`$UseSansSerif`` moved from core and is sent front-ends using ``Settings`$UseSansSerif``.
78+
* ``System`$UseSansSerif`` moved from core and is sent front-ends using ``Settings`$UseSansSerif``.
79+
7480

7581
Internal changes
7682
----------------
7783

7884
* doctest accepts the option ``-d`` to show how long it takes to parse, evaluate and compare each individual test.
7985
``-x`` option (akin to ``pytests -x`` is a short-hand for stop on first error
86+
* Some builtin functions have been grouped together in a module
87+
underneath the top-level builtin directory. As a result, in the
88+
documents you will list some builtins listed under an overarching
89+
categery like ``Specific Functions`` or ``Graphics, Drawing, and
90+
Images``. More work is expected in the future to improve document sectioning.
8091

8192

8293
2.1.0
@@ -125,7 +136,7 @@ Pymathics Modules
125136
+++++++++++++++++
126137

127138
* Pymathics modules now can run initialization code when are loaded.
128-
* The ``builtins`` list is not hardliked to the library anymore. This simplifies
139+
* The ``builtins`` list is not hard-linked to the library anymore. This simplifies
129140
the loading and reloading of pymathics modules.
130141
* Decoupling of BoxConstructors from the library. Now are defined at the
131142
level of the definition objects. This is useful for customizing the
@@ -135,10 +146,10 @@ Pymathics Modules
135146
Miscellanea
136147
+++++++++++
137148

138-
* A pass was made to improve Microsoft Windows compatability and testing Windows under MSYS.
149+
* A pass was made to improve Microsoft Windows compatibility and testing Windows under MSYS.
139150
* Include numpy version in version string. Show in CLI
140151
* Small CLI tweaks ``--colors=None`` added to match mathicsscript.
141-
* In the ``BaseExpression`` and derivated classes, the method ``boxes_to_xml`` now are called ``boxes_to_mathml``.
152+
* In the ``BaseExpression`` and derived classes, the method ``boxes_to_xml`` now are called ``boxes_to_mathml``.
142153
* In the ``format`` method of the class ``Evaluation``, the builtin ``ToString`` is called instead of ``boxes_to_text``
143154
* In order to control the final form of boxes from the user space in specific symbols and contexts.
144155
* ``GraphicsBox`` now have two methods: ``to_svg`` and ``to_mathml``. The first produces SVG plain text while the second produces ``<mglyph ...>`` tags with base64 encoded SVGs.
@@ -161,7 +172,7 @@ What's to expect in a Future Release
161172
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:
162173

163174
* The Django front-end is now a PyPI installable package called `Mathics-Django <https://pypi.org/project/Mathics-Django/>`_.
164-
* Scanner routines, character translation tables to/from unicode, and character properties are now `mathics-scanner https://github.com/Mathics3/mathics-scanner`_.
175+
* Scanner routines, character translation tables to/from Unicode, and character properties are now `mathics-scanner https://github.com/Mathics3/mathics-scanner`_.
165176
* 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`_.
166177

167178
Incompatible changes:
@@ -254,7 +265,7 @@ Future
254265
* Work is also being done on asymptote. See `PR #1145 <https://github.com/mathics/Mathics/pull/1145>`_.
255266
* Makeboxes is being decoupled from a renderer. See `PR #1140 <https://github.com/mathics/Mathics/pull/1140>`_.
256267
* Inline SVG will be supported (right now SVG is binary).
257-
* Better support integrating unicode in output (such as for Rule arrows) is in the works. These properties will be in the scanner package.
268+
* Better support integrating Unicode in output (such as for Rule arrows) is in the works. These properties will be in the scanner package.
258269
* A method option ("mpmath", "sympy", or "numpy") will be added to the ``N[]``. See `PR #1144 <https://github.com/mathics/Mathics/pull/1144>`_.
259270

260271

@@ -304,7 +315,7 @@ Enhancements and bug fixes
304315
- Extend ``DeleteCases`` to accept a levelspec parameter
305316
- Set ``Evaluation#exc_result`` to capture ``Aborted``, ``Timeout``, ``Overflow1``, etc.
306317
- ``ImageData`` changed to get bits {0,1}, not booleans as previously
307-
- Add tokenizer symbols for ``<->`` and ``->`` and the unicode versions of those
318+
- Add tokenizer symbols for ``<->`` and ``->`` and the Unicode versions of those
308319
- Small corrections to ``Needs``, e.g check if already loaded, correct a typo, etc.
309320
- ``System`$InputFileName`` is now set inside ``Needs`` and ``Get``
310321
- Install shell scripts ``dmathicserver``, ``dmathicsscript``, and ``dmathics`` to simplify running docker
@@ -408,7 +419,7 @@ Enhancements and bug fixes
408419
- proper sympolic expantion for ``Re`` and ``Im``
409420
- fixes a bug in the evaluation of ``SympyPrime`` #827
410421
- clean up ``ColorData``
411-
- fixes unicode characters in TeX document
422+
- fixes Unicode characters in TeX document
412423
- update Django gallery examples
413424
- fixes ``Sum`` and ``Product`` #869, #873
414425
- warn when using options not supported by a Builtin #898, #645

admin-tools/pyenv-versions

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,4 @@ if [[ $0 == ${BASH_SOURCE[0]} ]] ; then
55
echo "This script should be *sourced* rather than run directly through bash"
66
exit 1
77
fi
8-
export PYVERSIONS='3.6.13 3.7.10 3.8.8 3.9.3'
8+
export PYVERSIONS='3.6.13 3.7.10 3.8.10 3.9.5'

mathics/doc/documentation/1-Manual.mdoc

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -996,7 +996,7 @@ When you enter Mathics in the top after the Mathics logo and the word "Mathics"
996996

997997
It looks like this:
998998

999-
<imgpng src="menubar.png" title="Mathic Menu Bar" label="menubar">
999+
<imgpng src="menubar.png" title="Mathics Menu Bar" label="menubar">
10001000

10011001

10021002
<section title="URIs">
@@ -1025,15 +1025,15 @@ Assuming your are running locally or on a host called 'localhost' using the defa
10251025

10261026
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 <em>Save</em> button which is the middle graphic of the menu bar. It looks like this:
10271027

1028-
<imgpng src="save-button.png" title="Mathic Save Button" label="save-button">
1028+
<imgpng src="save-button.png" title="Mathics Save Button" label="save-button">
10291029

10301030
Depending on browser, desktop, and OS-settings, the "Ctrl+S" key combination may do the same thing.
10311031

10321032
<subsection title="Loading and Deleting Worksheets">
10331033

10341034
Saved worksheets can be loaded or deleted using the <em>File Open</em> button which is the left-most button in the menu bar. It looks like this:
10351035

1036-
<imgpng src="file-open-button.png" title="Mathic File Open Button" label="file-open-button">
1036+
<imgpng src="file-open-button.png" title="Mathics File Open Button" label="file-open-button">
10371037

10381038
Depending on browser, desktop, and OS-settings, the "Ctrl+O" key combination may do the same thing.
10391039

@@ -1053,7 +1053,7 @@ Normally, when you reload the current page in a browser using the default url, e
10531053

10541054
However if you want a URL that will that records the input entered the <em>Generate Input Hash</em> button does this. The button looks like this:
10551055

1056-
<imgpng src="generate-hash-button.png" title="Mathic Generate Input Hash Button" label="generate-input-hash-button">
1056+
<imgpng src="generate-hash-button.png" title="Mathics Generate Input Hash Button" label="generate-input-hash-button">
10571057

10581058
For example, assuming you have a \Mathics server running at port 8000 on <con>localhost</con>, and you enter the url <con>http://localhost:8000/#cXVlcmllcz14</con>, you should see a single line of input containing <con>x</con> entered.
10591059

@@ -1076,11 +1076,15 @@ There are some keyboard commands you can use in the Django-based Web interface o
10761076
<dd>Save worksheet</dd>
10771077
<dt>'Ctrl+O'</dt>
10781078
<dd>Open worksheet</dd>
1079+
<dt>'Right Click' on MathML output</dt>
1080+
<dd>Opens MathJax Menu</dd>
10791081
</dl>
10801082

1083+
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.
1084+
10811085
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: <url>https://help.ubuntu.com/community/KeyboardShortcuts#Finding_keyboard_shortcuts</url>
10821086

1083-
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.
1087+
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.
10841088

10851089
</section>
10861090

mathics/version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,4 @@
44
# This file is suitable for sourcing inside POSIX shell as
55
# well as importing into Python. That's why there is no
66
# space around "=" below.
7-
__version__="2.1.1.dev0" # noqa
7+
__version__="2.2.0" # noqa

0 commit comments

Comments
 (0)