diff --git a/.github/workflows/consistency-checks.yml b/.github/workflows/consistency-checks.yml index 2418e12..cd935f5 100644 --- a/.github/workflows/consistency-checks.yml +++ b/.github/workflows/consistency-checks.yml @@ -11,7 +11,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: ['3.12'] + python-version: ['3.13'] steps: - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} @@ -20,16 +20,17 @@ jobs: python-version: ${{ matrix.python-version }} - name: Install dependencies run: | - # python -m pip install --upgrade pip + python -m pip install --upgrade pip + python -m pip install --upgrade setuptools>=70.0.0 python -m pip install pytest # Can comment out 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] - python -m pip install -e git+https://github.com/Mathics3/mathics-core#egg=Mathics3[full] - (cd src/mathics3 && bash ./admin-tools/make-JSON-tables.sh) - # python -m pip install Mathics3[full] - python -m pip install -e git+https://github.com/Mathics3/Mathics3-Module-Base#egg=Mathics3-Module-Base - - name: Install Pymathics.natlang + # python -m pip install -e git+https://github.com/Mathics3/mathics-scanner#egg=Mathics-Scanner[full] + # python -m pip install -e git+https://github.com/Mathics3/mathics-core#egg=Mathics3[full] + # (cd src/mathics3 && bash ./admin-tools/make-JSON-tables.sh) + # python -m pip install -e git+https://github.com/Mathics3/Mathics3-Module-Base#egg=Mathics3-Module-Base + - name: Install Mathics3 natlang Module run: | + python -m pip install --no-build-isolation setuptools Mathics3[full] nltk PatternLite enchant make develop - name: Test Mathics Consistency and Style run: | diff --git a/.github/workflows/isort-and-black-checks.yml b/.github/workflows/isort-and-black-checks.yml index 6bc2ac5..511fd01 100644 --- a/.github/workflows/isort-and-black-checks.yml +++ b/.github/workflows/isort-and-black-checks.yml @@ -10,10 +10,10 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - - name: Set up Python 3.9 + - name: Set up Python 3.13 uses: actions/setup-python@v5 with: - python-version: 3.9 + python-version: 3.13 - name: Install click run: pip install 'click==8.0.4' - name: Install Black diff --git a/.github/workflows/ubuntu.yml b/.github/workflows/ubuntu.yml index 84cea12..b7ffc7e 100644 --- a/.github/workflows/ubuntu.yml +++ b/.github/workflows/ubuntu.yml @@ -11,8 +11,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - # 3.9 works but it takes a long time to gather dependencies - python-version: ['3.10', '3.11', '3.12', '3.13'] + python-version: ['3.12', '3.13'] steps: - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} @@ -22,16 +21,18 @@ jobs: - name: Install dependencies run: | python -m pip install --upgrade pip + # Required for some kind of conflict with stopit... + python -m pip install --upgrade setuptools>=70.0.0 python -m pip install pytest # Go over and comment out stuff when next Mathics 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]) - (cd mathics-core && bash ./admin-tools/make-JSON-tables.sh) - python -m pip install -e git+https://github.com/Mathics3/Mathics3-Module-Base#egg=Mathics3-Module-Base - python -m pip install -e . + # 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]) + # (cd mathics-core && bash ./admin-tools/make-JSON-tables.sh) + # python -m pip install -e git+https://github.com/Mathics3/Mathics3-Module-Base#egg=Mathics3-Module-Base - name: Install Mathics3 natlang Module run: | + python -m pip install --no-build-isolation setuptools Mathics3[full] nltk PatternLite enchant make develop - name: Test natlang Mathics3 Module run: | diff --git a/Makefile b/Makefile index 31b7ce7..d7bf4dd 100644 --- a/Makefile +++ b/Makefile @@ -33,13 +33,9 @@ wordlist: $(PYTHON) -m nltk.downloader wordnet2022 omw-1.4 $(PYTHON) -m spacy download $(SPACY_DOWNLOAD) -#: build everything needed to install -build: pypi-setup - $(PYTHON) ./setup.py build - #: Check Python version, and install PyPI dependencies pypi-setup: - $(PIP) install -e . + $(PIP) install --no-build-isolation -e . #: Set up to run from the source tree develop: pypi-setup diff --git a/pymathics/natlang/version.py b/pymathics/natlang/version.py index 9df2b14..9d003f0 100644 --- a/pymathics/natlang/version.py +++ b/pymathics/natlang/version.py @@ -5,4 +5,4 @@ # well as importing into Python. That's why there is no # space around "=" below. # fmt: off -__version__="8.0.2.dev0" # noqa +__version__="9.0.0" # noqa diff --git a/pyproject.toml b/pyproject.toml index cfc458b..926a6cd 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,17 +1,7 @@ [build-system] requires = [ - "setuptools>=70.0.0", - "sympy>=1.11,<1.13", - "PatternLite", - "langid", # replace with a supported newer package, e.g. via spacy - "matplotlib", - "mpmath>=1.2.0", - "numpy", - "pycountry>=3.2.0", - "pyenchant>=3.2.0", - "scipy>=1.10.0", - "spacy>=3.4", - "wasabi<1.1.0,>=0.8.2", + "setuptools>=70.0.0", + "wheel", ] build-backend = "setuptools.build_meta" @@ -19,13 +9,16 @@ build-backend = "setuptools.build_meta" name = "Mathics3-natlang" description = "Mathics3 Natural Language Toolkit module" dependencies = [ - "Mathics3>=8.0.1", - "Mathics3-Module-Base", + "setuptools>=70.0.0", + "Mathics3>=9.0.0", + "Mathics3-Module-Base>=9.0.0", "click>=8.0", "joblib>=1.0.1", - "langid", # replace with a supported newer package, e.g. via spacy + # replace with a supported newer package, e.g. via spacy + "langid", "llvmlite>=0.36", "nltk>=3.8.0", + "mpmath>=1.2.0", "PatternLite", "pyenchant>=3.2.0", "pycountry>=3.2.0", @@ -34,7 +27,7 @@ dependencies = [ ] requires-python = ">=3.10" readme = "README.rst" -license = {text = "GPL"} +license = "GPL-3.0-or-later" keywords = ["Mathematica", "Wolfram", "Interpreter", "Shell", "Math", "CAS"] maintainers = [ {name = "Mathics Group", email = "mathics-devel@googlegroups.com"}, @@ -42,7 +35,6 @@ maintainers = [ classifiers = [ "Intended Audience :: Developers", "Intended Audience :: Science/Research", - "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Programming Language :: Python", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", @@ -71,4 +63,6 @@ packages = [ ] [tool.setuptools.dynamic] -version = {attr = "pymathics.natlang.__version__"} +# We cannot load the version directly from pymathics.natlang.__init__, +# because it would try to import modules which are not already installed. +version = {attr = "pymathics.natlang.version.__version__"}