diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 91be4b8..819a30e 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -7,34 +7,44 @@ on: jobs: test: + name: test (${{matrix.python-version}}) runs-on: ubuntu-latest + strategy: + matrix: + python-version: ["3.10", "3.11", "3.12", "3.13"] steps: - name: Checkout repository uses: actions/checkout@v4 - - name: Set up Miniconda - uses: conda-incubator/setup-miniconda@v3 - with: - python-version: '3.10' - activate-environment: testim8 - environment-file: environment.yml - auto-activate-base: false - - name: setup OpenModelica compiler - uses: OpenModelica/setup-openmodelica@v1.0 + uses: OpenModelica/setup-openmodelica@v1.0.2 with: version: 'stable' packages: | - omc + 'omc' libraries: | 'Modelica 4.0.0' + - uses: actions/setup-python@v6 + with: + python-version: 'pypy3.10' + - run: pip install OMPython + - name: compile FMU shell: bash -l {0} run: | python tests/test_data/model_compilation.py --modelname Growth + - name: Set up Miniconda + uses: conda-incubator/setup-miniconda@v3 + with: + auto-update-conda: true + python-version: ${{ matrix.python-version }} + activate-environment: testim8 + environment-file: environment.yml + auto-activate-base: false + - name: Run tests shell: bash -l {0} run: | diff --git a/environment.yml b/environment.yml index 5b331b3..b3e84ad 100644 --- a/environment.yml +++ b/environment.yml @@ -1,22 +1,20 @@ channels: - conda-forge dependencies: - - boa - - conda-build - - python>=3.10,<3.13 - - numpy>=1.17.0,<2 - - pygmo==2.19.6 + - python>=3.10,<=3.13 + - numpy + - pygmo>=2.19.6 - pip - - pandas - - openpyxl - - matplotlib - - seaborn - - grpclib - - pytensor - - fmpy - - scikit-learn==1.4.2 - - scikit-optimize - pip: + - pandas<3 + - openpyxl + - matplotlib + - seaborn + - grpclib + - pytensor + - fmpy + - scikit-learn + - scikit-optimize - pytensor-federated # for code testing - pytest @@ -25,7 +23,5 @@ dependencies: # for building - twine - wheel - # compiling FMU models from OMPython API - - OMPython # sphinx extensions - -r docs/requirements.txt diff --git a/pyproject.toml b/pyproject.toml index 79ed89d..f5d9ada 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,14 +4,14 @@ build-backend = "setuptools.build_meta" [project] name = "estim8" -version = "0.1.1" +version = "0.1.2" authors = [ {name = "Tobias Latour", email = "t.latour@fz-juelich.de"}, {name = "Daniel Strohmeier", email = "d.strohmeier@fz-juelich.de"}, ] description = "A parameter estimation tool for DAE models implemented compliant to the Functional Mockup Interface" readme = "README.md" -requires-python = ">=3.10.0,<3.13" +requires-python = ">=3.10.0,<=3.13" license = {text = "AGPLv3"} classifiers=[ "Programming Language :: Python :: 3", @@ -21,13 +21,13 @@ classifiers=[ ] keywords=["Biorpocessmodeling", "Parameter estimation", "Functional Mockup Interface"] dependencies = [ - "numpy>=1.26.0,<2", + "numpy>=1.26.0", "fmpy", "scikit-optimize", "scikit-learn", "matplotlib", "seaborn", - "pandas", + "pandas<3", "pytensor-federated", "pytensor", "grpclib",