You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGES.rst
+92-17
Original file line number
Diff line number
Diff line change
@@ -1,14 +1,62 @@
1
1
CHANGES
2
2
=======
3
3
4
+
5
+
8.0.1
6
+
-----
7
+
8
+
Feb 8, 2025
9
+
10
+
Some work was made to the Mathics3 Kernel to work in Python 3.13.
11
+
The maximum version of numpy was increased to < 2.3 so as to allow marimo to work.
12
+
13
+
14
+
Bugs
15
+
----
16
+
17
+
Correct for mismatch between ListExpression and tuple in ``DispatchAtom``.
18
+
This is needed for PacletManager code to work better.
19
+
20
+
21
+
Compatibility
22
+
-------------
23
+
24
+
* When the result of an evaluation is ``Symbol`Null``, Mathics CLI
25
+
now does not show an ``Out[...]=`` line, following the behavior of
26
+
the WMA CLI.
27
+
* Aymptote rendering of platonic solids added.
28
+
29
+
30
+
Internals
31
+
---------
32
+
33
+
Document tagging code handles TeX math mode more completely. Image tags in PDF properly.
34
+
35
+
Documentation
36
+
-------------
37
+
38
+
* Documentation has been gone over so that expressions are tagged in TeX. As a result the user guide and reference manual render much nicer in the PDF as well as in Django.
39
+
* More links have been added. References to The Digital Library of Mathematical Functions https://dlmf.nist.gov/ have been added where appropriate.
40
+
* Add mention of MathicsLive
41
+
* Platonic solid render properly in PDF
42
+
43
+
44
+
8.0.0
45
+
-----
46
+
47
+
Jan 26, 2025
48
+
4
49
This release is to get out some of the major changes that have gone on
5
50
already in advance of redoing Boxing and Formatting.
6
51
52
+
Code now supports the emscripten platform, so this code can be installed
53
+
in pyodide using ``micropip.install``.
54
+
7
55
Operators are now controlled from a new operators YAML table from the
8
56
``mathics-scanner`` repository. A pass was made over the Mathics parser
9
57
to handle box operators more properly. More work is needed here.
10
58
11
-
We started adding more debugging capabilites:
59
+
We started adding more debugging capabilities:
12
60
13
61
* ``Breakpoint[]``
14
62
* ``Stack[]``, and
@@ -20,33 +68,41 @@ And in the ``Mathics3-Trepan`` repository:
20
68
* ``Debugger[]``, and
21
69
* ``TraceActivate[]``
22
70
23
-
This code is very much alpha quality, but it greatly improves the
24
-
ability to debug problems in loading existing packages written from
25
-
Mathematica. So packages ``BoolEval`` and ``CleanSlate`` were added to
26
-
the repostiory.
71
+
Option ``--post-mortem`` was added which goes into the `trepan3k debugger <https https://pypi.org/project/trepan3k/>`_ on an unrecoverable error. This option is available on other front ends.
72
+
73
+
This debugging code is very much alpha quality, but it greatly
74
+
improves the ability to debug problems in loading existing packages
75
+
written from Mathematica. So packages ``BoolEval`` and ``CleanSlate``
76
+
were added to the repository.
27
77
28
78
Also as a result of the improved ability to debug Mathics3, we now
29
79
provide a version of Rubi 4.17 using git submodules . To use this you
30
80
will need a patched version of ``stopit``. Aravindh Krishnamoorthy
31
-
led the initial port of Rubi.
81
+
led the initial port of `Rubi<https://github.com/Mathics3/Mathics3-Rubi>`_.
32
82
33
83
David A. Roberts worked on ensuring Mathics3 runs on pyodide and
34
84
contributed a number of new Built-in Functions that are found in `The
35
-
On-Line Encyclopedia of Integer Sequences (OEIS) <https://oeis.org/>`_
85
+
On-Line Encyclopedia of Integer Sequences (OEIS) <https://oeis.org/>`_.
36
86
37
87
38
88
New Builtins
39
89
++++++++++++
40
90
41
91
* ``Between``
42
-
* ``Breakpoint`` - forces a Python ``breakpoint()``
92
+
* ``Breakpoint`` - (not WMA; forces a Python ``breakpoint()``
43
93
* ``CheckAbort``
44
94
* ``FileNameDrop``
45
95
* ``FormatValues``
46
-
* ``SetEnvironment``
96
+
* ``ListStepPlot``
97
+
* ``MapApply``
98
+
* ``PythonCProfileEvaluation`` (not WMA; interface to Python cProfile)
99
+
* ``RealValuedNumberQ``
47
100
* ``SequenceForm``
101
+
* ``SetEnvironment``
48
102
* ``Stack``
103
+
* ``SyntaxQ``
49
104
* ``Trace``
105
+
* ``UnitStep``
50
106
51
107
By `@davidar <https://github.com/davidar>`_:
52
108
@@ -74,23 +130,38 @@ By `@davidar <https://github.com/davidar>`_:
74
130
* ``SquaresR``
75
131
* ``Subfactorial``
76
132
133
+
Documentation
134
+
+++++++++++++
135
+
136
+
* Unicode operators appear in Django documentation. In the PDF, AMSLaTeX is used.
137
+
* Summaries of builtin functions have been improved and regularized
138
+
77
139
``mathics`` command line
78
140
++++++++++++++++++++++++
79
141
80
-
* ``--post-mortem`` option added which will go into the `trepan3k debugger <https https://pypi.org/project/trepan3k/>`_ on an unrecoverable error.
142
+
Option ``--post-mortem`` was added which goes into the `trepan3k
143
+
debugger <https https://pypi.org/project/trepan3k/>`_ on an
144
+
unrecoverable error. This option is available on other front-ends..
81
145
82
146
WMA Compatibility
83
147
-----------------
84
148
85
149
* ``GetEnvironment`` expanded to handle ``[]`` and ``{var1, var2,...}`` forms
86
150
* The system ``packages`` directory has been renamed ``Packages`` to conformance with WMA.
87
151
* ``$Path`` now includes a ``Packages`` directory under ``$HOME``.
152
+
* All of the 100 or so Unicode operators without a pre-defined meaning are now supported
88
153
89
154
Internals
90
155
---------
91
156
92
-
* Operator information has been gone over and is picked up from JSON
93
-
tables produced from the Mathics Scanner project.
157
+
* More of the on-OO evaluation code that forms what might be an
158
+
instruction evaluator has been moved out of the module
159
+
``mathics.builtins`` put in ``mathics.eval``. This includes code for
160
+
plotting, and making boxes.
161
+
* nested ``TimeConstraint[]`` works via external Python module ``stopit``.
162
+
* ``Pause[]`` is more interruptible
163
+
* More code has been linted, more type errors removed, and docstrings added/improved
164
+
94
165
95
166
Performance
96
167
-----------
@@ -108,31 +179,33 @@ API incompatibility
108
179
* Patterns in ``eval_`` and ``format_`` methods of builtin classes
109
180
parses patterns in docstrings of the form
110
181
``Symbol: Expr`` as ``Pattern[Symbol, Expr]``.
111
-
To specify associated format in ``format_`` methods the
182
+
To specify the associated format in ``format_`` methods the
112
183
docstring, the list of format must be wrapped in parenthesis, like
113
184
``(InputForm,): Definitions[...]`` instead of just ``InputForm: Definitions[...]``.
114
-
185
+
* Character and Operator information that has been gone over in the Mathics Scanner project. The information in JSON tables, the keys, and values have thus change. Here, we read this information in and use that instead of previously hard-coded values.
115
186
116
187
117
188
Bugs
118
189
----
119
190
120
191
* Fix infinite recursion when formatting ``Sequence[...]``
192
+
* Parsing ``\(`` ... ``\)`` improved
193
+
* Fixed #1105, #1106, #1107, #1172 #1173, #1195, #1205, #1221, #1223, and #1228 among others
121
194
122
195
Mathics3 Packages
123
196
+++++++++++++++++
124
197
125
198
* Added ``BoolEval``
126
199
* Added ``CleanSlate``
127
-
* ``Combinatorica`` moved to a separate repository and v.9 renamed to 0.9.1.
128
-
More code v0.9.1 works. v2.0 renamed v2.0.1 and some code now works.
200
+
* ``Combinatorica`` moved to a separate repository and v.9 was renamed to 0.9.1.
201
+
More code v0.9.1 works. v2.0 was renamed v2.0.1 and some code now works.
129
202
* ``Rubi`` version 4.17 (work in progress; algebraic integrations work)
0 commit comments