Skip to content

Commit 0c49566

Browse files
authored
Feat/minimal pcg wrapper (#152)
* Minimal Rust wrapper for PCG * Renaming clibs/ to clib/ since a library is already a collection of things * Remove sdist building for pecos-rslib due to external C source issues. Users can just use the repo to build from source.
1 parent 4e1d39f commit 0c49566

File tree

24 files changed

+781
-93
lines changed

24 files changed

+781
-93
lines changed

.github/workflows/python-release.yml

Lines changed: 4 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -51,59 +51,6 @@ jobs:
5151
echo "run=false" >> $GITHUB_OUTPUT
5252
fi
5353
54-
build_sdist_pecos_rslib:
55-
needs: check_pr_push
56-
if: |
57-
always() &&
58-
(needs.check_pr_push.result == 'success' && needs.check_pr_push.outputs.run == 'true' || needs.check_pr_push.result == 'skipped') &&
59-
(github.event_name != 'pull_request' || github.event.pull_request.merged == true || github.event.action == 'opened' || github.event.action == 'synchronize')
60-
runs-on: ubuntu-latest
61-
steps:
62-
- uses: actions/checkout@v4
63-
with:
64-
ref: ${{ inputs.sha || github.sha }}
65-
66-
- name: Set up Python
67-
uses: actions/setup-python@v5
68-
with:
69-
python-version: ${{ env.PYTHON_VERSION }}
70-
71-
- name: Remove conflicting README.md
72-
run: |
73-
if [ -f crates/pecos-python/README.md ]; then
74-
mv crates/pecos-python/README.md crates/pecos-python/README.md.bak
75-
echo "Moved conflicting README.md to README.md.bak"
76-
else
77-
echo "No conflicting README.md found"
78-
fi
79-
80-
- name: Build pecos-rslib SDist
81-
uses: PyO3/maturin-action@v1
82-
with:
83-
command: sdist
84-
args: --out dist
85-
working-directory: python/pecos-rslib
86-
87-
- name: Restore README.md
88-
if: always()
89-
run: |
90-
if [ -f crates/pecos-python/README.md.bak ]; then
91-
mv crates/pecos-python/README.md.bak crates/pecos-python/README.md
92-
echo "Restored README.md from backup"
93-
else
94-
echo "No README.md backup found"
95-
fi
96-
97-
- name: Test pecos-rslib SDist
98-
run: |
99-
pip install --force-reinstall --verbose python/pecos-rslib/dist/*.tar.gz
100-
python -c 'import pecos_rslib; print(pecos_rslib.__version__)'
101-
102-
- name: Upload pecos-rslib SDist
103-
uses: actions/upload-artifact@v4
104-
with:
105-
name: sdist-pecos-rslib
106-
path: python/pecos-rslib/dist/*.tar.gz
10754
10855
build_wheels_pecos_rslib:
10956
needs: check_pr_push
@@ -173,7 +120,7 @@ jobs:
173120
path: python/pecos-rslib/dist/*.whl
174121

175122
build_sdist_quantum_pecos:
176-
needs: [check_pr_push, build_sdist_pecos_rslib, build_wheels_pecos_rslib]
123+
needs: [check_pr_push, build_wheels_pecos_rslib]
177124
if: |
178125
always() &&
179126
(needs.check_pr_push.result == 'success' && needs.check_pr_push.outputs.run == 'true' || needs.check_pr_push.result == 'skipped') &&
@@ -204,7 +151,7 @@ jobs:
204151
205152
- name: Build PECOS RNG
206153
run: |
207-
cd clibs/pecos-rng && mkdir build && cd build/ && cmake ..
154+
cd clib/pecos-rng && mkdir build && cd build/ && cmake ..
208155
make && cd .. && pip install .
209156
env:
210157
NANOBIND_DIR: python -m nanobind --include_dir
@@ -226,7 +173,7 @@ jobs:
226173
path: python/quantum-pecos/dist/*.tar.gz
227174

228175
build_wheels_quantum_pecos:
229-
needs: [check_pr_push, build_wheels_pecos_rslib, build_sdist_quantum_pecos]
176+
needs: [check_pr_push, build_wheels_pecos_rslib]
230177
if: |
231178
always() &&
232179
(needs.check_pr_push.result == 'success' && needs.check_pr_push.outputs.run == 'true' || needs.check_pr_push.result == 'skipped') &&
@@ -261,7 +208,7 @@ jobs:
261208
262209
- name: Build PECOS RNG
263210
run: |
264-
cd clibs/pecos-rng && mkdir build && cd build/ && cmake ..
211+
cd clib/pecos-rng && mkdir build && cd build/ && cmake ..
265212
make && cd .. && pip install .
266213
env:
267214
NANOBIND_DIR: python -m nanobind --include_dir

.github/workflows/python-test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ jobs:
7777
run: |
7878
export NANOBIND_CMAKE_DIR=$(uv run -- python -m nanobind --cmake_dir)
7979
export NANOBIND_DIR=$(uv run -- python -m nanobind --include_dir)
80-
cd clibs/pecos-rng && mkdir build && cd build/ && cmake .. -DCMAKE_PREFIX_PATH=$NANOBIND_CMAKE_DIR
80+
cd clib/pecos-rng && mkdir build && cd build/ && cmake .. -DCMAKE_PREFIX_PATH=$NANOBIND_CMAKE_DIR
8181
cmake --build . && cd ..
8282
uv pip install .
8383

.gitignore

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -178,5 +178,5 @@ cython_debug/
178178
.idea/
179179

180180
# Prevent subdirectory virtual environments
181-
clibs/*/.venv/
182-
clibs/*/uv.lock
181+
clib/*/.venv/
182+
clib/*/uv.lock

0 commit comments

Comments
 (0)