Skip to content

Commit 16ac9bd

Browse files
committed
test_enumpure_agent using agent_max_regret()
2 parents 60929ec + a849517 commit 16ac9bd

341 files changed

Lines changed: 17551 additions & 9949 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.all-contributorsrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
"ideas"
3535
]
3636
},
37-
{
37+
{
3838
"login": "edwardchalstrey1",
3939
"name": "Ed Chalstrey",
4040
"avatar_url": "https://avatars.githubusercontent.com/u/5486164?v=4",

.devcontainer/devcontainer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"features": {
44
"ghcr.io/devcontainers/features/python:1": {
55
"installTools": true,
6-
"version": "3.11"
6+
"version": "3.14"
77
},
88
"ghcr.io/devcontainers-contrib/features/gdbgui:2": {
99
"version": "latest"
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
name: Tutorial request
2+
description: Submit a request for a new tutorial to be added to the Gambit documentation.
3+
title: "[Tutorial]: "
4+
labels: ["tutorial", "documentation"]
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
Thanks for taking the time to fill out this tutorial request!
10+
- type: textarea
11+
id: describe
12+
attributes:
13+
label: Describe the tutorial you want to see.
14+
description: Go into as much detail as you can regarding the tutorial you would like to see, how long it should be etc.
15+
placeholder: "E.g. A step-by-step guide showing how to use PyGambit to compute equilibria for normal and extensive form games..."
16+
value: "Add a tutorial demonstrating the core components of the PyGambit API."
17+
validations:
18+
required: true
19+
- type: textarea
20+
id: who
21+
attributes:
22+
label: Who is the tutorial for?
23+
description: Explain who the target audience is for this tutorial and what prior knowledge they should have.
24+
placeholder: "E.g. Beginners in game theory who know basic Python."
25+
value: "Newcomers to game theory and the Gambit software who have basic Python programming skills."
26+
validations:
27+
required: true
28+
- type: textarea
29+
id: links
30+
attributes:
31+
label: Add links to papers and software.
32+
description: Add links to any research papers or other resources the author will need to write this tutorial.
33+
value: "`[Markdown link text](url)`"
34+
validations:
35+
required: false

.github/pull_request_template.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
_Thanks for contributing to Gambit! Before you submitting or reviewing a pull request, check out our [guidelines for contributing](https://gambitproject.readthedocs.io/en/latest/developer.contributing.html)._
2+
3+
_The person submitting the PR should ensure it has an informative title and update the headers below, before marking the PR as ready for review and assigning reviewers._
4+
5+
### Issues closed by this PR
6+
7+
_Add any issues that are being closed by this PR to the list. Use "Closes" or [another keyword](https://docs.github.com/en/issues/tracking-your-work-with-issues/using-issues/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword) followed by the issue number._
8+
9+
- Closes #ISSUE_NUMBER
10+
11+
### Description of the changes in this PR
12+
13+
_Update the description of the changes made in this PR. You can delete this section if the changes are already fully described in the linked issues._
14+
15+
This PR ...
16+
17+
### How to review this PR
18+
19+
_The gambit repository contains source code and documentation for several different components. Explain how a reviewer should approach reviewing the specific changes made in this PR._
20+
21+
_For example, you might include instructions like:_
22+
- _"Review code changes and ensure tests cover edge cases"_
23+
- _"Rebuild the GUI from this branch, then test features X, Y, Z work as expected"_
24+
- _"Click the link to the documentation page and sense check by reading"_

.github/workflows/lint.yml

Lines changed: 7 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2,22 +2,14 @@ name: Linters and coding standards checks
22

33
on:
44
push:
5-
paths-ignore:
6-
- 'doc/**'
7-
- '.github/ISSUE_TEMPLATE/**'
8-
- 'README.md'
95
pull_request:
10-
paths-ignore:
11-
- 'doc/**'
12-
- '.github/ISSUE_TEMPLATE/**'
13-
- 'README.md'
146

157
jobs:
168
clang-format:
179
name: clang-format
1810
runs-on: ubuntu-latest
1911
steps:
20-
- uses: actions/checkout@v5
12+
- uses: actions/checkout@v6
2113
- name: Run clang-format style check for C/C++
2214
uses: jidicula/clang-format-action@v4.16.0
2315
with:
@@ -29,7 +21,7 @@ jobs:
2921
runs-on: ubuntu-latest
3022
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name
3123
steps:
32-
- uses: actions/checkout@v5
24+
- uses: actions/checkout@v6
3325
- name: Install dependencies
3426
run: |
3527
sudo apt-key adv --fetch-keys http://repos.codelite.org/CodeLite.asc
@@ -45,28 +37,28 @@ jobs:
4537
runs-on: ubuntu-latest
4638
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name
4739
steps:
48-
- uses: actions/checkout@v5
40+
- uses: actions/checkout@v6
4941
- uses: chartboost/ruff-action@v1
5042

5143
flake8:
5244
runs-on: ubuntu-latest
5345
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name
5446
steps:
55-
- uses: actions/checkout@v5
47+
- uses: actions/checkout@v6
5648
- uses: actions/setup-python@v6
5749
with:
58-
python-version: "3.12"
50+
python-version: "3.14"
5951
- uses: py-actions/flake8@v2
6052

6153
cython-lint:
6254
runs-on: ubuntu-latest
6355
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name
6456
steps:
65-
- uses: actions/checkout@v5
57+
- uses: actions/checkout@v6
6658
- name: Setup Python
6759
uses: actions/setup-python@v6
6860
with:
69-
python-version: "3.12"
61+
python-version: "3.14"
7062
- name: Install Python packages
7163
run: python -m pip install cython-lint
7264
- name: cython-lint

.github/workflows/osxbinary.yml

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,21 +2,17 @@ name: MacOS static GUI binary
22

33
on:
44
push:
5-
paths-ignore:
6-
- 'doc/**'
7-
- '.github/ISSUE_TEMPLATE/**'
8-
- 'README.md'
95
tags:
106
- 'v*'
117
schedule:
128
- cron: '0 6 * * 4'
139

1410
jobs:
1511
macos-13:
16-
runs-on: macos-13
12+
runs-on: macos-14
1713
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name
1814
steps:
19-
- uses: actions/checkout@v5
15+
- uses: actions/checkout@v6
2016
- name: Install dependencies
2117
run: |
2218
brew install automake autoconf
@@ -35,7 +31,7 @@ jobs:
3531
- run: make
3632
- run: sudo make install
3733
- run: make osx-dmg
38-
- uses: actions/upload-artifact@v5
34+
- uses: actions/upload-artifact@v6
3935
with:
40-
name: artifact-osx-13
36+
name: artifact-osx-14
4137
path: "*.dmg"

.github/workflows/python.yml

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -2,34 +2,28 @@ name: pygambit Python extension
22

33
on:
44
push:
5-
paths-ignore:
6-
- 'doc/**'
7-
- '.github/ISSUE_TEMPLATE/**'
8-
- 'README.md'
95
pull_request:
10-
paths-ignore:
11-
- 'doc/**'
12-
- '.github/ISSUE_TEMPLATE/**'
13-
- 'README.md'
146

157
jobs:
168
linux:
179
runs-on: ubuntu-latest
1810
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name
1911
strategy:
2012
matrix:
21-
python-version: ['3.9', '3.13']
13+
python-version: ['3.10', '3.14']
2214

2315
steps:
24-
- uses: actions/checkout@v5
16+
- uses: actions/checkout@v6
2517
- name: Set up Python ${{ matrix.python-version }}
2618
uses: actions/setup-python@v6
2719
with:
2820
python-version: ${{ matrix.python-version }}
2921
- name: Set up dependencies
3022
run: |
3123
python -m pip install --upgrade pip
32-
pip install setuptools build cython pytest pytest-skip-slow wheel lxml numpy scipy
24+
pip install setuptools build cython wheel
25+
pip install -r tests/requirements.txt
26+
pip install -r doc/requirements.txt
3327
- name: Build source distribution
3428
run:
3529
python -m build
@@ -38,73 +32,79 @@ jobs:
3832
cd dist
3933
pip install -v pygambit*.tar.gz
4034
- name: Run tests
41-
run: pytest
35+
run: pytest --run-tutorials
4236

43-
macos-13:
44-
runs-on: macos-13
37+
macos-14:
38+
runs-on: macos-14
4539
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name
4640
strategy:
4741
matrix:
48-
python-version: ['3.13']
42+
python-version: ['3.14']
4943

5044
steps:
51-
- uses: actions/checkout@v4
45+
- uses: actions/checkout@v6
5246
- name: Set up Python ${{ matrix.python-version }}
5347
uses: actions/setup-python@v6
5448
with:
5549
python-version: ${{ matrix.python-version }}
5650
- name: Set up dependencies
5751
run: |
5852
python -m pip install --upgrade pip
59-
pip install cython pytest pytest-skip-slow wheel lxml numpy scipy
53+
pip install setuptools build cython wheel
54+
pip install -r tests/requirements.txt
55+
pip install -r doc/requirements.txt
6056
- name: Build extension
6157
run: |
6258
python -m pip install -v .
6359
- name: Run tests
64-
run: pytest
60+
run: pytest --run-tutorials
6561

66-
macos-14:
67-
runs-on: macos-14
62+
macos-15:
63+
runs-on: macos-15
6864
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name
6965
strategy:
7066
matrix:
71-
python-version: ['3.13']
67+
python-version: ['3.14']
7268

7369
steps:
74-
- uses: actions/checkout@v4
70+
- uses: actions/checkout@v6
7571
- name: Set up Python ${{ matrix.python-version }}
7672
uses: actions/setup-python@v6
7773
with:
7874
python-version: ${{ matrix.python-version }}
7975
- name: Set up dependencies
8076
run: |
8177
python -m pip install --upgrade pip
82-
pip install cython pytest pytest-skip-slow wheel lxml numpy scipy
78+
pip install setuptools build cython wheel
79+
pip install -r tests/requirements.txt
80+
pip install -r doc/requirements.txt
8381
- name: Build extension
8482
run: |
8583
python -m pip install -v .
8684
- name: Run tests
87-
run: pytest
85+
run: pytest --run-tutorials
8886

8987
windows:
9088
runs-on: windows-latest
9189
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name
9290
strategy:
9391
matrix:
94-
python-version: ['3.13']
92+
python-version: ['3.14']
9593

9694
steps:
97-
- uses: actions/checkout@v5
95+
- uses: actions/checkout@v6
9896
- name: Set up Python ${{ matrix.python-version }}
9997
uses: actions/setup-python@v6
10098
with:
10199
python-version: ${{ matrix.python-version }}
102100
- name: Set up dependencies
103101
run: |
104102
python -m pip install --upgrade pip
105-
pip install cython pytest pytest-skip-slow wheel lxml numpy scipy
103+
pip install setuptools build cython wheel
104+
pip install -r tests/requirements.txt
105+
pip install -r doc/requirements.txt
106106
- name: Build extension
107107
run: |
108108
python -m pip install -v .
109109
- name: Run tests
110-
run: pytest
110+
run: pytest --run-tutorials

0 commit comments

Comments
 (0)