Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 9 additions & 9 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,10 @@ jobs:
os: [ubuntu-22.04, windows-2022]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Setup Python 3.x
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: '3.x'
architecture: 'x64'
Expand Down Expand Up @@ -56,10 +56,10 @@ jobs:
needs: build-wrapper
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Setup Python 3.x
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: '3.x'
architecture: 'x64'
Expand All @@ -73,8 +73,8 @@ jobs:

- name: Build distribution artifacts
run: |
python -m pip install setuptools wheel
python setup.py sdist bdist_wheel
python -m pip install build
python -m build

- name: Archive production artifacts
uses: actions/upload-artifact@v4
Expand All @@ -89,14 +89,14 @@ jobs:
fail-fast: false
matrix:
os: [ubuntu-22.04, windows-2022]
python-version: [3.7, 3.8, 3.9]
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13', '3.14']
timeout-minutes: 15

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Setup Python 3.x
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
architecture: 'x64'
Expand Down
12 changes: 6 additions & 6 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,9 @@ jobs:
os: [ubuntu-22.04, windows-2022]

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: Setup Python 3.x
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: '3.x'
architecture: 'x64'
Expand Down Expand Up @@ -48,9 +48,9 @@ jobs:
needs: build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: '3.x'
- name: Download wrappers
Expand All @@ -62,11 +62,11 @@ jobs:
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install setuptools wheel twine
pip install build twine
- name: Build and publish
env:
TWINE_USERNAME: __token__
TWINE_PASSWORD: ${{ secrets.PYPI_PYTHONFMU_API_TOKEN }}
run: |
python setup.py sdist bdist_wheel
python -m build
twine upload dist/*
2 changes: 1 addition & 1 deletion .readthedocs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ version: 2
build:
os: ubuntu-22.04
tools:
python: "3.8"
python: "3.12"

mkdocs:
configuration: mkdocs.yml
Expand Down
3 changes: 3 additions & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,6 @@ recursive-include pythonfmu3/tests/slaves *

recursive-include pythonfmu3/resources *
recursive-include pythonfmu3/pythonfmu-export *

prune pythonfmu3/pythonfmu-export/build
global-exclude __pycache__ *.py[cod]
70 changes: 70 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
[build-system]
# >= 77 for the SPDX `license` expression (PEP 639)
requires = ["setuptools>=77"]
build-backend = "setuptools.build_meta"

[project]
name = "pythonfmu3"
dynamic = ["version"]
description = "A lightweight framework that enables the packaging of Python 3 code as FMI 3.0 co-simulation and model exchange FMUs."
readme = "README.md"
requires-python = ">=3.9"
license = "MIT"
license-files = ["LICENSE"]
authors = [{ name = "Stephen Smith" }]
keywords = ["FMI", "FMI3", "FMU", "co-simulation", "model exchange", "simulation"]
classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: End Users/Desktop",
"Intended Audience :: Developers",
"Intended Audience :: Science/Research",
"Natural Language :: English",
"Operating System :: Microsoft :: Windows",
"Operating System :: POSIX :: Linux",
"Operating System :: MacOS",
"Programming Language :: C++",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3.9",
"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",
"Topic :: Scientific/Engineering",
]
dependencies = []

[project.optional-dependencies]
tests = ["pytest", "fmpy"]

[project.urls]
Homepage = "https://github.com/StephenSmith25/PythonFMU3"
Documentation = "https://pythonfmu3.readthedocs.io/"
Issues = "https://github.com/StephenSmith25/PythonFMU3/issues"

[project.scripts]
pythonfmu3 = "pythonfmu3.__main__:cli_main"

[tool.setuptools.dynamic]
version = { attr = "pythonfmu3._version.__version__" }

[tool.setuptools.packages.find]
include = ["pythonfmu3*"]

[tool.setuptools.package-data]
# Prebuilt wrapper libraries, the wrapper sources (embedded in every FMU) and test data
pythonfmu3 = [
"resources/binaries/*/*",
"pythonfmu-export/**/*",
"tests/data/*",
"tests/slaves/*",
]

[tool.setuptools.exclude-package-data]
pythonfmu3 = ["pythonfmu-export/build/**", "**/__pycache__/*"]

[tool.pytest.ini_options]
markers = [
"integration: marks integration tests",
"doc: marks documentation tests",
]
2 changes: 1 addition & 1 deletion pythonfmu3/_version.py
Original file line number Diff line number Diff line change
@@ -1 +1 @@
__version__ = "0.3.4"
__version__ = "1.0.0"
2 changes: 1 addition & 1 deletion pythonfmu3/pythonfmu-export/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
cmake_minimum_required(VERSION 3.10)
project(pythonfmu-export VERSION 0.2.0)
project(pythonfmu-export VERSION 1.0.0)

# ==============================================================================
# Build settings
Expand Down
52 changes: 0 additions & 52 deletions setup.cfg

This file was deleted.

4 changes: 0 additions & 4 deletions setup.py

This file was deleted.

Loading