Releases: Mathics3/mathics-django
8.0.1
Release 8.0.0 (#223)
- Adjust for Mathics3 core 8.0.0 API
- Add bottom documentation navigation bar
- Add summaries of items in searching. Bold (no summary) indicates a section header
- Revise gallery example
- Track Combinatorica package name change
7.0.0: Administrivia:
- Adjust for Mathics3 core 7.0.0 API, e.g., add explicit call to load builtins
- doctest refactored to use more routines common to mathics-core
- Support newer matplotlib, e.g. 3.9.1
- Update gallery examples
- Add background and tooltips to Graphics3D
- Expand information in /about:
- max digits in string
- system encoding
- time format
Too late for Valentines Day
- Use the latest mathics_threejs_backend: 1.3.1
- Environment variables which change Django settings (also shown under Settings)
MATHICS_DJANGO_ALLOWED_HOSTS
sets DjangoALLOWED_HOST
; use semicolon to separate entriesMATHICS_DJANGO_DEBUG_HOSTS
sets DjangoDEBUG
MATHICS_DJANGO_DISPLAY_EXCEPTIONS_HOSTS
sets DjangoDISPLAY_EXCEPTIONS
- Adjust for Mathics3 core 6.0.0 API
- "About" page:
- Python Implementation (CPython, PyPy, Pyston) explicitly is shown
- Optional Python packages are also shown along with their version
- Long
<url>
lines in documentation split into several lines. - Gallery examples now include image manipulation and Mathics3 Graph and NLP modules
- Mathics3 errors are displayed better showing error tags, messages, and output more visible distinct.
- Python tracebacks shown in the browser as formatted nicer; use
make runserver-debug
to have Python tracebacks included in browser, in addition to the backend console. - Menubar entries add for:
- running gallery examples
- going to github repository for Mathics-Django
- getting to the information page
- Split out controllers into separate files
- Upgrade to fontawesome 6.2.1
We have gradually been rolling in more Python type annotations and have been using current Python practices. Tools such as using isort
, black
and flake8
are used as well.
5.0.0
4.0.2
Augustus lost
Fix a small packaging issue where we weren't install autoload/settings.m
.
This combined with a bug in Mathics core was causing evaluating expressions to fail.
Augustus won
The main thrust behind this API-breaking release is to be able to support a protocol for Graphics3D.
It new Graphics3D protocol is currently expressed in JSON. There is an ndependent threejs-based module. to implement this. Tiago Cavalcante Trindade is responsible for this
code.
Previously, this Javascript code and library was embedded into this code base. By separating the two, this library can be used more easily outside of Django. And the library has gotten considerably better in terms of being tested and documented.
The other main API-breaking change is more decentralization of the Mathics Documentation. A lot more work needs to go on here, and so
there will be one or two more API breaking releases. After this release, the documentation code will be split off into its own git repository.
Enhancements
- a Graphics3D protocol, mentioned above, has been started
mathics_django.setting
has been gone over to simplify.- The "about" page now includes the Python version as well as the mathics-threejs-backend version
- Some Image Gallery examples have been added. Some of the examples have been reordered to put the slower examples towards the end.
- Much of the Javascript code that remains after pulling out the Graphics3D code has been modernized.
- Use of the "scriptaculous" library has been reduced. It will be eliminated totally in a future release.
Documentation
- Document data used in producing HTML-rendered documents is now stored in both the user space, where it can be extended, and in the
package install space -- which is useful when there is no user-space data. - Code duplication used in creating documentation has been reduced. It will be moved more completely out in a future release
- Summary text for various built-in functions has been started. These summaries are visible in Mathics Django when lists links are given in Chapters, Guide Sections, or Sections. See the online documentation of
Associations
for an example of a list with
additional summary information.
Regressions
- Some of the test output for buitins inside a guide sections is not automatically rendered. See the on-line documentation for
Binarize
for
an example of this. - Density plot rendered in Mathics Django do not render as nice since we no longer use the secret protocol handshake hack. We may fix this in a future release
Independence minus 1
- Add
Arrow
andCylinder
(preliminary) - Improve sectioning and subsectioning. (A lot more could be done on both the data tagging and presentation side)
- Improve gallery examples
- Modernize Javascript code more and get closer to removing scriptaculous