pydplus 1.0.0.dev0__tar.gz → 1.0.1__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.
- {pydplus-1.0.0.dev0 → pydplus-1.0.1}/PKG-INFO +19 -15
- {pydplus-1.0.0.dev0 → pydplus-1.0.1}/README.md +12 -9
- {pydplus-1.0.0.dev0 → pydplus-1.0.1}/pyproject.toml +31 -9
- {pydplus-1.0.0.dev0 → pydplus-1.0.1}/LICENSE +0 -0
- {pydplus-1.0.0.dev0 → pydplus-1.0.1}/src/pydplus/__init__.py +0 -0
- {pydplus-1.0.0.dev0 → pydplus-1.0.1}/src/pydplus/api.py +0 -0
- {pydplus-1.0.0.dev0 → pydplus-1.0.1}/src/pydplus/auth.py +0 -0
- {pydplus-1.0.0.dev0 → pydplus-1.0.1}/src/pydplus/constants.py +0 -0
- {pydplus-1.0.0.dev0 → pydplus-1.0.1}/src/pydplus/core.py +0 -0
- {pydplus-1.0.0.dev0 → pydplus-1.0.1}/src/pydplus/credentials.py +0 -0
- {pydplus-1.0.0.dev0 → pydplus-1.0.1}/src/pydplus/decorators.py +0 -0
- {pydplus-1.0.0.dev0 → pydplus-1.0.1}/src/pydplus/errors/__init__.py +0 -0
- {pydplus-1.0.0.dev0 → pydplus-1.0.1}/src/pydplus/errors/exceptions.py +0 -0
- {pydplus-1.0.0.dev0 → pydplus-1.0.1}/src/pydplus/errors/handlers.py +0 -0
- {pydplus-1.0.0.dev0 → pydplus-1.0.1}/src/pydplus/users.py +0 -0
- {pydplus-1.0.0.dev0 → pydplus-1.0.1}/src/pydplus/utils/__init__.py +0 -0
- {pydplus-1.0.0.dev0 → pydplus-1.0.1}/src/pydplus/utils/core_utils.py +0 -0
- {pydplus-1.0.0.dev0 → pydplus-1.0.1}/src/pydplus/utils/helper.py +0 -0
- {pydplus-1.0.0.dev0 → pydplus-1.0.1}/src/pydplus/utils/log_utils.py +0 -0
- {pydplus-1.0.0.dev0 → pydplus-1.0.1}/src/pydplus/utils/version.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: pydplus
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.1
|
|
4
4
|
Summary: A Python toolset for the RSA ID Plus cloud authentication platform
|
|
5
5
|
License: MIT License
|
|
6
6
|
|
|
@@ -23,13 +23,13 @@ License: MIT License
|
|
|
23
23
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
24
24
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
25
25
|
SOFTWARE.
|
|
26
|
-
Keywords: rsa-security,id-plus,securid,authentication-manager,sso,mfa,iam,identity,authentication
|
|
26
|
+
Keywords: rsa-security,id-plus,rsa-id-plus,securid,rsa-securid,authentication-manager,rsa-authentication-manager,cloud-access-service,single-sign-on,sso,mfa,iam,identity,authentication,multifactor-authentication,fido
|
|
27
27
|
Author: Jeff Shurtliff
|
|
28
28
|
Author-email: jeffshurtliff@gmail.com
|
|
29
29
|
Maintainer: Jeff Shurtliff
|
|
30
30
|
Maintainer-email: jeffshurtliff@gmail.com
|
|
31
31
|
Requires-Python: >=3.9.2,<3.14.0
|
|
32
|
-
Classifier: Development Status ::
|
|
32
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
33
33
|
Classifier: License :: OSI Approved :: MIT License
|
|
34
34
|
Classifier: License :: Freely Distributable
|
|
35
35
|
Classifier: Intended Audience :: Information Technology
|
|
@@ -54,20 +54,21 @@ Classifier: Programming Language :: Python :: 3.12
|
|
|
54
54
|
Classifier: Programming Language :: Python :: 3.13
|
|
55
55
|
Requires-Dist: PyYAML (>=6.0.3,<7)
|
|
56
56
|
Requires-Dist: certifi (>=2024.7.4)
|
|
57
|
-
Requires-Dist: cryptography (>=46.0.
|
|
57
|
+
Requires-Dist: cryptography (>=46.0.7)
|
|
58
58
|
Requires-Dist: idna (>=3.7,<4)
|
|
59
59
|
Requires-Dist: pyjwt (>=2.12.0)
|
|
60
60
|
Requires-Dist: requests (>=2.32.5)
|
|
61
61
|
Requires-Dist: tomli (>=2.0.0) ; python_version < "3.11"
|
|
62
|
-
Requires-Dist: urllib3 (>=2.6.3,<3
|
|
62
|
+
Requires-Dist: urllib3 (>=2.6.3,<2.7) ; python_version < "3.10"
|
|
63
|
+
Requires-Dist: urllib3 (>=2.7.0,<3) ; python_version >= "3.10"
|
|
63
64
|
Project-URL: Changelog, https://pydplus.readthedocs.io/en/latest/CHANGELOG.html
|
|
64
|
-
Project-URL: Documentation, https://pydplus.readthedocs.io/en/
|
|
65
|
+
Project-URL: Documentation, https://pydplus.readthedocs.io/en/stable/
|
|
65
66
|
Project-URL: Homepage, https://github.com/jeffshurtliff/pydplus
|
|
66
67
|
Project-URL: Issue Tracker, https://github.com/jeffshurtliff/pydplus/issues
|
|
67
68
|
Project-URL: Repository, https://github.com/jeffshurtliff/pydplus
|
|
68
69
|
Description-Content-Type: text/markdown
|
|
69
70
|
|
|
70
|
-
<img src="docs/_static/pydplus-icon-cropped.png"
|
|
71
|
+
<img src="https://raw.githubusercontent.com/jeffshurtliff/pydplus/main/docs/_static/pydplus-icon-cropped.png"
|
|
71
72
|
class="pydplus-c-landing-page-logo"
|
|
72
73
|
style="background-color: transparent; max-height: 320px;"
|
|
73
74
|
alt="PyDPlus Logo" />
|
|
@@ -88,7 +89,7 @@ A Python toolset for the RSA ID Plus cloud authentication platform.
|
|
|
88
89
|
<td>Latest Beta/RC Release</td>
|
|
89
90
|
<td>
|
|
90
91
|
<a href="https://pypi.org/project/pydplus/#history">
|
|
91
|
-
<img alt="PyPI" src="https://img.shields.io/badge/pypi-
|
|
92
|
+
<img alt="PyPI" src="https://img.shields.io/badge/pypi-none-blue">
|
|
92
93
|
</a>
|
|
93
94
|
</td>
|
|
94
95
|
</tr>
|
|
@@ -120,8 +121,8 @@ A Python toolset for the RSA ID Plus cloud authentication platform.
|
|
|
120
121
|
<tr>
|
|
121
122
|
<td>Documentation</td>
|
|
122
123
|
<td>
|
|
123
|
-
<a href="https://pydplus.readthedocs.io/en/
|
|
124
|
-
<img alt="Documentation Status" src="https://readthedocs.org/projects/pydplus/badge/?version=
|
|
124
|
+
<a href="https://pydplus.readthedocs.io/en/stable/?badge=stable">
|
|
125
|
+
<img alt="Documentation Status" src="https://readthedocs.org/projects/pydplus/badge/?version=stable" />
|
|
125
126
|
</a>
|
|
126
127
|
</td>
|
|
127
128
|
</tr>
|
|
@@ -166,6 +167,9 @@ A Python toolset for the RSA ID Plus cloud authentication platform.
|
|
|
166
167
|
</table>
|
|
167
168
|
|
|
168
169
|
## Installation
|
|
170
|
+
> PyDPlus `1.0.1` is the final release line that supports Python 3.9.
|
|
171
|
+
> Future major releases will require Python 3.12 or newer.
|
|
172
|
+
|
|
169
173
|
Install from PyPI:
|
|
170
174
|
|
|
171
175
|
```sh
|
|
@@ -218,7 +222,7 @@ pydp = PyDPlus(
|
|
|
218
222
|
```
|
|
219
223
|
|
|
220
224
|
Legacy API authentication is also supported. See the
|
|
221
|
-
[Authentication](https://pydplus.readthedocs.io/en/
|
|
225
|
+
[Authentication](https://pydplus.readthedocs.io/en/stable/guides/authentication.html) guide for both patterns.
|
|
222
226
|
|
|
223
227
|
### 3) Define OAuth scopes (three practical options)
|
|
224
228
|
|
|
@@ -254,12 +258,12 @@ response = pydp.users.disable_user(user_id=user_id)
|
|
|
254
258
|
|
|
255
259
|
For deeper coverage, see:
|
|
256
260
|
|
|
257
|
-
- Quickstart: <https://pydplus.readthedocs.io/en/
|
|
258
|
-
- Authentication guide: <https://pydplus.readthedocs.io/en/
|
|
259
|
-
- Client reference: <https://pydplus.readthedocs.io/en/
|
|
261
|
+
- Quickstart: <https://pydplus.readthedocs.io/en/stable/getting-started/quickstart.html>
|
|
262
|
+
- Authentication guide: <https://pydplus.readthedocs.io/en/stable/guides/authentication.html>
|
|
263
|
+
- Client reference: <https://pydplus.readthedocs.io/en/stable/reference/client.html>
|
|
260
264
|
|
|
261
265
|
## Documentation
|
|
262
|
-
The documentation is located here: [https://pydplus.readthedocs.io/en/
|
|
266
|
+
The documentation is located here: [https://pydplus.readthedocs.io/en/stable/](https://pydplus.readthedocs.io/en/stable/)
|
|
263
267
|
|
|
264
268
|
## License
|
|
265
269
|
[MIT License](https://github.com/jeffshurtliff/pydplus/blob/main/LICENSE)
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<img src="docs/_static/pydplus-icon-cropped.png"
|
|
1
|
+
<img src="https://raw.githubusercontent.com/jeffshurtliff/pydplus/main/docs/_static/pydplus-icon-cropped.png"
|
|
2
2
|
class="pydplus-c-landing-page-logo"
|
|
3
3
|
style="background-color: transparent; max-height: 320px;"
|
|
4
4
|
alt="PyDPlus Logo" />
|
|
@@ -19,7 +19,7 @@ A Python toolset for the RSA ID Plus cloud authentication platform.
|
|
|
19
19
|
<td>Latest Beta/RC Release</td>
|
|
20
20
|
<td>
|
|
21
21
|
<a href="https://pypi.org/project/pydplus/#history">
|
|
22
|
-
<img alt="PyPI" src="https://img.shields.io/badge/pypi-
|
|
22
|
+
<img alt="PyPI" src="https://img.shields.io/badge/pypi-none-blue">
|
|
23
23
|
</a>
|
|
24
24
|
</td>
|
|
25
25
|
</tr>
|
|
@@ -51,8 +51,8 @@ A Python toolset for the RSA ID Plus cloud authentication platform.
|
|
|
51
51
|
<tr>
|
|
52
52
|
<td>Documentation</td>
|
|
53
53
|
<td>
|
|
54
|
-
<a href="https://pydplus.readthedocs.io/en/
|
|
55
|
-
<img alt="Documentation Status" src="https://readthedocs.org/projects/pydplus/badge/?version=
|
|
54
|
+
<a href="https://pydplus.readthedocs.io/en/stable/?badge=stable">
|
|
55
|
+
<img alt="Documentation Status" src="https://readthedocs.org/projects/pydplus/badge/?version=stable" />
|
|
56
56
|
</a>
|
|
57
57
|
</td>
|
|
58
58
|
</tr>
|
|
@@ -97,6 +97,9 @@ A Python toolset for the RSA ID Plus cloud authentication platform.
|
|
|
97
97
|
</table>
|
|
98
98
|
|
|
99
99
|
## Installation
|
|
100
|
+
> PyDPlus `1.0.1` is the final release line that supports Python 3.9.
|
|
101
|
+
> Future major releases will require Python 3.12 or newer.
|
|
102
|
+
|
|
100
103
|
Install from PyPI:
|
|
101
104
|
|
|
102
105
|
```sh
|
|
@@ -149,7 +152,7 @@ pydp = PyDPlus(
|
|
|
149
152
|
```
|
|
150
153
|
|
|
151
154
|
Legacy API authentication is also supported. See the
|
|
152
|
-
[Authentication](https://pydplus.readthedocs.io/en/
|
|
155
|
+
[Authentication](https://pydplus.readthedocs.io/en/stable/guides/authentication.html) guide for both patterns.
|
|
153
156
|
|
|
154
157
|
### 3) Define OAuth scopes (three practical options)
|
|
155
158
|
|
|
@@ -185,12 +188,12 @@ response = pydp.users.disable_user(user_id=user_id)
|
|
|
185
188
|
|
|
186
189
|
For deeper coverage, see:
|
|
187
190
|
|
|
188
|
-
- Quickstart: <https://pydplus.readthedocs.io/en/
|
|
189
|
-
- Authentication guide: <https://pydplus.readthedocs.io/en/
|
|
190
|
-
- Client reference: <https://pydplus.readthedocs.io/en/
|
|
191
|
+
- Quickstart: <https://pydplus.readthedocs.io/en/stable/getting-started/quickstart.html>
|
|
192
|
+
- Authentication guide: <https://pydplus.readthedocs.io/en/stable/guides/authentication.html>
|
|
193
|
+
- Client reference: <https://pydplus.readthedocs.io/en/stable/reference/client.html>
|
|
191
194
|
|
|
192
195
|
## Documentation
|
|
193
|
-
The documentation is located here: [https://pydplus.readthedocs.io/en/
|
|
196
|
+
The documentation is located here: [https://pydplus.readthedocs.io/en/stable/](https://pydplus.readthedocs.io/en/stable/)
|
|
194
197
|
|
|
195
198
|
## License
|
|
196
199
|
[MIT License](https://github.com/jeffshurtliff/pydplus/blob/main/LICENSE)
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
# --------------------------------------------------------------------
|
|
4
4
|
[project]
|
|
5
5
|
name = "pydplus"
|
|
6
|
-
version = "1.0.
|
|
6
|
+
version = "1.0.1"
|
|
7
7
|
description = "A Python toolset for the RSA ID Plus cloud authentication platform"
|
|
8
8
|
readme = "README.md"
|
|
9
9
|
requires-python = ">=3.9.2,<3.14.0"
|
|
@@ -14,11 +14,28 @@ authors = [
|
|
|
14
14
|
maintainers = [
|
|
15
15
|
{ name = "Jeff Shurtliff", email = "jeffshurtliff@gmail.com" }
|
|
16
16
|
]
|
|
17
|
-
keywords = [
|
|
17
|
+
keywords = [
|
|
18
|
+
"rsa-security",
|
|
19
|
+
"id-plus",
|
|
20
|
+
"rsa-id-plus",
|
|
21
|
+
"securid",
|
|
22
|
+
"rsa-securid",
|
|
23
|
+
"authentication-manager",
|
|
24
|
+
"rsa-authentication-manager",
|
|
25
|
+
"cloud-access-service",
|
|
26
|
+
"single-sign-on",
|
|
27
|
+
"sso",
|
|
28
|
+
"mfa",
|
|
29
|
+
"iam",
|
|
30
|
+
"identity",
|
|
31
|
+
"authentication",
|
|
32
|
+
"multifactor-authentication",
|
|
33
|
+
"fido",
|
|
34
|
+
]
|
|
18
35
|
|
|
19
36
|
classifiers = [
|
|
20
37
|
# Project maturity
|
|
21
|
-
"Development Status ::
|
|
38
|
+
"Development Status :: 5 - Production/Stable",
|
|
22
39
|
|
|
23
40
|
# License
|
|
24
41
|
"License :: OSI Approved :: MIT License",
|
|
@@ -53,8 +70,11 @@ dependencies = [
|
|
|
53
70
|
"PyYAML>=6.0.3,<7",
|
|
54
71
|
"requests>=2.32.5",
|
|
55
72
|
"pyjwt>=2.12.0", # Explicit pin to avoid CVE-2026-32597
|
|
56
|
-
"cryptography>=46.0.
|
|
57
|
-
|
|
73
|
+
"cryptography>=46.0.7", # Explicit pin to address known cryptography security advisories
|
|
74
|
+
|
|
75
|
+
# Explicit pins to address known urllib3 security advisories while keeping the final Python 3.9-compatible line installable
|
|
76
|
+
"urllib3>=2.7.0,<3; python_version >= '3.10'",
|
|
77
|
+
"urllib3>=2.6.3,<2.7; python_version < '3.10'",
|
|
58
78
|
"idna>=3.7,<4", # Explicit pin to avoid CVE-2024-3651
|
|
59
79
|
"certifi>=2024.7.4", # Explicit pin to mitigate CA removals (e-Tugra, GLOBALTRUST)
|
|
60
80
|
|
|
@@ -65,8 +85,8 @@ dependencies = [
|
|
|
65
85
|
[project.urls]
|
|
66
86
|
Homepage = "https://github.com/jeffshurtliff/pydplus"
|
|
67
87
|
Repository = "https://github.com/jeffshurtliff/pydplus"
|
|
68
|
-
Documentation = "https://pydplus.readthedocs.io/en/
|
|
69
|
-
Changelog = "https://pydplus.readthedocs.io/en/latest/CHANGELOG.html"
|
|
88
|
+
Documentation = "https://pydplus.readthedocs.io/en/stable/"
|
|
89
|
+
Changelog = "https://pydplus.readthedocs.io/en/latest/CHANGELOG.html"
|
|
70
90
|
"Issue Tracker" = "https://github.com/jeffshurtliff/pydplus/issues"
|
|
71
91
|
|
|
72
92
|
# --------------------------------------------------------------------
|
|
@@ -80,14 +100,16 @@ packages = [
|
|
|
80
100
|
include = ["LICENSE", "README.md"]
|
|
81
101
|
|
|
82
102
|
[tool.poetry.group.dev.dependencies]
|
|
83
|
-
pytest = "
|
|
84
|
-
pytest-cov = "^7.0.0"
|
|
103
|
+
pytest = { version = ">=9.0.3", python = ">=3.10,<3.14.0" }
|
|
104
|
+
pytest-cov = { version = "^7.0.0", python = ">=3.10,<3.14.0" }
|
|
85
105
|
bandit = { version = "^1.7.8", extras = ["sarif"] }
|
|
86
106
|
Sphinx = "^7.4.7"
|
|
87
107
|
pydata-sphinx-theme = "^0.15.4"
|
|
88
108
|
myst-parser = "^3.0.1"
|
|
89
109
|
sphinx-favicon = "^1.0.1"
|
|
90
110
|
ruff = "^0.15.8"
|
|
111
|
+
twine = "^6.1.0"
|
|
112
|
+
pygments = ">=2.20.0" # Explicit pin to avoid CVE-2026-4539
|
|
91
113
|
|
|
92
114
|
[tool.ruff]
|
|
93
115
|
target-version = "py39"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|