devopstest-aiexternal-python-library 1.0.5__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.
- devopstest_aiexternal_python_library-1.0.5/PKG-INFO +55 -0
- devopstest_aiexternal_python_library-1.0.5/README.md +46 -0
- devopstest_aiexternal_python_library-1.0.5/pyproject.toml +186 -0
- devopstest_aiexternal_python_library-1.0.5/pyproject.toml.orig +176 -0
- devopstest_aiexternal_python_library-1.0.5/src/devopstest_aiexternal_python_library/__init__.py +8 -0
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
Metadata-Version: 2.3
|
|
2
|
+
Name: devopstest-aiexternal-python-library
|
|
3
|
+
Version: 1.0.5
|
|
4
|
+
Summary: devopstest-aiexternal-python-library
|
|
5
|
+
Requires-Python: >=3.11
|
|
6
|
+
Project-URL: homepage, https://github.com/ch-robinson-internal/devopstest-aiexternal-python-library
|
|
7
|
+
Project-URL: repository, https://github.com/ch-robinson-internal/devopstest-aiexternal-python-library
|
|
8
|
+
Description-Content-Type: text/markdown
|
|
9
|
+
|
|
10
|
+
# devopstest-aiexternal-python-library
|
|
11
|
+
|
|
12
|
+
[](https://dev.azure.com/CHR-IT/Navisphere/_build/latest/devopstest-aiexternal-python-library?repoName=ch-robinson-internal%2Fdevopstest-aiexternal-python-library&branchName=main)
|
|
13
|
+
|
|
14
|
+
devopstest-aiexternal-python-library
|
|
15
|
+
|
|
16
|
+
## Development
|
|
17
|
+
|
|
18
|
+
To develop the package locally, follow these steps:
|
|
19
|
+
|
|
20
|
+
### Prerequisites
|
|
21
|
+
|
|
22
|
+
* Python (at least 3.11)
|
|
23
|
+
* [uv](https://docs.astral.sh/uv/getting-started/installation/) for dependency and package management
|
|
24
|
+
|
|
25
|
+
### Running locally
|
|
26
|
+
|
|
27
|
+
* Navigate to the project directory:
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
cd devopstest-aiexternal-python-library
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
* Run the following uv command to create a virtual environment and install the required packages.
|
|
34
|
+
```bash
|
|
35
|
+
uv sync
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
* Ensure that your Python IDE is configured to use the newly created virtual environment.
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
* Install pre-commit hooks to ensure code quality and style:
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
pre-commit install
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
These checks are also run by CI. You can review the list of checks in the .pre-commit-config.yaml file to understand what each hook does.
|
|
48
|
+
|
|
49
|
+
### Testing
|
|
50
|
+
|
|
51
|
+
* To run unit tests, use the following command:
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
uv run pytest
|
|
55
|
+
```
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# devopstest-aiexternal-python-library
|
|
2
|
+
|
|
3
|
+
[](https://dev.azure.com/CHR-IT/Navisphere/_build/latest/devopstest-aiexternal-python-library?repoName=ch-robinson-internal%2Fdevopstest-aiexternal-python-library&branchName=main)
|
|
4
|
+
|
|
5
|
+
devopstest-aiexternal-python-library
|
|
6
|
+
|
|
7
|
+
## Development
|
|
8
|
+
|
|
9
|
+
To develop the package locally, follow these steps:
|
|
10
|
+
|
|
11
|
+
### Prerequisites
|
|
12
|
+
|
|
13
|
+
* Python (at least 3.11)
|
|
14
|
+
* [uv](https://docs.astral.sh/uv/getting-started/installation/) for dependency and package management
|
|
15
|
+
|
|
16
|
+
### Running locally
|
|
17
|
+
|
|
18
|
+
* Navigate to the project directory:
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
cd devopstest-aiexternal-python-library
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
* Run the following uv command to create a virtual environment and install the required packages.
|
|
25
|
+
```bash
|
|
26
|
+
uv sync
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
* Ensure that your Python IDE is configured to use the newly created virtual environment.
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
* Install pre-commit hooks to ensure code quality and style:
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
pre-commit install
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
These checks are also run by CI. You can review the list of checks in the .pre-commit-config.yaml file to understand what each hook does.
|
|
39
|
+
|
|
40
|
+
### Testing
|
|
41
|
+
|
|
42
|
+
* To run unit tests, use the following command:
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
uv run pytest
|
|
46
|
+
```
|
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
[project]
|
|
2
|
+
authors = []
|
|
3
|
+
requires-python = ">=3.11"
|
|
4
|
+
dependencies = []
|
|
5
|
+
name = "devopstest-aiexternal-python-library"
|
|
6
|
+
version = "1.0.5"
|
|
7
|
+
description = "devopstest-aiexternal-python-library"
|
|
8
|
+
readme = "README.md"
|
|
9
|
+
|
|
10
|
+
[project.urls]
|
|
11
|
+
homepage = "https://github.com/ch-robinson-internal/devopstest-aiexternal-python-library"
|
|
12
|
+
repository = "https://github.com/ch-robinson-internal/devopstest-aiexternal-python-library"
|
|
13
|
+
|
|
14
|
+
[build-system]
|
|
15
|
+
requires = ["uv_build"]
|
|
16
|
+
build-backend = "uv_build"
|
|
17
|
+
|
|
18
|
+
[dependency-groups]
|
|
19
|
+
dev = [
|
|
20
|
+
"coverage >=7.16.1, <8.0.0",
|
|
21
|
+
"pre-commit >=4.6.2, <5.0.0",
|
|
22
|
+
"pytest >=9.1.1, <10.0.0",
|
|
23
|
+
"pytest-asyncio >=1.4.0, <2.0.0",
|
|
24
|
+
"pytest-cov >=7.1.0, <8.0.0",
|
|
25
|
+
]
|
|
26
|
+
|
|
27
|
+
[[tool.uv.index]]
|
|
28
|
+
name = "artifactory"
|
|
29
|
+
url = "https://artifactory.chrobinson.com/artifactory/api/pypi/pypi/simple"
|
|
30
|
+
priority = "default"
|
|
31
|
+
|
|
32
|
+
[tool.coverage.report]
|
|
33
|
+
omit = [
|
|
34
|
+
"*site-packages*",
|
|
35
|
+
"*tests*",
|
|
36
|
+
"*.tox*",
|
|
37
|
+
]
|
|
38
|
+
show_missing = true
|
|
39
|
+
exclude_lines = [
|
|
40
|
+
"raise NotImplementedError",
|
|
41
|
+
"pragma: no-coverage",
|
|
42
|
+
]
|
|
43
|
+
|
|
44
|
+
[tool.pytest.ini_options]
|
|
45
|
+
norecursedirs = [
|
|
46
|
+
".*",
|
|
47
|
+
"build",
|
|
48
|
+
"dist",
|
|
49
|
+
"{arch}",
|
|
50
|
+
"*.egg",
|
|
51
|
+
"venv",
|
|
52
|
+
"requirements*",
|
|
53
|
+
"lib",
|
|
54
|
+
]
|
|
55
|
+
python_files = "test*.py"
|
|
56
|
+
|
|
57
|
+
[tool.interrogate]
|
|
58
|
+
color = true
|
|
59
|
+
exclude = [
|
|
60
|
+
"setup.py",
|
|
61
|
+
"docs",
|
|
62
|
+
"build",
|
|
63
|
+
]
|
|
64
|
+
fail-under = 95
|
|
65
|
+
ignore-init-method = true
|
|
66
|
+
ignore-init-module = false
|
|
67
|
+
ignore-magic = true
|
|
68
|
+
ignore-module = false
|
|
69
|
+
ignore-nested-classes = true
|
|
70
|
+
ignore-nested-functions = true
|
|
71
|
+
ignore-private = false
|
|
72
|
+
ignore-property-decorators = false
|
|
73
|
+
ignore-regex = [
|
|
74
|
+
"^get$",
|
|
75
|
+
"^mock_.*",
|
|
76
|
+
".*BaseClass.*",
|
|
77
|
+
]
|
|
78
|
+
ignore-semiprivate = false
|
|
79
|
+
ignore-setters = false
|
|
80
|
+
quiet = false
|
|
81
|
+
verbose = 0
|
|
82
|
+
whitelist-regex = []
|
|
83
|
+
|
|
84
|
+
[tool.ruff]
|
|
85
|
+
line-length = 88
|
|
86
|
+
respect-gitignore = true
|
|
87
|
+
|
|
88
|
+
[tool.ruff.lint]
|
|
89
|
+
select = [
|
|
90
|
+
"ANN",
|
|
91
|
+
"B",
|
|
92
|
+
"BLE",
|
|
93
|
+
"C",
|
|
94
|
+
"C90",
|
|
95
|
+
"D",
|
|
96
|
+
"E",
|
|
97
|
+
"F",
|
|
98
|
+
"I",
|
|
99
|
+
"N",
|
|
100
|
+
"NPY",
|
|
101
|
+
"PD",
|
|
102
|
+
"PGH",
|
|
103
|
+
"PLC",
|
|
104
|
+
"PLE",
|
|
105
|
+
"PLW",
|
|
106
|
+
"RUF",
|
|
107
|
+
"S",
|
|
108
|
+
"T",
|
|
109
|
+
"TCH",
|
|
110
|
+
"W",
|
|
111
|
+
]
|
|
112
|
+
ignore = [
|
|
113
|
+
"ANN002",
|
|
114
|
+
"ANN003",
|
|
115
|
+
"ANN204",
|
|
116
|
+
"ANN401",
|
|
117
|
+
"D106",
|
|
118
|
+
"D107",
|
|
119
|
+
"D200",
|
|
120
|
+
"D212",
|
|
121
|
+
"S101",
|
|
122
|
+
"S104",
|
|
123
|
+
]
|
|
124
|
+
fixable = [
|
|
125
|
+
"ANN",
|
|
126
|
+
"B",
|
|
127
|
+
"BLE",
|
|
128
|
+
"C",
|
|
129
|
+
"C90",
|
|
130
|
+
"D",
|
|
131
|
+
"E",
|
|
132
|
+
"F",
|
|
133
|
+
"I",
|
|
134
|
+
"N",
|
|
135
|
+
"NPY",
|
|
136
|
+
"PD",
|
|
137
|
+
"PGH",
|
|
138
|
+
"PL",
|
|
139
|
+
"PLC",
|
|
140
|
+
"PLE",
|
|
141
|
+
"PLW",
|
|
142
|
+
"RUF",
|
|
143
|
+
"S",
|
|
144
|
+
"T",
|
|
145
|
+
"TCH",
|
|
146
|
+
"W",
|
|
147
|
+
]
|
|
148
|
+
unfixable = []
|
|
149
|
+
dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"
|
|
150
|
+
typing-modules = [
|
|
151
|
+
"typing",
|
|
152
|
+
"types",
|
|
153
|
+
"typing_extensions",
|
|
154
|
+
]
|
|
155
|
+
|
|
156
|
+
[tool.ruff.lint.isort]
|
|
157
|
+
order-by-type = true
|
|
158
|
+
|
|
159
|
+
[tool.ruff.lint.mccabe]
|
|
160
|
+
max-complexity = 10
|
|
161
|
+
|
|
162
|
+
[tool.ruff.lint.per-file-ignores]
|
|
163
|
+
"tests/*" = [
|
|
164
|
+
"ANN001",
|
|
165
|
+
"ANN002",
|
|
166
|
+
"ANN003",
|
|
167
|
+
"ANN201",
|
|
168
|
+
"ANN202",
|
|
169
|
+
"D103",
|
|
170
|
+
"D104",
|
|
171
|
+
"PGH003",
|
|
172
|
+
"PLR0912",
|
|
173
|
+
"PLR0913",
|
|
174
|
+
"PLR0915",
|
|
175
|
+
"PLR2004",
|
|
176
|
+
"PLW0603",
|
|
177
|
+
"S101",
|
|
178
|
+
"S105",
|
|
179
|
+
"S106",
|
|
180
|
+
"TRY003",
|
|
181
|
+
"TRY201",
|
|
182
|
+
"TRY301",
|
|
183
|
+
]
|
|
184
|
+
|
|
185
|
+
[tool.ruff.lint.pydocstyle]
|
|
186
|
+
convention = "google"
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
[project]
|
|
2
|
+
authors = []
|
|
3
|
+
requires-python = ">=3.11"
|
|
4
|
+
dependencies = []
|
|
5
|
+
name = "devopstest-aiexternal-python-library"
|
|
6
|
+
version = "1.0.5"
|
|
7
|
+
description = "devopstest-aiexternal-python-library"
|
|
8
|
+
readme = "README.md"
|
|
9
|
+
|
|
10
|
+
[build-system]
|
|
11
|
+
requires = ["uv_build"]
|
|
12
|
+
build-backend = "uv_build"
|
|
13
|
+
|
|
14
|
+
[dependency-groups]
|
|
15
|
+
dev = [
|
|
16
|
+
"coverage >=7.16.1, <8.0.0",
|
|
17
|
+
"pre-commit >=4.6.2, <5.0.0",
|
|
18
|
+
"pytest >=9.1.1, <10.0.0",
|
|
19
|
+
"pytest-asyncio >=1.4.0, <2.0.0",
|
|
20
|
+
"pytest-cov >=7.1.0, <8.0.0",
|
|
21
|
+
]
|
|
22
|
+
|
|
23
|
+
[project.urls]
|
|
24
|
+
homepage = "https://github.com/ch-robinson-internal/devopstest-aiexternal-python-library"
|
|
25
|
+
repository = "https://github.com/ch-robinson-internal/devopstest-aiexternal-python-library"
|
|
26
|
+
|
|
27
|
+
[[tool.uv.index]]
|
|
28
|
+
name = "artifactory"
|
|
29
|
+
url = "https://artifactory.chrobinson.com/artifactory/api/pypi/pypi/simple"
|
|
30
|
+
priority = "default"
|
|
31
|
+
|
|
32
|
+
[tool.coverage.report]
|
|
33
|
+
omit = ["*site-packages*", "*tests*", "*.tox*"]
|
|
34
|
+
show_missing = true
|
|
35
|
+
exclude_lines = ["raise NotImplementedError", "pragma: no-coverage"]
|
|
36
|
+
|
|
37
|
+
[tool.pytest.ini_options]
|
|
38
|
+
norecursedirs = [
|
|
39
|
+
".*",
|
|
40
|
+
"build",
|
|
41
|
+
"dist",
|
|
42
|
+
"{arch}",
|
|
43
|
+
"*.egg",
|
|
44
|
+
"venv",
|
|
45
|
+
"requirements*",
|
|
46
|
+
"lib",
|
|
47
|
+
]
|
|
48
|
+
python_files = "test*.py"
|
|
49
|
+
|
|
50
|
+
[tool.interrogate]
|
|
51
|
+
color = true
|
|
52
|
+
exclude = ["setup.py", "docs", "build"]
|
|
53
|
+
fail-under = 95
|
|
54
|
+
ignore-init-method = true
|
|
55
|
+
ignore-init-module = false
|
|
56
|
+
ignore-magic = true
|
|
57
|
+
ignore-module = false
|
|
58
|
+
ignore-nested-classes = true
|
|
59
|
+
ignore-nested-functions = true
|
|
60
|
+
ignore-private = false
|
|
61
|
+
ignore-property-decorators = false
|
|
62
|
+
ignore-regex = ["^get$", "^mock_.*", ".*BaseClass.*"]
|
|
63
|
+
ignore-semiprivate = false
|
|
64
|
+
ignore-setters = false
|
|
65
|
+
quiet = false
|
|
66
|
+
verbose = 0
|
|
67
|
+
whitelist-regex = []
|
|
68
|
+
|
|
69
|
+
[tool.ruff]
|
|
70
|
+
line-length = 88
|
|
71
|
+
respect-gitignore = true
|
|
72
|
+
|
|
73
|
+
[tool.ruff.lint]
|
|
74
|
+
select = [
|
|
75
|
+
"ANN",
|
|
76
|
+
"B",
|
|
77
|
+
"BLE",
|
|
78
|
+
"C",
|
|
79
|
+
"C90",
|
|
80
|
+
"D",
|
|
81
|
+
"E",
|
|
82
|
+
"F",
|
|
83
|
+
"I",
|
|
84
|
+
"N",
|
|
85
|
+
"NPY",
|
|
86
|
+
"PD",
|
|
87
|
+
"PGH",
|
|
88
|
+
"PLC",
|
|
89
|
+
"PLE",
|
|
90
|
+
"PLW",
|
|
91
|
+
"RUF",
|
|
92
|
+
"S",
|
|
93
|
+
"T",
|
|
94
|
+
"TCH",
|
|
95
|
+
"W",
|
|
96
|
+
]
|
|
97
|
+
|
|
98
|
+
ignore = [
|
|
99
|
+
"ANN002",
|
|
100
|
+
"ANN003",
|
|
101
|
+
"ANN204",
|
|
102
|
+
"ANN401",
|
|
103
|
+
"D106",
|
|
104
|
+
"D107",
|
|
105
|
+
"D200",
|
|
106
|
+
"D212",
|
|
107
|
+
"S101",
|
|
108
|
+
"S104",
|
|
109
|
+
]
|
|
110
|
+
|
|
111
|
+
fixable = [
|
|
112
|
+
"ANN",
|
|
113
|
+
"B",
|
|
114
|
+
"BLE",
|
|
115
|
+
"C",
|
|
116
|
+
"C90",
|
|
117
|
+
"D",
|
|
118
|
+
"E",
|
|
119
|
+
"F",
|
|
120
|
+
"I",
|
|
121
|
+
"N",
|
|
122
|
+
"NPY",
|
|
123
|
+
"PD",
|
|
124
|
+
"PGH",
|
|
125
|
+
"PL",
|
|
126
|
+
"PLC",
|
|
127
|
+
"PLE",
|
|
128
|
+
"PLW",
|
|
129
|
+
"RUF",
|
|
130
|
+
"S",
|
|
131
|
+
"T",
|
|
132
|
+
"TCH",
|
|
133
|
+
"W",
|
|
134
|
+
]
|
|
135
|
+
unfixable = []
|
|
136
|
+
|
|
137
|
+
# Allow unused variables when underscore-prefixed.
|
|
138
|
+
dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"
|
|
139
|
+
|
|
140
|
+
typing-modules = [
|
|
141
|
+
"typing",
|
|
142
|
+
"types",
|
|
143
|
+
"typing_extensions",
|
|
144
|
+
]
|
|
145
|
+
|
|
146
|
+
[tool.ruff.lint.isort]
|
|
147
|
+
order-by-type = true
|
|
148
|
+
|
|
149
|
+
[tool.ruff.lint.mccabe]
|
|
150
|
+
max-complexity = 10
|
|
151
|
+
|
|
152
|
+
[tool.ruff.lint.per-file-ignores]
|
|
153
|
+
"tests/*" = [
|
|
154
|
+
"ANN001",
|
|
155
|
+
"ANN002",
|
|
156
|
+
"ANN003",
|
|
157
|
+
"ANN201",
|
|
158
|
+
"ANN202",
|
|
159
|
+
"D103",
|
|
160
|
+
"D104",
|
|
161
|
+
"PGH003",
|
|
162
|
+
"PLR0912",
|
|
163
|
+
"PLR0913",
|
|
164
|
+
"PLR0915",
|
|
165
|
+
"PLR2004",
|
|
166
|
+
"PLW0603",
|
|
167
|
+
"S101",
|
|
168
|
+
"S105",
|
|
169
|
+
"S106",
|
|
170
|
+
"TRY003",
|
|
171
|
+
"TRY201",
|
|
172
|
+
"TRY301",
|
|
173
|
+
]
|
|
174
|
+
|
|
175
|
+
[tool.ruff.lint.pydocstyle]
|
|
176
|
+
convention = "google"
|