Skip to content

Commit 1fbea7c

Browse files
committed
Merge remote-tracking branch 'origin/main' into feat/httpx
2 parents f404ed5 + 44c78e1 commit 1fbea7c

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

51 files changed

+3777
-524
lines changed

.github/workflows/ci.yml

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ jobs:
2020
fail-fast: false
2121
matrix:
2222
py:
23+
- "3.13"
2324
- "3.12"
2425
- "3.11"
2526
- "3.10"
@@ -30,11 +31,11 @@ jobs:
3031
- macos-latest
3132
- windows-latest
3233
steps:
33-
- uses: actions/checkout@v4
34+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
3435
with:
3536
fetch-depth: 0
3637
- name: Setup python for test ${{ matrix.py }}
37-
uses: actions/setup-python@v5
38+
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
3839
with:
3940
python-version: ${{ matrix.py }}
4041
- name: Install tox
@@ -46,7 +47,7 @@ jobs:
4647
env:
4748
COVERAGE_FILE: "coverage.${{ matrix.os }}.${{ matrix.py }}"
4849
- name: Store coverage file
49-
uses: actions/upload-artifact@v4
50+
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
5051
with:
5152
name: coverage.${{ matrix.os }}.${{ matrix.py }}
5253
path: coverage.${{ matrix.os }}.${{ matrix.py }}
@@ -63,25 +64,25 @@ jobs:
6364
env:
6465
COVERAGE_FILE: "coverage"
6566
steps:
66-
- uses: actions/checkout@v4
67+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
6768

68-
- uses: actions/download-artifact@v4
69+
- uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
6970
id: download
7071
with:
7172
pattern: coverage.*
7273
merge-multiple: true
7374

7475
- name: Coverage comment
7576
id: coverage_comment
76-
uses: py-cov-action/python-coverage-comment-action@v3
77+
uses: py-cov-action/python-coverage-comment-action@b3d7e98bf5528b07d6951ef7a93e2b156f960112 # v3.1.0
7778
with:
7879
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
7980
MERGE_COVERAGE_FILES: true
8081
ANNOTATE_MISSING_LINES: true
8182
VERBOSE: true
8283

8384
- name: Store Pull Request comment to be posted
84-
uses: actions/upload-artifact@v4
85+
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
8586
if: steps.coverage_comment.outputs.COMMENT_FILE_WRITTEN == 'true'
8687
with:
8788
name: python-coverage-comment-action
@@ -91,10 +92,10 @@ jobs:
9192
name: gitleaks
9293
runs-on: ubuntu-latest
9394
steps:
94-
- uses: actions/checkout@v4
95+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
9596
with:
9697
fetch-depth: 0
97-
- uses: gitleaks/gitleaks-action@v2
98+
- uses: gitleaks/gitleaks-action@ff98106e4c7b2bc287b24eaf42907196329070c7 # v2.3.9
9899
env:
99100
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
100101
GITLEAKS_LICENSE: ${{ secrets.GITLEAKS_LICENSE }}

.github/workflows/python-publish.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ jobs:
1414
runs-on: ubuntu-latest
1515
steps:
1616
- name: Checkout
17-
uses: actions/checkout@v4
17+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
1818
- name: Setup
1919
uses: descope/.github/.github/actions/python/poetry/setup@main
2020
with:

.gitleaksignore

Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
04146e7a83d6212e407c5a46008324d646878fc1:tests/test_auth.py:jwt:257
2+
1c0c3ca7205fa8fa481b2bc90933d7d1f0400253:tests/test_descope_client.py:jwt:563
3+
1c0c3ca7205fa8fa481b2bc90933d7d1f0400253:tests/test_descope_client.py:jwt:571
4+
3ce967512fed2bae5e89dc9ff973e67ff9bc3084:tests/test_password.py:jwt:167
5+
3ce967512fed2bae5e89dc9ff973e67ff9bc3084:tests/test_password.py:jwt:313
6+
3ce967512fed2bae5e89dc9ff973e67ff9bc3084:tests/test_password.py:jwt:87
7+
602af9d1f4ce24799cfdcb06fc76eaedb39ba31c:tests/test_descope_client.py:jwt:122
8+
602af9d1f4ce24799cfdcb06fc76eaedb39ba31c:tests/test_descope_client.py:jwt:178
9+
602af9d1f4ce24799cfdcb06fc76eaedb39ba31c:tests/test_descope_client.py:jwt:248
10+
602af9d1f4ce24799cfdcb06fc76eaedb39ba31c:tests/test_descope_client.py:jwt:249
11+
602af9d1f4ce24799cfdcb06fc76eaedb39ba31c:tests/test_descope_client.py:jwt:250
12+
602af9d1f4ce24799cfdcb06fc76eaedb39ba31c:tests/test_descope_client.py:jwt:266
13+
602af9d1f4ce24799cfdcb06fc76eaedb39ba31c:tests/test_descope_client.py:jwt:267
14+
602af9d1f4ce24799cfdcb06fc76eaedb39ba31c:tests/test_magiclink.py:jwt:341
15+
602af9d1f4ce24799cfdcb06fc76eaedb39ba31c:tests/test_magiclink.py:jwt:356
16+
602af9d1f4ce24799cfdcb06fc76eaedb39ba31c:tests/test_otp.py:jwt:246
17+
602af9d1f4ce24799cfdcb06fc76eaedb39ba31c:tests/test_webauthn.py:jwt:127
18+
602af9d1f4ce24799cfdcb06fc76eaedb39ba31c:tests/test_webauthn.py:jwt:220
19+
602af9d1f4ce24799cfdcb06fc76eaedb39ba31c:tests/test_webauthn.py:jwt:326
20+
621149e12da145ea6c65ca5a0246ce5f93f9124e:tests/test_magiclink.py:jwt:253
21+
66ec16354a25b8d8d22de85ed823c5151fda0940:tests/test_auth.py:jwt:606
22+
66ec16354a25b8d8d22de85ed823c5151fda0940:tests/test_auth.py:jwt:607
23+
66ec16354a25b8d8d22de85ed823c5151fda0940:tests/test_auth.py:jwt:632
24+
66ec16354a25b8d8d22de85ed823c5151fda0940:tests/test_auth.py:jwt:648
25+
66ec16354a25b8d8d22de85ed823c5151fda0940:tests/test_auth.py:jwt:649
26+
66ec16354a25b8d8d22de85ed823c5151fda0940:tests/test_auth.py:jwt:723
27+
66ec16354a25b8d8d22de85ed823c5151fda0940:tests/test_auth.py:jwt:724
28+
66ec16354a25b8d8d22de85ed823c5151fda0940:tests/test_auth.py:jwt:742
29+
66ec16354a25b8d8d22de85ed823c5151fda0940:tests/test_auth.py:jwt:779
30+
66ec16354a25b8d8d22de85ed823c5151fda0940:tests/test_auth.py:jwt:780
31+
66ec16354a25b8d8d22de85ed823c5151fda0940:tests/test_auth.py:jwt:781
32+
66ec16354a25b8d8d22de85ed823c5151fda0940:tests/test_auth.py:jwt:796
33+
66ec16354a25b8d8d22de85ed823c5151fda0940:tests/test_auth.py:jwt:797
34+
66ec16354a25b8d8d22de85ed823c5151fda0940:tests/test_auth.py:jwt:814
35+
6d4b1f4dbcbef45e4a5bdce952d8bc2bf5a8dd72:tests/test_enchantedlink.py:jwt:246
36+
6d4b1f4dbcbef45e4a5bdce952d8bc2bf5a8dd72:tests/test_enchantedlink.py:jwt:261
37+
71ba33c612675bd34fa7830c6b884f1f01efda9b:tests/test_oauth.py:jwt:102
38+
71ba33c612675bd34fa7830c6b884f1f01efda9b:tests/test_saml.py:jwt:84
39+
84adfdb469398f4b2263d0e57f8a16389227629d:tests/test_totp.py:jwt:106
40+
8e5937752bd25ae682e56f9f8e31ee537ea5479d:tests/test_auth.py:jwt:285
41+
8e5937752bd25ae682e56f9f8e31ee537ea5479d:tests/test_auth.py:jwt:312
42+
910e8e7d14b8c53e566a06c55abfb04b5a16cb72:tests/test_descope_client.py:jwt:152
43+
910e8e7d14b8c53e566a06c55abfb04b5a16cb72:tests/test_descope_client.py:jwt:153
44+
910e8e7d14b8c53e566a06c55abfb04b5a16cb72:tests/test_descope_client.py:jwt:174
45+
910e8e7d14b8c53e566a06c55abfb04b5a16cb72:tests/test_descope_client.py:jwt:211
46+
910e8e7d14b8c53e566a06c55abfb04b5a16cb72:tests/test_descope_client.py:jwt:212
47+
910e8e7d14b8c53e566a06c55abfb04b5a16cb72:tests/test_descope_client.py:jwt:213
48+
910e8e7d14b8c53e566a06c55abfb04b5a16cb72:tests/test_descope_client.py:jwt:228
49+
910e8e7d14b8c53e566a06c55abfb04b5a16cb72:tests/test_descope_client.py:jwt:229
50+
910e8e7d14b8c53e566a06c55abfb04b5a16cb72:tests/test_descope_client.py:jwt:76
51+
910e8e7d14b8c53e566a06c55abfb04b5a16cb72:tests/test_descope_client.py:jwt:77
52+
910e8e7d14b8c53e566a06c55abfb04b5a16cb72:tests/test_descope_client.py:jwt:78
53+
910e8e7d14b8c53e566a06c55abfb04b5a16cb72:tests/test_exchanger.py:jwt:45
54+
910e8e7d14b8c53e566a06c55abfb04b5a16cb72:tests/test_magiclink.py:jwt:339
55+
910e8e7d14b8c53e566a06c55abfb04b5a16cb72:tests/test_magiclink.py:jwt:351
56+
910e8e7d14b8c53e566a06c55abfb04b5a16cb72:tests/test_otp.py:jwt:245
57+
910e8e7d14b8c53e566a06c55abfb04b5a16cb72:tests/test_totp.py:jwt:109
58+
910e8e7d14b8c53e566a06c55abfb04b5a16cb72:tests/test_totp.py:jwt:85
59+
910e8e7d14b8c53e566a06c55abfb04b5a16cb72:tests/test_webauthn.py:jwt:127
60+
910e8e7d14b8c53e566a06c55abfb04b5a16cb72:tests/test_webauthn.py:jwt:212
61+
910e8e7d14b8c53e566a06c55abfb04b5a16cb72:tests/test_webauthn.py:jwt:230
62+
910e8e7d14b8c53e566a06c55abfb04b5a16cb72:tests/test_webauthn.py:jwt:318
63+
a753d819979a4864cf4df0226fa9c9a5d06424c9:tests/test_password.py:jwt:399
64+
a76d544894ddac33781df1f9d7e73de4200d177f:tests/test_auth.py:jwt:385
65+
a76d544894ddac33781df1f9d7e73de4200d177f:tests/test_auth.py:jwt:402
66+
a76d544894ddac33781df1f9d7e73de4200d177f:tests/test_auth.py:jwt:403
67+
a76d544894ddac33781df1f9d7e73de4200d177f:tests/test_auth.py:jwt:404
68+
a76d544894ddac33781df1f9d7e73de4200d177f:tests/test_auth.py:jwt:478
69+
a76d544894ddac33781df1f9d7e73de4200d177f:tests/test_auth.py:jwt:479
70+
a76d544894ddac33781df1f9d7e73de4200d177f:tests/test_auth.py:jwt:497
71+
a76d544894ddac33781df1f9d7e73de4200d177f:tests/test_auth.py:jwt:534
72+
a76d544894ddac33781df1f9d7e73de4200d177f:tests/test_auth.py:jwt:535
73+
a76d544894ddac33781df1f9d7e73de4200d177f:tests/test_auth.py:jwt:549
74+
a76d544894ddac33781df1f9d7e73de4200d177f:tests/test_auth.py:jwt:550
75+
a76d544894ddac33781df1f9d7e73de4200d177f:tests/test_auth.py:jwt:567
76+
ad14b0225444f72e8c46527d10acfd19dd6e9352:tests/test_oauth.py:jwt:137
77+
ad14b0225444f72e8c46527d10acfd19dd6e9352:tests/test_saml.py:jwt:131
78+
ad14b0225444f72e8c46527d10acfd19dd6e9352:tests/test_totp.py:jwt:87
79+
ad14b0225444f72e8c46527d10acfd19dd6e9352:tests/test_webauthn.py:jwt:317
80+
ad14b0225444f72e8c46527d10acfd19dd6e9352:tests/test_webauthn.py:jwt:483
81+
bc5a7d8928ba27f9eeb2e0e5ddfe925eb5fda5a7:tests/test_sso.py:jwt:128
82+
e5d19171d5d9e188f1d99369b408388c1032583f:tests/test_descope_client.py:jwt:700
83+
e7f5ad4253ad82236a5cff5f8c06878bfb190b00:tests/test_descope_client.py:jwt:171
84+
e7f5ad4253ad82236a5cff5f8c06878bfb190b00:tests/test_descope_client.py:jwt:185
85+
e7f5ad4253ad82236a5cff5f8c06878bfb190b00:tests/test_descope_client.py:jwt:197
86+
ece761372c78a9ad8a57da5f6d13431d298a99db:tests/test_auth.py:jwt:562
87+
f3ec873c83a7067a1226d8b712b756b1b599fb3b:tests/test_descope_client.py:jwt:519

.pre-commit-config.yaml

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,39 +2,39 @@ exclude: "docs/"
22

33
repos:
44
- repo: https://github.com/floatingpurr/sync_with_poetry
5-
rev: 1.1.0
5+
rev: 1.2.0
66
hooks:
77
- id: sync_with_poetry
88
- repo: https://github.com/pre-commit/pre-commit-hooks
9-
rev: v4.4.0
9+
rev: v5.0.0
1010
hooks:
1111
- id: check-yaml
1212
- id: check-toml
1313
- id: debug-statements
1414
- id: end-of-file-fixer
1515
- id: trailing-whitespace
1616
- repo: https://github.com/PyCQA/isort
17-
rev: 5.12.0
17+
rev: 6.0.1
1818
hooks:
1919
- id: isort
2020
args: ["--profile", "black"]
2121
- repo: https://github.com/psf/black
22-
rev: 24.10.0
22+
rev: 25.1.0
2323
hooks:
2424
- id: black
2525
language_version: python3
2626
- repo: https://github.com/asottile/pyupgrade
27-
rev: v3.10.1
27+
rev: v3.20.0
2828
hooks:
2929
- id: pyupgrade
3030
args: [--py38-plus]
3131
- repo: https://github.com/pycqa/flake8
32-
rev: 7.1.1
32+
rev: 7.2.0
3333
hooks:
3434
- id: flake8
3535
additional_dependencies: [Flake8-pyproject]
3636
- repo: https://github.com/python-poetry/poetry
37-
rev: 1.6.1
37+
rev: 2.1.3
3838
hooks:
3939
- id: poetry-export
4040
files: pyproject.toml
@@ -43,16 +43,16 @@ repos:
4343
- id: poetry-check
4444
files: pyproject.toml
4545
- repo: https://github.com/pre-commit/pre-commit
46-
rev: v3.3.3
46+
rev: v4.2.0
4747
hooks:
4848
- id: validate_manifest
4949
- repo: https://github.com/tox-dev/tox-ini-fmt
50-
rev: 1.3.1
50+
rev: 1.5.0
5151
hooks:
5252
- id: tox-ini-fmt
5353
args: ["-p", "type"]
5454
- repo: https://github.com/gitleaks/gitleaks
55-
rev: v8.16.1
55+
rev: v8.27.2
5656
hooks:
5757
- id: gitleaks
5858
- repo: local

.vscode/settings.json

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
{
2-
"python.testing.pytestEnabled": true,
3-
"python.testing.pytestArgs": [
4-
"tests"
5-
],
6-
"flake8.importStrategy": "fromEnvironment",
7-
"mypy-type-checker.importStrategy": "fromEnvironment",
8-
"isort.importStrategy": "fromEnvironment",
9-
"black-formatter.importStrategy": "fromEnvironment",
10-
}
2+
"python.testing.pytestEnabled": true,
3+
"python.testing.pytestArgs": [
4+
"tests"
5+
],
6+
"flake8.importStrategy": "fromEnvironment",
7+
"mypy-type-checker.importStrategy": "fromEnvironment",
8+
"isort.importStrategy": "fromEnvironment",
9+
"black-formatter.importStrategy": "fromEnvironment",
10+
"workbench.colorCustomizations": { /* do not change please... */}
11+
}

0 commit comments

Comments
 (0)