From a8295a76cb0f1c7372f6b885e5e261da33c98c28 Mon Sep 17 00:00:00 2001 From: rocky Date: Sat, 21 Mar 2026 06:41:18 -0400 Subject: [PATCH 1/3] Bump version to 10.0.0.dev --- pymathics/icu/version.py | 2 +- pyproject.toml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pymathics/icu/version.py b/pymathics/icu/version.py index 9888765..d894f4c 100644 --- a/pymathics/icu/version.py +++ b/pymathics/icu/version.py @@ -5,4 +5,4 @@ # well as importing into Python. That's why there is no # space around "=" below. # fmt: off -__version__="9.0.1.dev0" # noqa +__version__="10.0.0.dev0" # noqa diff --git a/pyproject.toml b/pyproject.toml index 78504c6..ba1009f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -2,7 +2,7 @@ requires = [ "setuptools", "Mathics3-Module-Base >= 9.0.0", - "Mathics3>=9.0.0", + "Mathics3>9.0.0", "PyICU>=2.9", ] build-backend = "setuptools.build_meta" @@ -12,7 +12,7 @@ name = "Mathics3-Module-PyICU" description = 'Mathics3 Module ICU - Human-Language Alphabets and Locales via PyICU' dependencies = [ "Mathics3-Module-Base >= 9.0.0", - "Mathics3 >= 9.0.0", + "Mathics3 > 9.0.0", "PyICU>=2.9", ] requires-python = ">=3.10" From ecc0480b71e85a131276a2756ca21820fb5a5791 Mon Sep 17 00:00:00 2001 From: rocky Date: Mon, 20 Apr 2026 10:06:49 -0400 Subject: [PATCH 2/3] Get ready for release 10.0.0 --- .github/workflows/autoblack.yml | 4 ++-- .github/workflows/isort-and-black-checks.yml | 4 ++-- .github/workflows/macos.yml | 4 ++-- .github/workflows/ubuntu.yml | 4 ++-- Makefile | 10 +++++++--- NEWS.md | 8 ++++++++ pymathics/icu/__init__.py | 8 +++++++- pymathics/icu/__main__.py | 12 ++++++++++-- pymathics/icu/version.py | 2 +- pyproject.toml | 11 +++++------ 10 files changed, 46 insertions(+), 21 deletions(-) diff --git a/.github/workflows/autoblack.yml b/.github/workflows/autoblack.yml index 9767ec6..7e754a2 100644 --- a/.github/workflows/autoblack.yml +++ b/.github/workflows/autoblack.yml @@ -9,11 +9,11 @@ jobs: build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - name: Set up Python 3.13 uses: actions/setup-python@v5 with: - python-version: 3.13 + python-version: 3.14 - name: Install click, black and isort run: pip install 'click==8.2.1' 'black==25.11.0' 'isort==5.13.2' - name: Run isort --check . diff --git a/.github/workflows/isort-and-black-checks.yml b/.github/workflows/isort-and-black-checks.yml index 9366048..1273de1 100644 --- a/.github/workflows/isort-and-black-checks.yml +++ b/.github/workflows/isort-and-black-checks.yml @@ -9,8 +9,8 @@ jobs: build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 - - name: Set up Python 3.13 + - uses: actions/checkout@v5 + - name: Set up Python 3.14 uses: actions/setup-python@v5 with: python-version: 3.13 diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 69c6a92..230911e 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -12,9 +12,9 @@ jobs: strategy: matrix: os: [macOS] - python-version: ['3.12', '3.13'] + python-version: ['3.13', '3.14'] steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v5 with: diff --git a/.github/workflows/ubuntu.yml b/.github/workflows/ubuntu.yml index ae7b8af..8fe1e80 100644 --- a/.github/workflows/ubuntu.yml +++ b/.github/workflows/ubuntu.yml @@ -11,9 +11,9 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: ['3.12', '3.13'] + python-version: ['3.12', '3.13', '3.14'] steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v5 with: diff --git a/Makefile b/Makefile index 136f76e..a9c09f7 100644 --- a/Makefile +++ b/Makefile @@ -11,6 +11,7 @@ RM ?= rm LANG = en .PHONY: all build \ + ChangeLog-without-corrections \ check clean \ develop dist doc doc-data \ pypi-setup \ @@ -60,11 +61,14 @@ pytest: # doc mathics.pdf: mathics/doc/tex/data # (cd mathics/doc/tex && $(MAKE) mathics.pdf) +#: Create ChangeLog from version control without corrections +ChangeLog-without-corrections: + git log --pretty --numstat --summary | $(GIT2CL) >ChangeLog + #: Remove ChangeLog rmChangeLog: $(RM) ChangeLog || true #: Create a ChangeLog from git via git log and git2cl -ChangeLog: rmChangeLog - git log --pretty --numstat --summary | $(GIT2CL) >$@ - patch ChangeLog < ChangeLog-spell-corrected.diff +ChangeLog: rmChangeLog ChangeLog-without-corrections + patch -p0 ChangeLog < ChangeLog-spell-corrected.diff diff --git a/NEWS.md b/NEWS.md index 41e8941..bd1a60c 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,3 +1,11 @@ +10.0.0 +------ + +April 20, 2026 + +Revise for 10.0.0 Mathics3 API. Python 3.14 supported. Python for 3.10 dropped. Python 3.10 may still work, but it's not supported. + + 9.0.0 ----- diff --git a/pymathics/icu/__init__.py b/pymathics/icu/__init__.py index b2a71cb..5e78af5 100644 --- a/pymathics/icu/__init__.py +++ b/pymathics/icu/__init__.py @@ -36,4 +36,10 @@ "requires": ["PyICU"], } -__all__ = ["Alphabet", "AlphabeticOrder", "Language", "pymathics_version_data", "__version__"] +__all__ = [ + "Alphabet", + "AlphabeticOrder", + "Language", + "pymathics_version_data", + "__version__", +] diff --git a/pymathics/icu/__main__.py b/pymathics/icu/__main__.py index dd570b7..45aac4c 100644 --- a/pymathics/icu/__main__.py +++ b/pymathics/icu/__main__.py @@ -161,9 +161,17 @@ def eval(self, string1: String, string2: String, evaluation: Evaluation): """AlphabeticOrder[string1_String, string2_String]""" return Integer(eval_alphabetic_order(string1.value, string2.value)) - def eval_with_lang(self, string1: String, string2: String, lang: String, evaluation: Evaluation): + def eval_with_lang( + self, string1: String, string2: String, lang: String, evaluation: Evaluation + ): """AlphabeticOrder[string1_String, string2_String, lang_String]""" - return Integer(eval_alphabetic_order(string1.value, string2.value, lang.value, )) + return Integer( + eval_alphabetic_order( + string1.value, + string2.value, + lang.value, + ) + ) ## FIXME: move to mathics-core. Will have to change references to Pymathics`$Language to $Language diff --git a/pymathics/icu/version.py b/pymathics/icu/version.py index d894f4c..e2fcf46 100644 --- a/pymathics/icu/version.py +++ b/pymathics/icu/version.py @@ -5,4 +5,4 @@ # well as importing into Python. That's why there is no # space around "=" below. # fmt: off -__version__="10.0.0.dev0" # noqa +__version__="10.0.0" # noqa diff --git a/pyproject.toml b/pyproject.toml index ba1009f..dd28181 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -2,7 +2,7 @@ requires = [ "setuptools", "Mathics3-Module-Base >= 9.0.0", - "Mathics3>9.0.0", + "Mathics3>=10.0.0", "PyICU>=2.9", ] build-backend = "setuptools.build_meta" @@ -11,11 +11,11 @@ build-backend = "setuptools.build_meta" name = "Mathics3-Module-PyICU" description = 'Mathics3 Module ICU - Human-Language Alphabets and Locales via PyICU' dependencies = [ - "Mathics3-Module-Base >= 9.0.0", - "Mathics3 > 9.0.0", + "Mathics3-Module-Base >= 10.0.0", + "Mathics3 >= 10.0.0", "PyICU>=2.9", ] -requires-python = ">=3.10" +requires-python = ">=3.11" readme = "README.rst" license = "GPL-3.0-or-later" keywords = ["Mathematica", "Wolfram", "Interpreter", "Shell", "Math", "CAS"] @@ -26,12 +26,11 @@ classifiers = [ "Intended Audience :: Developers", "Intended Audience :: Science/Research", "Programming Language :: Python", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", "Programming Language :: Python :: Implementation :: CPython", - "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Scientific/Engineering", "Topic :: Scientific/Engineering :: Mathematics", "Topic :: Software Development :: Interpreters", From 5d8235ecf7524feeabf98b32ff4f51932eda6db0 Mon Sep 17 00:00:00 2001 From: "R. Bernstein" Date: Mon, 20 Apr 2026 10:21:17 -0400 Subject: [PATCH 3/3] Fix code block formatting in README --- .github/workflows/macos.yml | 2 +- .github/workflows/ubuntu.yml | 2 +- Makefile | 4 ++-- README.rst | 15 ++++++++++++++- pyproject.toml | 4 ++-- 5 files changed, 20 insertions(+), 7 deletions(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 230911e..8f23e58 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -27,7 +27,7 @@ jobs: brew install llvm python -m pip install --upgrade pip python -m pip install pytest - # # Go over and comment out stuff when next Mathics core and Mathics-scanner are released + # # Go over and comment out stuff when next Mathics3 core and Mathics-scanner are released # python -m pip install -e git+https://github.com/Mathics3/mathics-scanner#egg=Mathics-Scanner[full] # git clone https://github.com/Mathics3/mathics-core # (cd mathics-core && pip3 install -e .[full]) diff --git a/.github/workflows/ubuntu.yml b/.github/workflows/ubuntu.yml index 8fe1e80..54a53a8 100644 --- a/.github/workflows/ubuntu.yml +++ b/.github/workflows/ubuntu.yml @@ -23,7 +23,7 @@ jobs: sudo apt install libicu-dev python -m pip install --upgrade pip python -m pip install pytest - # # Go over and comment out stuff when next Mathics core and Mathics-scanner are released + # # Go over and comment out stuff when next Mathics3 core and Mathics-scanner are released # python -m pip install -e git+https://github.com/Mathics3/mathics-scanner#egg=Mathics-Scanner[full] # git clone https://github.com/Mathics3/mathics-core # (cd mathics-core && pip3 install -e .[full]) diff --git a/Makefile b/Makefile index a9c09f7..976080c 100644 --- a/Makefile +++ b/Makefile @@ -57,8 +57,8 @@ pytest: pytest test $o -# #: Make Mathics PDF manual -# doc mathics.pdf: mathics/doc/tex/data +# #: Make Mathics3 PDF manual +# doc mathics3.pdf: mathics/doc/tex/data # (cd mathics/doc/tex && $(MAKE) mathics.pdf) #: Create ChangeLog from version control without corrections diff --git a/README.rst b/README.rst index b8e4408..fa3d059 100644 --- a/README.rst +++ b/README.rst @@ -1,3 +1,8 @@ +|Pypi Installs| |Latest Version| |Supported Python Versions| + +Mathics3 Natural Language Toolkit module. + + Mathics3 Module for ICU — International Components for Unicode Functions that provide information from the `Python ICU library `_. @@ -5,7 +10,7 @@ Functions that provide information from the `Python ICU library = 10.0.0", + "Mathics3-Module-Base >= 9.0.0", "Mathics3 >= 10.0.0", "PyICU>=2.9", ] @@ -20,7 +20,7 @@ readme = "README.rst" license = "GPL-3.0-or-later" keywords = ["Mathematica", "Wolfram", "Interpreter", "Shell", "Math", "CAS"] maintainers = [ - {name = "Mathics Group", email = "mathics-devel@googlegroups.com"}, + {name = "Mathics3 Group", email = "mathics-devel@googlegroups.com"}, ] classifiers = [ "Intended Audience :: Developers",