webshart 0.1.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.
@@ -0,0 +1,39 @@
1
+ name: ci
2
+
3
+ on:
4
+ push:
5
+ branches: [ main ]
6
+ pull_request:
7
+ branches: [ main ]
8
+
9
+ jobs:
10
+ test:
11
+ runs-on: ${{ matrix.os }}
12
+ strategy:
13
+ matrix:
14
+ os: [ubuntu-latest, macos-latest]
15
+ python-version: ['3.8', '3.9', '3.10', '3.11', '3.12']
16
+
17
+ steps:
18
+ - uses: actions/checkout@v4
19
+
20
+ - name: Set up Python
21
+ uses: actions/setup-python@v5
22
+ with:
23
+ python-version: ${{ matrix.python-version }}
24
+
25
+ - name: Install Rust
26
+ uses: dtolnay/rust-toolchain@stable
27
+
28
+ - name: Install dependencies
29
+ run: |
30
+ python -m pip install --upgrade pip
31
+ pip install maturin[patchelf] pytest
32
+
33
+ - name: Build and install package
34
+ run: |
35
+ pip install -e .
36
+
37
+ - name: Run tests
38
+ run: |
39
+ pytest tests/
@@ -0,0 +1,118 @@
1
+ name: Release
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - 'v*'
7
+
8
+ jobs:
9
+ linux:
10
+ runs-on: ubuntu-latest
11
+ strategy:
12
+ matrix:
13
+ target: [x86_64]
14
+ steps:
15
+ - uses: actions/checkout@v4
16
+ - uses: actions/setup-python@v5
17
+ with:
18
+ python-version: '3.11'
19
+
20
+ - name: Build wheels
21
+ uses: PyO3/maturin-action@v1
22
+ with:
23
+ target: ${{ matrix.target }}
24
+ args: --release --out dist --find-interpreter --zig
25
+ sccache: 'true'
26
+ manylinux: auto
27
+ env:
28
+ # Use stable ABI for forward compatibility
29
+ PYO3_USE_ABI3_FORWARD_COMPATIBILITY: '1'
30
+
31
+ - name: Upload wheels
32
+ uses: actions/upload-artifact@v4
33
+ with:
34
+ name: wheels-linux-${{ matrix.target }}
35
+ path: dist
36
+
37
+ windows:
38
+ runs-on: windows-latest
39
+ strategy:
40
+ matrix:
41
+ target: [x64]
42
+ steps:
43
+ - uses: actions/checkout@v4
44
+ - uses: actions/setup-python@v5
45
+ with:
46
+ python-version: '3.11'
47
+ architecture: ${{ matrix.target }}
48
+ - name: Build wheels
49
+ uses: PyO3/maturin-action@v1
50
+ with:
51
+ target: ${{ matrix.target }}
52
+ args: --release --out dist --find-interpreter
53
+ sccache: 'true'
54
+ env:
55
+ # Use stable ABI for forward compatibility
56
+ PYO3_USE_ABI3_FORWARD_COMPATIBILITY: '1'
57
+ - name: Upload wheels
58
+ uses: actions/upload-artifact@v4
59
+ with:
60
+ name: wheels-windows-${{ matrix.target }}
61
+ path: dist
62
+
63
+ macos:
64
+ runs-on: macos-latest
65
+ strategy:
66
+ matrix:
67
+ target: [aarch64]
68
+ steps:
69
+ - uses: actions/checkout@v4
70
+ - uses: actions/setup-python@v5
71
+ with:
72
+ python-version: '3.11'
73
+
74
+ - name: Build wheels
75
+ uses: PyO3/maturin-action@v1
76
+ with:
77
+ target: ${{ matrix.target }}
78
+ args: --release --out dist --find-interpreter
79
+ sccache: 'true'
80
+ env:
81
+ # Use stable ABI for forward compatibility
82
+ PYO3_USE_ABI3_FORWARD_COMPATIBILITY: '1'
83
+ - name: Upload wheels
84
+ uses: actions/upload-artifact@v4
85
+ with:
86
+ name: wheels-macos-${{ matrix.target }}
87
+ path: dist
88
+
89
+ sdist:
90
+ runs-on: ubuntu-latest
91
+ steps:
92
+ - uses: actions/checkout@v4
93
+ - name: Build sdist
94
+ uses: PyO3/maturin-action@v1
95
+ with:
96
+ command: sdist
97
+ args: --out dist
98
+ - name: Upload sdist
99
+ uses: actions/upload-artifact@v4
100
+ with:
101
+ name: wheels-sdist
102
+ path: dist
103
+
104
+ release:
105
+ name: Release
106
+ runs-on: ubuntu-latest
107
+ needs: [linux, windows, macos, sdist]
108
+ steps:
109
+ - uses: actions/download-artifact@v4
110
+ with:
111
+ pattern: wheels-*
112
+ merge-multiple: true
113
+ path: dist
114
+ - name: Publish to PyPI
115
+ uses: pypa/gh-action-pypi-publish@v1.12.4
116
+ with:
117
+ user: __token__
118
+ password: ${{ secrets.PYPI_API_TOKEN }}
@@ -0,0 +1,52 @@
1
+ # Rust
2
+ target/
3
+ Cargo.lock
4
+ **/*.rs.bk
5
+
6
+ # Python
7
+ __pycache__/
8
+ *.py[cod]
9
+ *$py.class
10
+ *.so
11
+ .Python
12
+ build/
13
+ develop-eggs/
14
+ dist/
15
+ downloads/
16
+ eggs/
17
+ .eggs/
18
+ lib/
19
+ lib64/
20
+ parts/
21
+ sdist/
22
+ var/
23
+ wheels/
24
+ *.egg-info/
25
+ .installed.cfg
26
+ *.egg
27
+ MANIFEST
28
+ .pytest_cache/
29
+ .coverage
30
+ htmlcov/
31
+ .tox/
32
+ .nox/
33
+ .mypy_cache/
34
+ .dmypy.json
35
+ dmypy.json
36
+ .pyre/
37
+
38
+ # Virtual environments
39
+ venv/
40
+ ENV/
41
+ env/
42
+
43
+ # IDE
44
+ .idea/
45
+ .vscode/
46
+ *.swp
47
+ *.swo
48
+ *~
49
+
50
+ # OS
51
+ .DS_Store
52
+ Thumbs.db.venv