diff --git a/.github/workflows/autoformat.yml b/.github/workflows/autoformat.yml index 2dcf15c..2987bea 100644 --- a/.github/workflows/autoformat.yml +++ b/.github/workflows/autoformat.yml @@ -8,7 +8,7 @@ jobs: format: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 with: token: ${{ secrets.GITHUB_TOKEN }} @@ -31,4 +31,4 @@ jobs: git config --local user.email "github-actions[bot]@users.noreply.github.com" git config --local user.name "github-actions[bot]" git diff --quiet || (git add -A && git commit -m "Auto-format code") - git push \ No newline at end of file + git push diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 1fa8189..fb96eef 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -20,7 +20,7 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - uses: actions/setup-python@v5 with: @@ -67,4 +67,4 @@ jobs: - name: Publish release distributions to PyPI uses: pypa/gh-action-pypi-publish@release/v1 with: - packages-dir: dist/ \ No newline at end of file + packages-dir: dist/ diff --git a/.github/workflows/python-app.yml b/.github/workflows/python-app.yml index f5c07ac..adb9362 100644 --- a/.github/workflows/python-app.yml +++ b/.github/workflows/python-app.yml @@ -16,10 +16,10 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: ["3.10", "3.11", "3.12"] + python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"] steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v5 diff --git a/.gitignore b/.gitignore index c2179a5..4e28064 100644 --- a/.gitignore +++ b/.gitignore @@ -163,3 +163,6 @@ cython_debug/ # specific files .DS_store + +# uv lock file +uv.lock diff --git a/pyproject.toml b/pyproject.toml index 626e370..43c8341 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -16,7 +16,9 @@ classifiers = [ "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", - "Programming Language :: Python :: 3.12" + "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", ] authors = [ @@ -44,7 +46,6 @@ dependencies = [ Homepage = "https://github.com/CausalInference/pySEQTarget" Repository = "https://github.com/CausalInference/pySEQTarget" "Bug Tracker" = "https://github.com/CausalInference/pySEQTarget/issues" - "Ryan O'Dea (ORCID)" = "https://orcid.org/0009-0000-0103-9546" "Alejandro Szmulewicz (ORCID)" = "https://orcid.org/0000-0002-2664-802X" "Tom Palmer (ORCID)" = "https://orcid.org/0000-0003-4655-4511" @@ -52,6 +53,18 @@ Repository = "https://github.com/CausalInference/pySEQTarget" "University of Bristol (ROR)" = "https://ror.org/0524sp257" "Harvard University (ROR)" = "https://ror.org/03vek6s52" +[dependency-groups] +dev = [ + "black", + "isort", + "pytest", + "myst-parser", + "piccolo_theme", + "sphinx", + "sphinx-copybutton", + "sphinx-autodoc-typehints", +] + [tool.setuptools.packages.find] where = ["."] include = ["pySEQTarget*"] diff --git a/tests/test_parallel.py b/tests/test_parallel.py index 2ed0351..1033db5 100644 --- a/tests/test_parallel.py +++ b/tests/test_parallel.py @@ -28,15 +28,18 @@ def test_parallel_ITT(): s.bootstrap() s.fit() matrix = s.outcome_model[0]["outcome"].summary2().tables[1]["Coef."].to_list() - assert matrix == [ - -6.828506035553407, - 0.18935003090041902, - 0.12717241010542563, - 0.033715156987629266, - -0.00014691202235029346, - 0.044566165558944326, - 0.0005787770439053261, - 0.0032906669395295026, - -0.01339242049205771, - 0.20072409918428052, - ] + assert matrix == pytest.approx( + [ + -6.828506035553407, + 0.18935003090041902, + 0.12717241010542563, + 0.033715156987629266, + -0.00014691202235029346, + 0.044566165558944326, + 0.0005787770439053261, + 0.0032906669395295026, + -0.01339242049205771, + 0.20072409918428052, + ], + abs=1e-6, + )