deezer-oauth-cli 1.7.0__tar.gz → 1.8.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.
- {deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/PKG-INFO +4 -3
- {deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/README.md +2 -2
- {deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/pyproject.toml +24 -44
- deezer_oauth_cli-1.8.0/src/deezer_oauth/__init__.py +1 -0
- {deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/src/deezer_oauth_cli.egg-info/PKG-INFO +4 -3
- {deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/tests/test_dunder_main.py +1 -1
- {deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/tests/test_main.py +1 -1
- {deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/tests/test_server.py +3 -6
- deezer_oauth_cli-1.7.0/src/deezer_oauth/__init__.py +0 -1
- {deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/LICENSE +0 -0
- {deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/setup.cfg +0 -0
- {deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/src/deezer_oauth/__main__.py +0 -0
- {deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/src/deezer_oauth/client.py +0 -0
- {deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/src/deezer_oauth/constants.py +0 -0
- {deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/src/deezer_oauth/files.py +0 -0
- {deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/src/deezer_oauth/main.py +0 -0
- {deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/src/deezer_oauth/py.typed +0 -0
- {deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/src/deezer_oauth/server.py +0 -0
- {deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/src/deezer_oauth_cli.egg-info/SOURCES.txt +0 -0
- {deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/src/deezer_oauth_cli.egg-info/dependency_links.txt +0 -0
- {deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/src/deezer_oauth_cli.egg-info/entry_points.txt +0 -0
- {deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/src/deezer_oauth_cli.egg-info/requires.txt +0 -0
- {deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/src/deezer_oauth_cli.egg-info/top_level.txt +0 -0
- {deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/tests/test_client.py +0 -0
- {deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/tests/test_files.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: deezer-oauth-cli
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.8.0
|
|
4
4
|
Summary: A small CLI to quickly obtain an API token for Deezer API.
|
|
5
5
|
Author-email: Bruno Alla <alla.brunoo@gmail.com>
|
|
6
6
|
License-Expression: MIT
|
|
@@ -20,6 +20,7 @@ Classifier: Programming Language :: Python :: 3.11
|
|
|
20
20
|
Classifier: Programming Language :: Python :: 3.12
|
|
21
21
|
Classifier: Programming Language :: Python :: 3.13
|
|
22
22
|
Classifier: Programming Language :: Python :: 3.14
|
|
23
|
+
Classifier: Programming Language :: Python :: 3.15
|
|
23
24
|
Classifier: Topic :: Software Development :: Libraries
|
|
24
25
|
Requires-Python: >=3.10
|
|
25
26
|
Description-Content-Type: text/markdown
|
|
@@ -46,8 +47,8 @@ Dynamic: license-file
|
|
|
46
47
|
<a href="https://github.com/astral-sh/ruff">
|
|
47
48
|
<img src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json" alt="Ruff">
|
|
48
49
|
</a>
|
|
49
|
-
<a href="https://github.com/
|
|
50
|
-
<img src="https://img.shields.io/
|
|
50
|
+
<a href="https://github.com/j178/prek">
|
|
51
|
+
<img src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/j178/prek/master/docs/assets/badge-v0.json" alt="prek">
|
|
51
52
|
</a>
|
|
52
53
|
</p>
|
|
53
54
|
<p align="center">
|
|
@@ -15,8 +15,8 @@
|
|
|
15
15
|
<a href="https://github.com/astral-sh/ruff">
|
|
16
16
|
<img src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json" alt="Ruff">
|
|
17
17
|
</a>
|
|
18
|
-
<a href="https://github.com/
|
|
19
|
-
<img src="https://img.shields.io/
|
|
18
|
+
<a href="https://github.com/j178/prek">
|
|
19
|
+
<img src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/j178/prek/master/docs/assets/badge-v0.json" alt="prek">
|
|
20
20
|
</a>
|
|
21
21
|
</p>
|
|
22
22
|
<p align="center">
|
|
@@ -4,7 +4,7 @@ requires = [ "setuptools>=77.0.3" ]
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "deezer-oauth-cli"
|
|
7
|
-
version = "1.
|
|
7
|
+
version = "1.8.0"
|
|
8
8
|
description = "A small CLI to quickly obtain an API token for Deezer API."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = "MIT"
|
|
@@ -23,9 +23,9 @@ classifiers = [
|
|
|
23
23
|
"Programming Language :: Python :: 3.12",
|
|
24
24
|
"Programming Language :: Python :: 3.13",
|
|
25
25
|
"Programming Language :: Python :: 3.14",
|
|
26
|
+
"Programming Language :: Python :: 3.15",
|
|
26
27
|
"Topic :: Software Development :: Libraries",
|
|
27
28
|
]
|
|
28
|
-
|
|
29
29
|
dependencies = [
|
|
30
30
|
"httpx>=0.27",
|
|
31
31
|
"rich>=10",
|
|
@@ -41,16 +41,16 @@ scripts.deezer-oauth = "deezer_oauth.main:app"
|
|
|
41
41
|
|
|
42
42
|
[dependency-groups]
|
|
43
43
|
dev = [
|
|
44
|
-
"pyfakefs>=
|
|
45
|
-
"pytest>=
|
|
44
|
+
"pyfakefs>=6,<7",
|
|
45
|
+
"pytest>=9,<10",
|
|
46
46
|
"pytest-cov>=7,<8",
|
|
47
47
|
"pytest-mock>=3.6,<4",
|
|
48
48
|
"respx>=0.22",
|
|
49
|
+
"ty==0.0.69",
|
|
49
50
|
]
|
|
50
51
|
|
|
51
52
|
[tool.ruff]
|
|
52
53
|
line-length = 88
|
|
53
|
-
|
|
54
54
|
lint.select = [
|
|
55
55
|
"B", # flake8-bugbear
|
|
56
56
|
"C4", # flake8-comprehensions
|
|
@@ -83,63 +83,43 @@ lint.per-file-ignores."tests/**/*" = [
|
|
|
83
83
|
lint.isort.known-first-party = [ "deezer_oauth", "tests" ]
|
|
84
84
|
|
|
85
85
|
[tool.pyproject-fmt]
|
|
86
|
-
max_supported_python = "3.
|
|
86
|
+
max_supported_python = "3.15"
|
|
87
87
|
|
|
88
|
-
[tool.
|
|
89
|
-
|
|
90
|
-
|
|
88
|
+
[tool.ty]
|
|
89
|
+
terminal.error-on-warning = true
|
|
90
|
+
analysis.allowed-unresolved-imports = [ "test.**" ]
|
|
91
91
|
|
|
92
|
-
[tool.
|
|
93
|
-
|
|
92
|
+
[tool.pytest]
|
|
93
|
+
addopts = [ "-v", "-Wonce", "--cov=deezer_oauth" ]
|
|
94
|
+
minversion = "9.0"
|
|
95
|
+
pythonpath = [ "src" ]
|
|
94
96
|
|
|
95
|
-
[tool.coverage
|
|
96
|
-
|
|
97
|
-
exclude_lines = [
|
|
98
|
-
"pragma: no cover",
|
|
97
|
+
[tool.coverage]
|
|
98
|
+
run.branch = true
|
|
99
|
+
report.exclude_lines = [
|
|
99
100
|
"@overload",
|
|
100
101
|
"if TYPE_CHECKING",
|
|
102
|
+
"pragma: no cover",
|
|
101
103
|
]
|
|
102
|
-
|
|
103
|
-
[tool.mypy]
|
|
104
|
-
check_untyped_defs = true
|
|
105
|
-
disallow_any_generics = true
|
|
106
|
-
disallow_incomplete_defs = true
|
|
107
|
-
disallow_untyped_defs = true
|
|
108
|
-
mypy_path = "src/"
|
|
109
|
-
no_implicit_optional = true
|
|
110
|
-
show_error_codes = true
|
|
111
|
-
warn_unreachable = true
|
|
112
|
-
warn_unused_ignores = true
|
|
113
|
-
|
|
114
|
-
[[tool.mypy.overrides]]
|
|
115
|
-
module = "tests.*"
|
|
116
|
-
allow_untyped_defs = true
|
|
104
|
+
report.ignore_errors = true
|
|
117
105
|
|
|
118
106
|
[tool.semantic_release]
|
|
119
|
-
version_toml = [ "pyproject.toml:project.version" ]
|
|
120
107
|
version_variables = [
|
|
121
108
|
"src/deezer_oauth/__init__.py:__version__",
|
|
122
109
|
]
|
|
110
|
+
version_toml = [ "pyproject.toml:project.version" ]
|
|
123
111
|
build_command = """
|
|
124
112
|
pip install uv
|
|
125
113
|
uv lock
|
|
126
114
|
git add uv.lock
|
|
127
115
|
uv build
|
|
128
116
|
"""
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
117
|
+
branches.main.match = "main"
|
|
118
|
+
branches.noop.match = "(?!main$)"
|
|
119
|
+
branches.noop.prerelease = true
|
|
120
|
+
changelog.environment.keep_trailing_newline = true
|
|
121
|
+
changelog.exclude_commit_patterns = [
|
|
132
122
|
"chore.*",
|
|
133
123
|
"ci.*",
|
|
134
124
|
"Merge pull request .*",
|
|
135
125
|
]
|
|
136
|
-
|
|
137
|
-
[tool.semantic_release.changelog.environment]
|
|
138
|
-
keep_trailing_newline = true
|
|
139
|
-
|
|
140
|
-
[tool.semantic_release.branches.main]
|
|
141
|
-
match = "main"
|
|
142
|
-
|
|
143
|
-
[tool.semantic_release.branches.noop]
|
|
144
|
-
match = "(?!main$)"
|
|
145
|
-
prerelease = true
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "1.8.0"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: deezer-oauth-cli
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.8.0
|
|
4
4
|
Summary: A small CLI to quickly obtain an API token for Deezer API.
|
|
5
5
|
Author-email: Bruno Alla <alla.brunoo@gmail.com>
|
|
6
6
|
License-Expression: MIT
|
|
@@ -20,6 +20,7 @@ Classifier: Programming Language :: Python :: 3.11
|
|
|
20
20
|
Classifier: Programming Language :: Python :: 3.12
|
|
21
21
|
Classifier: Programming Language :: Python :: 3.13
|
|
22
22
|
Classifier: Programming Language :: Python :: 3.14
|
|
23
|
+
Classifier: Programming Language :: Python :: 3.15
|
|
23
24
|
Classifier: Topic :: Software Development :: Libraries
|
|
24
25
|
Requires-Python: >=3.10
|
|
25
26
|
Description-Content-Type: text/markdown
|
|
@@ -46,8 +47,8 @@ Dynamic: license-file
|
|
|
46
47
|
<a href="https://github.com/astral-sh/ruff">
|
|
47
48
|
<img src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json" alt="Ruff">
|
|
48
49
|
</a>
|
|
49
|
-
<a href="https://github.com/
|
|
50
|
-
<img src="https://img.shields.io/
|
|
50
|
+
<a href="https://github.com/j178/prek">
|
|
51
|
+
<img src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/j178/prek/master/docs/assets/badge-v0.json" alt="prek">
|
|
51
52
|
</a>
|
|
52
53
|
</p>
|
|
53
54
|
<p align="center">
|
|
@@ -2,7 +2,6 @@ import http.client
|
|
|
2
2
|
import threading
|
|
3
3
|
|
|
4
4
|
import pytest
|
|
5
|
-
from test.support.threading_helper import threading_cleanup, threading_setup
|
|
6
5
|
|
|
7
6
|
from deezer_oauth.client import OAuthDancer
|
|
8
7
|
from deezer_oauth.server import LocalHTTPServer, LocalRequestHandler, run_server
|
|
@@ -38,8 +37,9 @@ class ServerWrapperThread(threading.Thread):
|
|
|
38
37
|
"""
|
|
39
38
|
|
|
40
39
|
server: LocalHTTPServer
|
|
40
|
+
test_class: "TestLocalRequestHandler | None"
|
|
41
41
|
|
|
42
|
-
def __init__(self, test_class):
|
|
42
|
+
def __init__(self, test_class: "TestLocalRequestHandler"):
|
|
43
43
|
threading.Thread.__init__(self)
|
|
44
44
|
self.test_class = test_class
|
|
45
45
|
|
|
@@ -49,6 +49,7 @@ class ServerWrapperThread(threading.Thread):
|
|
|
49
49
|
("localhost", 0),
|
|
50
50
|
LocalRequestHandler,
|
|
51
51
|
)
|
|
52
|
+
assert self.test_class is not None
|
|
52
53
|
self.test_class.host, self.test_class.port = self.server.socket.getsockname()
|
|
53
54
|
self.test_class.server_started.set()
|
|
54
55
|
self.test_class = None
|
|
@@ -69,16 +70,12 @@ class TestLocalRequestHandler:
|
|
|
69
70
|
|
|
70
71
|
@pytest.fixture
|
|
71
72
|
def http_server(self):
|
|
72
|
-
_threads = threading_setup()
|
|
73
73
|
self.server_started = threading.Event()
|
|
74
74
|
thread = ServerWrapperThread(self)
|
|
75
75
|
thread.start()
|
|
76
76
|
self.server_started.wait()
|
|
77
77
|
yield
|
|
78
78
|
thread.stop()
|
|
79
|
-
# clear assignment to avoid dangling thread
|
|
80
|
-
thread = None # type: ignore[assignment]
|
|
81
|
-
threading_cleanup(*_threads)
|
|
82
79
|
|
|
83
80
|
def request(self, uri, method="GET"):
|
|
84
81
|
self.connection = http.client.HTTPConnection(self.host, self.port)
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "1.7.0"
|
|
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
|
{deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/src/deezer_oauth_cli.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
{deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/src/deezer_oauth_cli.egg-info/entry_points.txt
RENAMED
|
File without changes
|
{deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/src/deezer_oauth_cli.egg-info/requires.txt
RENAMED
|
File without changes
|
{deezer_oauth_cli-1.7.0 → deezer_oauth_cli-1.8.0}/src/deezer_oauth_cli.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|