-
-
Notifications
You must be signed in to change notification settings - Fork 18
Modernize package and move to Python 3.14 #56
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -17,14 +17,14 @@ jobs: | |
| runs-on: ubuntu-latest | ||
|
|
||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - name: Set up Python 3.12 | ||
| uses: actions/setup-python@v5 | ||
| - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1 - uses: actions/checkout@v4 | ||
| - name: Set up Python 3.14 | ||
| uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0 uses: actions/setup-python@v5 | ||
|
Comment on lines
+21
to
+22
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. issue (bug_risk): The setup-python step mixes two This step currently has two - name: Set up Python 3.14
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: "3.14"As-is, the workflow will not load successfully. |
||
| with: | ||
| python-version: "3.12" | ||
| python-version: "3.14" | ||
|
|
||
| - name: Install uv | ||
| uses: astral-sh/setup-uv@v6 | ||
| uses: astral-sh/setup-uv@d0cc045d04ccac9d8b7881df0226f9e82c39688e # v6.8.0 uses: astral-sh/setup-uv@v6 | ||
|
Comment on lines
26
to
+27
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. issue (bug_risk): The uv setup step also has two This step is invalid because two - name: Install uv
uses: astral-sh/setup-uv@d0cc045d04ccac9d8b7881df0226f9e82c39688e # v6.8.0
with:
enable-cache: true
cache-dependency-glob: "uv.lock"Otherwise the workflow will fail to run. |
||
| with: | ||
| enable-cache: true | ||
| cache-dependency-glob: "uv.lock" | ||
|
|
||
This file was deleted.
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -34,7 +34,6 @@ runtimes: | |
| enabled: | ||
| - go@1.21.0 | ||
| - node@22.16.0 | ||
| - python@3.12.10 | ||
| actions: | ||
| enabled: | ||
| - trunk-announce | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| # Analysis | ||
|
|
||
| Ancillary analysis code lives here. It is not installed with the Python | ||
| package and may require tools or historical input files beyond the standard | ||
| development environment. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,8 @@ | ||
| # Historical artifacts | ||
|
|
||
| These files are retained outputs from earlier simulation runs. They are not | ||
| used by the package or test suite and do not define current published results. | ||
|
|
||
| New ad hoc simulation output should remain untracked. Reproducible published | ||
| results belong in `docs/` and must be generated through the scripts in | ||
| `scripts/`. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| # Experiments | ||
|
|
||
| This directory contains exploratory or legacy voting-method code that is not | ||
| part of the supported `vse_sim` package. Production modules and tests must not | ||
| depend on it. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,2 +1,2 @@ | ||
| [tools] | ||
| python = "3.12" | ||
| python = "3.14" |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,13 +1,20 @@ | ||
| [build-system] | ||
| requires = ["setuptools"] | ||
| build-backend = "setuptools.build_meta" | ||
|
|
||
| [project] | ||
| name = "vse-sim" | ||
| version = "0.1.0" | ||
| description = "Voter Satisfaction Efficiency simulation tools" | ||
| requires-python = ">=3.10,<3.13" | ||
| dependencies = ["numpy>=1.23,<2", "scipy>=1.9,<1.12"] | ||
| requires-python = ">=3.14,<3.15" | ||
| dependencies = ["numpy>=2.3,<3", "scipy>=1.16,<2"] | ||
|
|
||
| [dependency-groups] | ||
| dev = ["matplotlib>=3.10,<4", "pytest>=7,<9"] | ||
| dev = ["matplotlib>=3.10,<4", "pytest>=7,<10"] | ||
|
|
||
| [tool.setuptools.packages.find] | ||
| where = ["src"] | ||
|
|
||
| [tool.pytest.ini_options] | ||
| addopts = "--doctest-modules" | ||
| testpaths = ["."] | ||
| testpaths = ["src/vse_sim", "tests"] |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| """Repository maintenance and publishing scripts.""" |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| """Voter Satisfaction Efficiency simulation tools.""" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
issue (bug_risk): The checkout step line is malformed and will break the workflow YAML.
This line combines two
uses:declarations (@34e... # v4.3.1and@v4) on a single entry, which produces invalid YAML and stops the workflow from running. Please split this into separate steps or keep only the pinned SHA form, e.g.