webtoken 0.5.0__tar.gz → 0.6.3__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.
- {webtoken-0.5.0 → webtoken-0.6.3}/.github/workflows/release.yml +70 -16
- {webtoken-0.5.0 → webtoken-0.6.3}/.github/workflows/tests.yml +6 -6
- {webtoken-0.5.0 → webtoken-0.6.3}/Cargo.lock +250 -90
- {webtoken-0.5.0 → webtoken-0.6.3}/Cargo.toml +15 -6
- {webtoken-0.5.0 → webtoken-0.6.3}/PKG-INFO +22 -28
- {webtoken-0.5.0 → webtoken-0.6.3}/README.md +19 -25
- {webtoken-0.5.0 → webtoken-0.6.3}/benchmarks/benchmarks.py +4 -11
- webtoken-0.6.3/benchmarks/mem_benchmark.py +29 -0
- {webtoken-0.5.0 → webtoken-0.6.3}/pyproject.toml +5 -5
- webtoken-0.6.3/src/algorithms.rs +58 -0
- webtoken-0.6.3/src/crypto.rs +1217 -0
- webtoken-0.6.3/src/crypto_parsing.rs +356 -0
- webtoken-0.6.3/src/jwe.rs +379 -0
- webtoken-0.6.3/src/jwk.rs +266 -0
- {webtoken-0.5.0 → webtoken-0.6.3}/src/jws.rs +7 -11
- webtoken-0.6.3/src/jwt.rs +405 -0
- webtoken-0.6.3/src/key_utils.rs +278 -0
- {webtoken-0.5.0 → webtoken-0.6.3}/src/lib.rs +599 -625
- webtoken-0.6.3/src/paseto.rs +1049 -0
- {webtoken-0.5.0 → webtoken-0.6.3}/src/pyjwt_jwk_api.rs +69 -58
- webtoken-0.6.3/tests/keys_and_vectors.py +109 -0
- {webtoken-0.5.0 → webtoken-0.6.3}/tests/test_api_jwt.py +1 -1
- webtoken-0.6.3/tests/test_crypto_parsing.py +217 -0
- webtoken-0.6.3/tests/test_jwe.py +272 -0
- webtoken-0.6.3/tests/test_jwe_chacha20.py +66 -0
- webtoken-0.6.3/tests/test_jwe_compact.py +375 -0
- webtoken-0.6.3/tests/test_paseto.py +375 -0
- webtoken-0.6.3/tests/test_paseto_key.py +197 -0
- webtoken-0.6.3/tests/test_paseto_sample.py +333 -0
- webtoken-0.6.3/tests/test_paseto_token.py +66 -0
- webtoken-0.6.3/tests/test_paseto_v4.py +126 -0
- webtoken-0.6.3/tests/test_paseto_vectors.py +691 -0
- webtoken-0.6.3/webtoken/webtoken.py +1188 -0
- webtoken-0.5.0/src/algorithms.rs +0 -326
- webtoken-0.5.0/src/crypto.rs +0 -608
- webtoken-0.5.0/src/jwk.rs +0 -643
- webtoken-0.5.0/webtoken/webtoken.py +0 -797
- {webtoken-0.5.0 → webtoken-0.6.3}/.gitignore +0 -0
- {webtoken-0.5.0 → webtoken-0.6.3}/License +0 -0
- {webtoken-0.5.0 → webtoken-0.6.3}/benchmarks/Readme.md +0 -0
- {webtoken-0.5.0 → webtoken-0.6.3}/src/py_utils.rs +0 -0
- {webtoken-0.5.0 → webtoken-0.6.3}/tests/Readme.md +0 -0
- {webtoken-0.5.0 → webtoken-0.6.3}/tests/test_advisory.py +0 -0
- {webtoken-0.5.0 → webtoken-0.6.3}/tests/test_algorithms.py +0 -0
- {webtoken-0.5.0 → webtoken-0.6.3}/tests/test_api_jwk.py +0 -0
- {webtoken-0.5.0 → webtoken-0.6.3}/tests/test_api_jws.py +0 -0
- {webtoken-0.5.0 → webtoken-0.6.3}/tests/test_compressed.py +0 -0
- {webtoken-0.5.0 → webtoken-0.6.3}/tests/test_exceptions.py +0 -0
- {webtoken-0.5.0 → webtoken-0.6.3}/tests/test_jwt.py +0 -0
- {webtoken-0.5.0 → webtoken-0.6.3}/tests/tests.py +0 -0
- {webtoken-0.5.0 → webtoken-0.6.3}/webtoken/__init__.py +0 -0
|
@@ -20,13 +20,11 @@ jobs:
|
|
|
20
20
|
os: ubuntu-latest
|
|
21
21
|
target: x86_64
|
|
22
22
|
manylinux: auto
|
|
23
|
-
qemu: false
|
|
24
23
|
|
|
25
24
|
- name: Musl x86
|
|
26
25
|
os: ubuntu-latest
|
|
27
26
|
target: x86_64
|
|
28
27
|
manylinux: musllinux_1_2
|
|
29
|
-
qemu: false
|
|
30
28
|
|
|
31
29
|
- name: Linux ARM64
|
|
32
30
|
os: ubuntu-latest
|
|
@@ -37,18 +35,13 @@ jobs:
|
|
|
37
35
|
- name: MacOS
|
|
38
36
|
os: macos-latest
|
|
39
37
|
target: x86_64
|
|
40
|
-
manylinux: auto
|
|
41
|
-
qemu: false
|
|
42
38
|
|
|
43
39
|
- name: Windows
|
|
44
40
|
os: windows-latest
|
|
45
41
|
target: x64
|
|
46
|
-
manylinux: auto
|
|
47
|
-
qemu: false
|
|
48
42
|
|
|
49
43
|
steps:
|
|
50
44
|
- uses: actions/checkout@v6
|
|
51
|
-
|
|
52
45
|
- name: Set up QEMU
|
|
53
46
|
if: matrix.qemu
|
|
54
47
|
uses: docker/setup-qemu-action@v3
|
|
@@ -67,6 +60,30 @@ jobs:
|
|
|
67
60
|
name: wheels-${{ matrix.name }}
|
|
68
61
|
path: dist
|
|
69
62
|
|
|
63
|
+
build_wheels_freebsd:
|
|
64
|
+
name: Build FreeBSD wheels
|
|
65
|
+
runs-on: ubuntu-latest
|
|
66
|
+
steps:
|
|
67
|
+
- uses: actions/checkout@v6
|
|
68
|
+
- name: Build in FreeBSD VM
|
|
69
|
+
uses: vmactions/freebsd-vm@v1
|
|
70
|
+
with:
|
|
71
|
+
usesh: true
|
|
72
|
+
prepare: pkg install -y rust python313 git
|
|
73
|
+
|
|
74
|
+
run: |
|
|
75
|
+
python3.13 -m venv venv
|
|
76
|
+
. venv/bin/activate
|
|
77
|
+
pip install maturin
|
|
78
|
+
maturin build --release --out dist --find-interpreter
|
|
79
|
+
|
|
80
|
+
- name: Upload FreeBSD wheels
|
|
81
|
+
uses: actions/upload-artifact@v6
|
|
82
|
+
with:
|
|
83
|
+
name: wheels-freebsd
|
|
84
|
+
path: dist
|
|
85
|
+
|
|
86
|
+
|
|
70
87
|
build_sdist:
|
|
71
88
|
name: Build source distribution
|
|
72
89
|
runs-on: ubuntu-latest
|
|
@@ -80,24 +97,61 @@ jobs:
|
|
|
80
97
|
- name: Upload sdist
|
|
81
98
|
uses: actions/upload-artifact@v6
|
|
82
99
|
with:
|
|
83
|
-
name:
|
|
100
|
+
name: sdist
|
|
84
101
|
path: dist
|
|
85
102
|
|
|
86
103
|
publish:
|
|
87
|
-
name: PyPI
|
|
88
|
-
needs: [build_wheels, build_sdist]
|
|
104
|
+
name: Publish to PyPI + GitHub Release
|
|
105
|
+
needs: [build_wheels, build_wheels_freebsd, build_sdist]
|
|
89
106
|
runs-on: ubuntu-latest
|
|
90
107
|
environment: pypi
|
|
91
108
|
permissions:
|
|
92
|
-
contents:
|
|
93
|
-
id-token: write
|
|
94
|
-
|
|
109
|
+
contents: write
|
|
110
|
+
id-token: write
|
|
111
|
+
|
|
95
112
|
steps:
|
|
113
|
+
- uses: actions/checkout@v6
|
|
114
|
+
|
|
96
115
|
- uses: actions/download-artifact@v7
|
|
97
116
|
with:
|
|
98
|
-
|
|
117
|
+
name: sdist
|
|
99
118
|
path: dist
|
|
100
|
-
|
|
101
|
-
|
|
119
|
+
|
|
120
|
+
# Explicit downloads - FreeBSD wheels not allowed on PyPI
|
|
121
|
+
- uses: actions/download-artifact@v7
|
|
122
|
+
with:
|
|
123
|
+
name: wheels-Linux x86
|
|
124
|
+
path: dist
|
|
125
|
+
- uses: actions/download-artifact@v7
|
|
126
|
+
with:
|
|
127
|
+
name: wheels-Musl x86
|
|
128
|
+
path: dist
|
|
129
|
+
- uses: actions/download-artifact@v7
|
|
130
|
+
with:
|
|
131
|
+
name: wheels-Linux ARM64
|
|
132
|
+
path: dist
|
|
133
|
+
- uses: actions/download-artifact@v7
|
|
134
|
+
with:
|
|
135
|
+
name: wheels-MacOS
|
|
136
|
+
path: dist
|
|
137
|
+
- uses: actions/download-artifact@v7
|
|
138
|
+
with:
|
|
139
|
+
name: wheels-Windows
|
|
140
|
+
path: dist
|
|
141
|
+
|
|
102
142
|
- name: Publish to PyPI
|
|
103
143
|
uses: pypa/gh-action-pypi-publish@release/v1
|
|
144
|
+
|
|
145
|
+
- uses: actions/download-artifact@v7
|
|
146
|
+
with:
|
|
147
|
+
name: wheels-freebsd
|
|
148
|
+
path: dist
|
|
149
|
+
|
|
150
|
+
# GitHub Release with all wheels
|
|
151
|
+
- name: GitHub Release
|
|
152
|
+
uses: softprops/action-gh-release@v2
|
|
153
|
+
if: startsWith(github.ref, 'refs/tags/')
|
|
154
|
+
with:
|
|
155
|
+
files: dist/*
|
|
156
|
+
generate_release_notes: true
|
|
157
|
+
|
|
@@ -17,8 +17,8 @@ jobs:
|
|
|
17
17
|
fail-fast: false
|
|
18
18
|
matrix:
|
|
19
19
|
os: [ubuntu-latest, windows-latest, macos-latest]
|
|
20
|
-
python-version: ['3.12', '3.13', '3.14']
|
|
21
|
-
|
|
20
|
+
python-version: ['3.12', '3.13', '3.14'] #, '3.14t'] # figure out ci to make 3.14t work
|
|
21
|
+
|
|
22
22
|
steps:
|
|
23
23
|
- uses: actions/checkout@v6
|
|
24
24
|
|
|
@@ -28,6 +28,7 @@ jobs:
|
|
|
28
28
|
- uses: actions/setup-python@v6
|
|
29
29
|
with:
|
|
30
30
|
python-version: ${{ matrix.python-version }}
|
|
31
|
+
allow-prereleases: ${{ endsWith(matrix.python-version, 't') }}
|
|
31
32
|
|
|
32
33
|
- name: Install build dependencies
|
|
33
34
|
run: pip install maturin pytest
|
|
@@ -36,7 +37,6 @@ jobs:
|
|
|
36
37
|
shell: bash
|
|
37
38
|
run: |
|
|
38
39
|
maturin build --release
|
|
39
|
-
# Universal install command that works on Bash (Linux/Mac) and Git Bash (Windows)
|
|
40
40
|
pip install target/wheels/*.whl
|
|
41
41
|
|
|
42
42
|
- name: Run tests
|
|
@@ -57,7 +57,7 @@ jobs:
|
|
|
57
57
|
|
|
58
58
|
- name: Build and install
|
|
59
59
|
run: |
|
|
60
|
-
maturin build --release
|
|
60
|
+
maturin build --release -i python
|
|
61
61
|
pip install target/wheels/*.whl
|
|
62
62
|
|
|
63
63
|
- name: Run tests
|
|
@@ -73,9 +73,9 @@ jobs:
|
|
|
73
73
|
uses: vmactions/freebsd-vm@v1
|
|
74
74
|
with:
|
|
75
75
|
usesh: true
|
|
76
|
-
prepare: pkg install -y rust
|
|
76
|
+
prepare: pkg install -y rust python313 git
|
|
77
77
|
run: |
|
|
78
|
-
python3 -m venv venv
|
|
78
|
+
python3.13 -m venv venv
|
|
79
79
|
. venv/bin/activate
|
|
80
80
|
pip install maturin pytest
|
|
81
81
|
|