rust-sasa-python 0.4.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.
- rust_sasa_python-0.4.0/.github/workflows/CI.yml +150 -0
- rust_sasa_python-0.4.0/.gitignore +72 -0
- rust_sasa_python-0.4.0/Cargo.lock +1120 -0
- rust_sasa_python-0.4.0/Cargo.toml +18 -0
- rust_sasa_python-0.4.0/DOCS.md +278 -0
- rust_sasa_python-0.4.0/LICENSE.md +21 -0
- rust_sasa_python-0.4.0/PKG-INFO +68 -0
- rust_sasa_python-0.4.0/README.md +51 -0
- rust_sasa_python-0.4.0/example.cif +2650 -0
- rust_sasa_python-0.4.0/pyproject.toml +22 -0
- rust_sasa_python-0.4.0/pytest.ini +4 -0
- rust_sasa_python-0.4.0/rust_sasa_python.pyi +151 -0
- rust_sasa_python-0.4.0/src/lib.rs +379 -0
- rust_sasa_python-0.4.0/src/simd.rs +33 -0
- rust_sasa_python-0.4.0/tests/__init__.py +0 -0
- rust_sasa_python-0.4.0/tests/test_sasa.py +198 -0
- rust_sasa_python-0.4.0/uv.lock +101 -0
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
name: CI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches:
|
|
6
|
+
- main
|
|
7
|
+
- master
|
|
8
|
+
- radical
|
|
9
|
+
tags:
|
|
10
|
+
- "*"
|
|
11
|
+
pull_request:
|
|
12
|
+
workflow_dispatch:
|
|
13
|
+
|
|
14
|
+
permissions:
|
|
15
|
+
contents: read
|
|
16
|
+
|
|
17
|
+
jobs:
|
|
18
|
+
linux:
|
|
19
|
+
runs-on: ${{ matrix.platform.runner }}
|
|
20
|
+
strategy:
|
|
21
|
+
matrix:
|
|
22
|
+
platform:
|
|
23
|
+
- runner: ubuntu-latest
|
|
24
|
+
target: x86_64
|
|
25
|
+
- runner: ubuntu-latest
|
|
26
|
+
target: x86
|
|
27
|
+
steps:
|
|
28
|
+
- uses: actions/checkout@v4
|
|
29
|
+
- uses: actions/setup-python@v5
|
|
30
|
+
with:
|
|
31
|
+
python-version: "3.13"
|
|
32
|
+
- name: Build wheels
|
|
33
|
+
uses: PyO3/maturin-action@v1
|
|
34
|
+
with:
|
|
35
|
+
target: ${{ matrix.platform.target }}
|
|
36
|
+
args: --release --out dist --find-interpreter
|
|
37
|
+
sccache: "true"
|
|
38
|
+
manylinux: auto
|
|
39
|
+
- name: Upload wheels
|
|
40
|
+
uses: actions/upload-artifact@v4
|
|
41
|
+
with:
|
|
42
|
+
name: wheels-linux-${{ matrix.platform.target }}
|
|
43
|
+
path: dist
|
|
44
|
+
|
|
45
|
+
windows:
|
|
46
|
+
runs-on: ${{ matrix.platform.runner }}
|
|
47
|
+
strategy:
|
|
48
|
+
matrix:
|
|
49
|
+
platform:
|
|
50
|
+
- runner: windows-latest
|
|
51
|
+
target: x64
|
|
52
|
+
- runner: windows-latest
|
|
53
|
+
target: x86
|
|
54
|
+
steps:
|
|
55
|
+
- uses: actions/checkout@v4
|
|
56
|
+
- uses: actions/setup-python@v5
|
|
57
|
+
with:
|
|
58
|
+
python-version: "3.13"
|
|
59
|
+
architecture: ${{ matrix.platform.target }}
|
|
60
|
+
- name: Build wheels
|
|
61
|
+
uses: PyO3/maturin-action@v1
|
|
62
|
+
with:
|
|
63
|
+
target: ${{ matrix.platform.target }}
|
|
64
|
+
args: --release --out dist --find-interpreter
|
|
65
|
+
sccache: "true"
|
|
66
|
+
- name: Upload wheels
|
|
67
|
+
uses: actions/upload-artifact@v4
|
|
68
|
+
with:
|
|
69
|
+
name: wheels-windows-${{ matrix.platform.target }}
|
|
70
|
+
path: dist
|
|
71
|
+
|
|
72
|
+
macos:
|
|
73
|
+
runs-on: ${{ matrix.platform.runner }}
|
|
74
|
+
strategy:
|
|
75
|
+
matrix:
|
|
76
|
+
platform:
|
|
77
|
+
- runner: macos-latest
|
|
78
|
+
target: x86_64
|
|
79
|
+
- runner: macos-14
|
|
80
|
+
target: aarch64
|
|
81
|
+
steps:
|
|
82
|
+
- uses: actions/checkout@v4
|
|
83
|
+
- uses: actions/setup-python@v5
|
|
84
|
+
with:
|
|
85
|
+
python-version: "3.13"
|
|
86
|
+
- name: Build wheels
|
|
87
|
+
uses: PyO3/maturin-action@v1
|
|
88
|
+
with:
|
|
89
|
+
target: ${{ matrix.platform.target }}
|
|
90
|
+
args: --release --out dist --find-interpreter
|
|
91
|
+
sccache: "true"
|
|
92
|
+
- name: Upload wheels
|
|
93
|
+
uses: actions/upload-artifact@v4
|
|
94
|
+
with:
|
|
95
|
+
name: wheels-macos-${{ matrix.platform.target }}
|
|
96
|
+
path: dist
|
|
97
|
+
|
|
98
|
+
sdist:
|
|
99
|
+
runs-on: ubuntu-latest
|
|
100
|
+
steps:
|
|
101
|
+
- uses: actions/checkout@v4
|
|
102
|
+
- name: Build sdist
|
|
103
|
+
uses: PyO3/maturin-action@v1
|
|
104
|
+
with:
|
|
105
|
+
command: sdist
|
|
106
|
+
args: --out dist
|
|
107
|
+
- name: Upload sdist
|
|
108
|
+
uses: actions/upload-artifact@v4
|
|
109
|
+
with:
|
|
110
|
+
name: wheels-sdist
|
|
111
|
+
path: dist
|
|
112
|
+
|
|
113
|
+
test:
|
|
114
|
+
name: Test Suite
|
|
115
|
+
runs-on: ${{ matrix.os }}
|
|
116
|
+
strategy:
|
|
117
|
+
matrix:
|
|
118
|
+
os: [ubuntu-latest, windows-latest, macos-latest]
|
|
119
|
+
steps:
|
|
120
|
+
- uses: actions/checkout@v4
|
|
121
|
+
- name: Install uv
|
|
122
|
+
uses: astral-sh/setup-uv@v3
|
|
123
|
+
with:
|
|
124
|
+
version: "latest"
|
|
125
|
+
- name: Set up Python
|
|
126
|
+
run: uv python install 3.13
|
|
127
|
+
- name: Install dependencies
|
|
128
|
+
run: |
|
|
129
|
+
uv add --dev pytest maturin
|
|
130
|
+
- name: Build and install package
|
|
131
|
+
run: |
|
|
132
|
+
uv run maturin develop --release
|
|
133
|
+
- name: Run tests
|
|
134
|
+
run: |
|
|
135
|
+
uv run pytest tests/ -v
|
|
136
|
+
|
|
137
|
+
release:
|
|
138
|
+
name: Release
|
|
139
|
+
runs-on: ubuntu-latest
|
|
140
|
+
needs: [linux, windows, macos, sdist, test]
|
|
141
|
+
if: startsWith(github.ref, 'refs/tags/v')
|
|
142
|
+
steps:
|
|
143
|
+
- uses: actions/download-artifact@v4
|
|
144
|
+
- name: Publish to PyPI
|
|
145
|
+
uses: PyO3/maturin-action@v1
|
|
146
|
+
env:
|
|
147
|
+
MATURIN_PYPI_TOKEN: ${{ secrets.PYPI_API_TOKEN }}
|
|
148
|
+
with:
|
|
149
|
+
command: upload
|
|
150
|
+
args: --non-interactive --skip-existing wheels-*/*
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/target
|
|
2
|
+
|
|
3
|
+
# Byte-compiled / optimized / DLL files
|
|
4
|
+
__pycache__/
|
|
5
|
+
.pytest_cache/
|
|
6
|
+
*.py[cod]
|
|
7
|
+
|
|
8
|
+
# C extensions
|
|
9
|
+
*.so
|
|
10
|
+
|
|
11
|
+
# Distribution / packaging
|
|
12
|
+
.Python
|
|
13
|
+
.venv/
|
|
14
|
+
env/
|
|
15
|
+
bin/
|
|
16
|
+
build/
|
|
17
|
+
develop-eggs/
|
|
18
|
+
dist/
|
|
19
|
+
eggs/
|
|
20
|
+
lib/
|
|
21
|
+
lib64/
|
|
22
|
+
parts/
|
|
23
|
+
sdist/
|
|
24
|
+
var/
|
|
25
|
+
include/
|
|
26
|
+
man/
|
|
27
|
+
venv/
|
|
28
|
+
*.egg-info/
|
|
29
|
+
.installed.cfg
|
|
30
|
+
*.egg
|
|
31
|
+
|
|
32
|
+
# Installer logs
|
|
33
|
+
pip-log.txt
|
|
34
|
+
pip-delete-this-directory.txt
|
|
35
|
+
pip-selfcheck.json
|
|
36
|
+
|
|
37
|
+
# Unit test / coverage reports
|
|
38
|
+
htmlcov/
|
|
39
|
+
.tox/
|
|
40
|
+
.coverage
|
|
41
|
+
.cache
|
|
42
|
+
nosetests.xml
|
|
43
|
+
coverage.xml
|
|
44
|
+
|
|
45
|
+
# Translations
|
|
46
|
+
*.mo
|
|
47
|
+
|
|
48
|
+
# Mr Developer
|
|
49
|
+
.mr.developer.cfg
|
|
50
|
+
.project
|
|
51
|
+
.pydevproject
|
|
52
|
+
|
|
53
|
+
# Rope
|
|
54
|
+
.ropeproject
|
|
55
|
+
|
|
56
|
+
# Django stuff:
|
|
57
|
+
*.log
|
|
58
|
+
*.pot
|
|
59
|
+
|
|
60
|
+
.DS_Store
|
|
61
|
+
|
|
62
|
+
# Sphinx documentation
|
|
63
|
+
docs/_build/
|
|
64
|
+
|
|
65
|
+
# PyCharm
|
|
66
|
+
.idea/
|
|
67
|
+
|
|
68
|
+
# VSCode
|
|
69
|
+
.vscode/
|
|
70
|
+
|
|
71
|
+
# Pyenv
|
|
72
|
+
.python-version
|