rust-pgn-reader-python-binding 4.1.0__tar.gz → 4.2.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/.github/workflows/CI.yml +29 -2
  2. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/.gitignore +9 -0
  3. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/Cargo.lock +212 -218
  4. rust_pgn_reader_python_binding-4.2.0/Cargo.toml +44 -0
  5. rust_pgn_reader_python_binding-4.2.0/PGO.md +11 -0
  6. rust_pgn_reader_python_binding-4.2.0/PKG-INFO +99 -0
  7. rust_pgn_reader_python_binding-4.2.0/PROFILING.md +14 -0
  8. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/README.md +22 -0
  9. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/pyproject.toml +10 -5
  10. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/rust_pgn_reader_python_binding.pyi +2 -0
  11. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/src/bench_parse_games.py +6 -6
  12. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/src/bench_parse_games_singlethreaded.py +6 -6
  13. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/src/bench_parse_pgn.py +10 -10
  14. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/src/example_rowgroup.py +4 -4
  15. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/src/lib.rs +11 -11
  16. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/src/tokenizer.rs +4 -0
  17. rust_pgn_reader_python_binding-4.2.0/tools/check_stubs.py +129 -0
  18. rust_pgn_reader_python_binding-4.2.0/tools/profile_digest.py +520 -0
  19. rust_pgn_reader_python_binding-4.1.0/Cargo.toml +0 -33
  20. rust_pgn_reader_python_binding-4.1.0/PKG-INFO +0 -9
  21. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/benches/parquet_bench.rs +0 -0
  22. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/src/bench_data_access.py +0 -0
  23. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/src/board_serialization.rs +0 -0
  24. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/src/comment_parsing.rs +0 -0
  25. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/src/example_chess960.py +0 -0
  26. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/src/example_complex.py +0 -0
  27. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/src/example_parse_games.py +0 -0
  28. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/src/example_str.py +0 -0
  29. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/src/python_bindings.rs +0 -0
  30. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/src/san_resolver.rs +0 -0
  31. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/src/splitter.rs +0 -0
  32. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/src/test.py +0 -0
  33. {rust_pgn_reader_python_binding-4.1.0 → rust_pgn_reader_python_binding-4.2.0}/src/visitor.rs +0 -0
@@ -28,10 +28,16 @@ jobs:
28
28
  target: x86_64
29
29
  - runner: ubuntu-22.04
30
30
  target: x86
31
+ # hack
32
+ # numpy supports free-threaded Python on 32-bit targets only from 3.15.
33
+ # TODO: Remove this once Maturin can exclude
34
+ # interpreters from --find-interpreter.
35
+ interpreter: python3.9 python3.10 python3.11 python3.12 python3.13 python3.14 python3.15 python3.15t pypy3.11 pypy3.12
31
36
  - runner: ubuntu-22.04
32
37
  target: aarch64
33
38
  - runner: ubuntu-22.04
34
39
  target: armv7
40
+ interpreter: python3.9 python3.10 python3.11 python3.12 python3.13 python3.14 python3.15 python3.15t pypy3.11 pypy3.12
35
41
  - runner: ubuntu-22.04
36
42
  target: s390x
37
43
  - runner: ubuntu-22.04
@@ -45,7 +51,7 @@ jobs:
45
51
  uses: PyO3/maturin-action@v1
46
52
  with:
47
53
  target: ${{ matrix.platform.target }}
48
- args: --release --out dist --find-interpreter
54
+ args: --release --out dist ${{ matrix.platform.interpreter && format('--interpreter {0}', matrix.platform.interpreter) || '--find-interpreter' }}
49
55
  sccache: ${{ !startsWith(github.ref, 'refs/tags/') }}
50
56
  manylinux: auto
51
57
  - name: Upload wheels
@@ -63,10 +69,12 @@ jobs:
63
69
  target: x86_64
64
70
  - runner: ubuntu-22.04
65
71
  target: x86
72
+ interpreter: python3.9 python3.10 python3.11 python3.12 python3.13 python3.14 python3.15 python3.15t pypy3.11 pypy3.12
66
73
  - runner: ubuntu-22.04
67
74
  target: aarch64
68
75
  - runner: ubuntu-22.04
69
76
  target: armv7
77
+ interpreter: python3.9 python3.10 python3.11 python3.12 python3.13 python3.14 python3.15 python3.15t pypy3.11 pypy3.12
70
78
  steps:
71
79
  - uses: actions/checkout@v6
72
80
  - uses: actions/setup-python@v6
@@ -76,7 +84,7 @@ jobs:
76
84
  uses: PyO3/maturin-action@v1
77
85
  with:
78
86
  target: ${{ matrix.platform.target }}
79
- args: --release --out dist --find-interpreter
87
+ args: --release --out dist ${{ matrix.platform.interpreter && format('--interpreter {0}', matrix.platform.interpreter) || '--find-interpreter' }}
80
88
  sccache: ${{ !startsWith(github.ref, 'refs/tags/') }}
81
89
  manylinux: musllinux_1_2
82
90
  - name: Upload wheels
@@ -143,6 +151,25 @@ jobs:
143
151
  name: wheels-macos-${{ matrix.platform.target }}
144
152
  path: dist
145
153
 
154
+ # Custom job (not from `maturin generate-ci`): keeps the hand-maintained
155
+ # .pyi stub in sync with the Rust bindings by comparing its symbol surface
156
+ # against PyO3's auto-generated stub.
157
+ stubs:
158
+ runs-on: ubuntu-latest
159
+ steps:
160
+ - uses: actions/checkout@v6
161
+ - uses: actions/setup-python@v6
162
+ with:
163
+ python-version: "3.13"
164
+ - name: Generate stubs
165
+ uses: PyO3/maturin-action@v1
166
+ with:
167
+ command: generate-stubs
168
+ args: --out stubs --features stubgen --find-interpreter
169
+ - name: Check for stub drift
170
+ # maturin >= 1.15 writes stubs in package layout: <out>/<module>/__init__.pyi
171
+ run: python tools/check_stubs.py --generated stubs/rust_pgn_reader_python_binding/__init__.pyi
172
+
146
173
  sdist:
147
174
  runs-on: ubuntu-latest
148
175
  steps:
@@ -70,3 +70,12 @@ docs/_build/
70
70
 
71
71
  # Pyenv
72
72
  .python-version
73
+
74
+ # Local benchmark data and derived reference dumps
75
+ *.parquet
76
+ *.pgn
77
+
78
+ # Profiling artifacts (samply profile + tools/profile_digest.py output)
79
+ /profile.json
80
+ /profile.json.gz
81
+ /profile_out/