fluidattacks_integrates_dal 3.0.0__tar.gz → 3.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.
Files changed (32) hide show
  1. fluidattacks_integrates_dal-3.0.1/.envrc +2 -0
  2. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/PKG-INFO +2 -2
  3. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/flake.lock +12 -12
  4. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/flake.nix +1 -1
  5. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/fluidattacks_integrates_dal/__init__.py +1 -1
  6. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/pyproject.toml +2 -2
  7. fluidattacks_integrates_dal-3.0.1/ruff.toml +58 -0
  8. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/uv.lock +13 -45
  9. fluidattacks_integrates_dal-3.0.0/.envrc +0 -2
  10. fluidattacks_integrates_dal-3.0.0/ruff.toml +0 -45
  11. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/build/default.nix +0 -0
  12. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/build/filter.nix +0 -0
  13. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/fluidattacks_integrates_dal/_cli.py +0 -0
  14. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/fluidattacks_integrates_dal/_logger.py +0 -0
  15. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/fluidattacks_integrates_dal/_typing.py +0 -0
  16. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/fluidattacks_integrates_dal/client.py +0 -0
  17. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/fluidattacks_integrates_dal/clients/__init__.py +0 -0
  18. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/fluidattacks_integrates_dal/clients/group/__init__.py +0 -0
  19. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/fluidattacks_integrates_dal/clients/organization/__init__.py +0 -0
  20. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/fluidattacks_integrates_dal/clients/out_of_scope/__init__.py +0 -0
  21. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/fluidattacks_integrates_dal/core.py +0 -0
  22. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/fluidattacks_integrates_dal/list_groups.py +0 -0
  23. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/fluidattacks_integrates_dal/py.typed +0 -0
  24. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/fluidattacks_integrates_dal/utils.py +0 -0
  25. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/mypy.ini +0 -0
  26. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/tests/__init__.py +0 -0
  27. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/tests/arch/__init__.py +0 -0
  28. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/tests/arch/arch.py +0 -0
  29. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/tests/arch/test_arch.py +0 -0
  30. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/tests/py.typed +0 -0
  31. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/tests/test_core.py +0 -0
  32. {fluidattacks_integrates_dal-3.0.0 → fluidattacks_integrates_dal-3.0.1}/tests/test_list_groups.py +0 -0
@@ -0,0 +1,2 @@
1
+ ln -f ../mypy.ini ./mypy.ini
2
+ use_flake ".#python313.devShell"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fluidattacks_integrates_dal
3
- Version: 3.0.0
3
+ Version: 3.0.1
4
4
  Summary: ASM Synchronous Data Access Layer
5
5
  Author-email: Engineering Team <development@fluidattacks.com>
6
6
  Requires-Python: >=3.13.14, <3.14
@@ -8,6 +8,6 @@ Classifier: License :: OSI Approved :: MIT License
8
8
  Requires-Dist: boto3 >=1.40.53, <2.0.0
9
9
  Requires-Dist: click >=8.1.7, <9.0.0
10
10
  Requires-Dist: fa-purity >=2.5.2, <3.0.0
11
- Requires-Dist: fluidattacks-etl-utils >=5.1.0, <6.0.0
11
+ Requires-Dist: fluidattacks-etl-utils >=5.1.0, <8.0.0
12
12
  Requires-Dist: fluidattacks-utils-logger >=3.0.5, <4.0.0
13
13
  Requires-Dist: mypy-boto3-dynamodb >=1.40.40, <2.0.0
@@ -206,18 +206,18 @@
206
206
  "uv2nix": "uv2nix_2"
207
207
  },
208
208
  "locked": {
209
- "dir": "common/utils/python-builder",
210
- "lastModified": 1787753967,
211
- "narHash": "sha256-1kWAiANGMA4B9flxHFj73EwvOpF8r0nXGg1RVXNKPK8=",
209
+ "dir": "develops/utils/python-builder",
210
+ "lastModified": 1793317305,
211
+ "narHash": "sha256-Fib0dOCrgVRbg8rweiOayunztGkQeShPJIaDiJjxyNw=",
212
212
  "ref": "refs/heads/trunk",
213
- "rev": "2490a24f91f075f7580cd0b9df5bc01dbc467a50",
213
+ "rev": "c08ac98b3d84d5858fe1d64c837df02c9db1ae04",
214
214
  "shallow": true,
215
215
  "type": "git",
216
216
  "url": "ssh://git@gitlab.com/fluidattacks/universe"
217
217
  },
218
218
  "original": {
219
- "dir": "common/utils/python-builder",
220
- "rev": "2490a24f91f075f7580cd0b9df5bc01dbc467a50",
219
+ "dir": "develops/utils/python-builder",
220
+ "rev": "c08ac98b3d84d5858fe1d64c837df02c9db1ae04",
221
221
  "shallow": true,
222
222
  "type": "git",
223
223
  "url": "ssh://git@gitlab.com/fluidattacks/universe"
@@ -238,18 +238,18 @@
238
238
  ]
239
239
  },
240
240
  "locked": {
241
- "dir": "common/utils/shell-helpers",
242
- "lastModified": 1787145059,
243
- "narHash": "sha256-i5i+qLR9JhcNasrQvzG4S/0AotpZAqTHXa4/68MmvwA=",
241
+ "dir": "develops/utils/shell-helpers",
242
+ "lastModified": 1793311103,
243
+ "narHash": "sha256-kt32aGdMaZGxD0MS9Giqst8leP83IgYUppCNZQy+vo8=",
244
244
  "ref": "refs/heads/trunk",
245
- "rev": "e0d58302690af6f38b7544265e59c625b63df76f",
245
+ "rev": "3747456d06ecbfe0523e68f4841a536e7a4b3c88",
246
246
  "shallow": true,
247
247
  "type": "git",
248
248
  "url": "ssh://git@gitlab.com/fluidattacks/universe"
249
249
  },
250
250
  "original": {
251
- "dir": "common/utils/shell-helpers",
252
- "rev": "e0d58302690af6f38b7544265e59c625b63df76f",
251
+ "dir": "develops/utils/shell-helpers",
252
+ "rev": "3747456d06ecbfe0523e68f4841a536e7a4b3c88",
253
253
  "shallow": true,
254
254
  "type": "git",
255
255
  "url": "ssh://git@gitlab.com/fluidattacks/universe"
@@ -4,7 +4,7 @@
4
4
  inputs = {
5
5
  nixpkgs.url = "github:nixos/nixpkgs/2f5a153c270b70cb0f8c11f46d96d6d3bc39f4e3";
6
6
  python_builder = {
7
- url = "git+ssh://git@gitlab.com/fluidattacks/universe?shallow=1&rev=2490a24f91f075f7580cd0b9df5bc01dbc467a50&dir=common/utils/python-builder";
7
+ url = "git+ssh://git@gitlab.com/fluidattacks/universe?shallow=1&rev=c08ac98b3d84d5858fe1d64c837df02c9db1ae04&dir=develops/utils/python-builder";
8
8
  inputs.nixpkgs_flake.follows = "nixpkgs";
9
9
  };
10
10
  };
@@ -6,6 +6,6 @@ from ._logger import (
6
6
  set_logger,
7
7
  )
8
8
 
9
- __version__ = "3.0.0"
9
+ __version__ = "3.0.1"
10
10
 
11
11
  Unsafe.compute(set_logger(__name__, __version__))
@@ -11,7 +11,7 @@ dependencies = [
11
11
  "boto3 >=1.40.53, <2.0.0",
12
12
  "click >=8.1.7, <9.0.0",
13
13
  "fa-purity >=2.5.2, <3.0.0",
14
- "fluidattacks-etl-utils >=5.1.0, <6.0.0",
14
+ "fluidattacks-etl-utils >=5.1.0, <8.0.0",
15
15
  "fluidattacks-utils-logger >=3.0.5, <4.0.0",
16
16
  "mypy-boto3-dynamodb >=1.40.40, <2.0.0",
17
17
  ]
@@ -39,4 +39,4 @@ dev = [
39
39
 
40
40
  [tool.uv]
41
41
  exclude-newer = "7 days"
42
- exclude-newer-package = { fluidattacks-core = "2099-01-02T00:00:00Z", fluid-blends = "2099-01-02T00:00:00Z" , fluidattacks-utils-logger = "2099-01-02T00:00:00Z" }
42
+ exclude-newer-package = { fluidattacks-core = "2099-01-02T00:00:00Z", fluid-blends = "2099-01-02T00:00:00Z" , fluidattacks-utils-logger = "2099-01-02T00:00:00Z", fluidattacks-etl-utils = "2099-01-02T00:00:00Z", certifi = "2026-10-21T00:00:00Z" }
@@ -0,0 +1,58 @@
1
+ cache-dir = ".ruff_cache"
2
+ line-length = 100
3
+ indent-width = 4
4
+ target-version = "py313"
5
+
6
+ [lint]
7
+ preview = true
8
+ explicit-preview-rules = true
9
+ select = ["ALL"]
10
+ extend-select = ["PLR1702", "PLR0916"]
11
+ ignore = [
12
+ "RET503", # raises false positives
13
+ "N818", # semantics on names, the type already has the semantics
14
+ "FLY002", # f-string is not type safe: implicit str conversion can hide codification issues
15
+ "D203", # conflict with D211 one must be ignored
16
+ "D212", # conflict with D213 one must be ignored
17
+ "TC001", # import cycles can be hidden
18
+ "FBT001", # see FBT00*_reason.md
19
+ "FBT002", # see FBT00*_reason.md
20
+ "FBT003", # see FBT00*_reason.md
21
+ "D100", # project convention
22
+ "D101", # project convention
23
+ "D102", # project convention
24
+ "D103", # project convention
25
+ "D104", # project convention
26
+ "D105", # project convention
27
+ ]
28
+
29
+ fixable = ["ALL"]
30
+ unfixable = []
31
+ dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"
32
+
33
+ [lint.per-file-ignores]
34
+ "tests/**/*" = ["S101", "D100", "D103", "D104"]
35
+ "tests_fx/**/*" = ["S101", "D100", "D103", "D104"]
36
+
37
+ [format]
38
+ quote-style = "double"
39
+ indent-style = "space"
40
+ skip-magic-trailing-comma = false
41
+ line-ending = "lf"
42
+
43
+ [lint.mccabe]
44
+ max-complexity = 8
45
+
46
+ [lint.pylint]
47
+ max-branches = 8
48
+ max-nested-blocks = 4
49
+ max-statements = 25
50
+ max-bool-expr = 5
51
+
52
+ [lint.flake8-tidy-imports.banned-api]
53
+ "typing.cast".msg = "'cast' usage evades type checker."
54
+ "typing.Any".msg = "The 'any' type is like not having a type annotation."
55
+ "importlib.__import__".msg = "Dynamic imports are restricted. Use standard import statements to ensure static analysis tools can track dependencies."
56
+ "importlib.import_module".msg = "Dynamic imports are restricted. Use standard import statements to ensure static analysis tools can track dependencies."
57
+ "importlib.util".msg = "Spec-based loading is a dynamic import. Use standard import statements to ensure static analysis tools can track dependencies."
58
+ "importlib.machinery".msg = "Loaders perform dynamic imports. Use standard import statements to ensure static analysis tools can track dependencies."
@@ -7,9 +7,11 @@ exclude-newer = "0001-01-01T00:00:00Z" # This has no effect and is included for
7
7
  exclude-newer-span = "P7D"
8
8
 
9
9
  [options.exclude-newer-package]
10
- fluid-blends = "2099-01-02T00:00:00Z"
11
10
  fluidattacks-utils-logger = "2099-01-02T00:00:00Z"
11
+ fluidattacks-etl-utils = "2099-01-02T00:00:00Z"
12
+ certifi = "2026-10-21T00:00:00Z"
12
13
  fluidattacks-core = "2099-01-02T00:00:00Z"
14
+ fluid-blends = "2099-01-02T00:00:00Z"
13
15
 
14
16
  [[package]]
15
17
  name = "arch-lint"
@@ -90,11 +92,11 @@ wheels = [
90
92
 
91
93
  [[package]]
92
94
  name = "certifi"
93
- version = "2026.6.17"
95
+ version = "2026.10.19"
94
96
  source = { registry = "https://pypi.org/simple" }
95
- sdist = { url = "https://files.pythonhosted.org/packages/c9/c7/424b75da314c1045981bd9777432fad05a9e0c69daa4ed7e308bbaffe405/certifi-2026.6.17.tar.gz", hash = "sha256:024c88eeec92ca068db80f02b8b07c9cef7b9fe261d1d535abfd5abd6f6af432", size = 134594, upload-time = "2026-06-17T10:31:07.894Z" }
97
+ sdist = { url = "https://files.pythonhosted.org/packages/a6/bd/1436c50cc46699de0230fbaacc1d1de7bfec413176099949e9d5112e88f2/certifi-2026.10.19.tar.gz", hash = "sha256:035c1e85572b141bf1c3a3eff0e33a8eb74917522f2559075ff8d2fea780a1ae", size = 137598, upload-time = "2026-10-20T02:24:16.604Z" }
96
98
  wheels = [
97
- { url = "https://files.pythonhosted.org/packages/ef/2f/c5464532e965badff2f4c4c1a3a83f5697f0d7c407ed0cda44aaa99bb451/certifi-2026.6.17-py3-none-any.whl", hash = "sha256:2227dcbaafe0d2f59279d1762ddddc37783ed4354594f194ffc31d20f41fc3db", size = 133289, upload-time = "2026-06-17T10:31:06.348Z" },
99
+ { url = "https://files.pythonhosted.org/packages/c4/51/29046e48f693c54e5b7412216d447a1d8362c9653148d98c02cdf65fa733/certifi-2026.10.19-py3-none-any.whl", hash = "sha256:42d35340cc5b9ba78e818ddbff0c5b1c2b779de448a340fd1b989f5fa8670e1b", size = 136464, upload-time = "2026-10-20T02:24:15.072Z" },
98
100
  ]
99
101
 
100
102
  [[package]]
@@ -211,19 +213,18 @@ wheels = [
211
213
 
212
214
  [[package]]
213
215
  name = "fluidattacks-etl-utils"
214
- version = "5.1.1"
216
+ version = "7.0.0"
215
217
  source = { registry = "https://pypi.org/simple" }
216
218
  dependencies = [
217
219
  { name = "fa-purity" },
218
- { name = "gitpython" },
219
220
  { name = "pathos" },
220
221
  { name = "python-dateutil" },
221
222
  { name = "redshift-client" },
222
223
  { name = "requests" },
223
224
  ]
224
- sdist = { url = "https://files.pythonhosted.org/packages/3c/46/d86b3bfffe0c1d0942e94dbd6f29025d567b99e810fb8673cb7ab8b01cca/fluidattacks_etl_utils-5.1.1.tar.gz", hash = "sha256:dd344c4f43c166e01600887818f6c00d324d2d267e072090bd7d895e14e017d0", size = 71736, upload-time = "2026-06-23T17:06:16.432Z" }
225
+ sdist = { url = "https://files.pythonhosted.org/packages/57/2d/6cf4161cc9eb2f621355f33facb33e9adacbcd1296976827336e3cca11ec/fluidattacks_etl_utils-7.0.0.tar.gz", hash = "sha256:c9ba2415aac0b3e5e9abb31a6b7ad2ac6c2cccc2f3685c7d8d812bfc6aed46de", size = 40834, upload-time = "2026-11-03T20:52:55.916Z" }
225
226
  wheels = [
226
- { url = "https://files.pythonhosted.org/packages/aa/04/d835d18c9b9daa0bd1acf8ea3d55636af05da679465f449ba186ff9b91ba/fluidattacks_etl_utils-5.1.1-py3-none-any.whl", hash = "sha256:ca42d381bfa917c9a7fbac7b70b03c2676a52f3ebd5ca5ecc4256ba86197d3af", size = 15795, upload-time = "2026-06-23T17:06:15.492Z" },
227
+ { url = "https://files.pythonhosted.org/packages/24/99/df5b430d30be70f30366db4178f39ec328642d7b27c50f4a7c6f98791301/fluidattacks_etl_utils-7.0.0-py3-none-any.whl", hash = "sha256:70e75e2d1cfbb2ff7382143481cbda4c38a09adacf498a23620599917e04bf03", size = 16805, upload-time = "2026-11-03T20:52:54.98Z" },
227
228
  ]
228
229
 
229
230
  [[package]]
@@ -255,7 +256,7 @@ requires-dist = [
255
256
  { name = "boto3", specifier = ">=1.40.53,<2.0.0" },
256
257
  { name = "click", specifier = ">=8.1.7,<9.0.0" },
257
258
  { name = "fa-purity", specifier = ">=2.5.2,<3.0.0" },
258
- { name = "fluidattacks-etl-utils", specifier = ">=5.1.0,<6.0.0" },
259
+ { name = "fluidattacks-etl-utils", specifier = ">=5.1.0,<8.0.0" },
259
260
  { name = "fluidattacks-utils-logger", specifier = ">=3.0.5,<4.0.0" },
260
261
  { name = "mypy-boto3-dynamodb", specifier = ">=1.40.40,<2.0.0" },
261
262
  ]
@@ -286,30 +287,6 @@ wheels = [
286
287
  { url = "https://files.pythonhosted.org/packages/c1/4c/aa86d7cf01d83d8d131566bc67a6b155e49678be5e72037f29548a403e47/fluidattacks_utils_logger-3.0.7-py3-none-any.whl", hash = "sha256:e3ce2ea1d416b6ba33d827ec9fc5e33e1a0f09e3ed5d63c87c7dfa29432a6543", size = 3835, upload-time = "2026-08-20T20:20:05.311Z" },
287
288
  ]
288
289
 
289
- [[package]]
290
- name = "gitdb"
291
- version = "4.0.12"
292
- source = { registry = "https://pypi.org/simple" }
293
- dependencies = [
294
- { name = "smmap" },
295
- ]
296
- sdist = { url = "https://files.pythonhosted.org/packages/72/94/63b0fc47eb32792c7ba1fe1b694daec9a63620db1e313033d18140c2320a/gitdb-4.0.12.tar.gz", hash = "sha256:5ef71f855d191a3326fcfbc0d5da835f26b13fbcba60c32c21091c349ffdb571", size = 394684, upload-time = "2025-01-02T07:20:46.413Z" }
297
- wheels = [
298
- { url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl", hash = "sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf", size = 62794, upload-time = "2025-01-02T07:20:43.624Z" },
299
- ]
300
-
301
- [[package]]
302
- name = "gitpython"
303
- version = "3.1.58"
304
- source = { registry = "https://pypi.org/simple" }
305
- dependencies = [
306
- { name = "gitdb" },
307
- ]
308
- sdist = { url = "https://files.pythonhosted.org/packages/26/d6/5f358ff283325580c2003a6d953aea18cfe10ae87b46f5ebc80fa3a386dc/gitpython-3.1.58.tar.gz", hash = "sha256:621416df10ef3fd0e19fabf9172ddeed0fa704d353d04f194eec56a625a95b22", size = 228498, upload-time = "2026-08-04T15:05:49.47Z" }
309
- wheels = [
310
- { url = "https://files.pythonhosted.org/packages/ec/0c/9d8752098bc442f0726e64aa6135940b3a96809915d1aa4206c1bb97881d/gitpython-3.1.58-py3-none-any.whl", hash = "sha256:d331e722577f0fd7fc1f857419b3ecc07af66282b933d2a4d95f84a042fdd50f", size = 220183, upload-time = "2026-08-04T15:05:48.025Z" },
311
- ]
312
-
313
290
  [[package]]
314
291
  name = "grimp"
315
292
  version = "2.5"
@@ -679,15 +656,6 @@ wheels = [
679
656
  { url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl", hash = "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274", size = 11050, upload-time = "2024-12-04T17:35:26.475Z" },
680
657
  ]
681
658
 
682
- [[package]]
683
- name = "smmap"
684
- version = "5.0.3"
685
- source = { registry = "https://pypi.org/simple" }
686
- sdist = { url = "https://files.pythonhosted.org/packages/1f/ea/49c993d6dfdd7338c9b1000a0f36817ed7ec84577ae2e52f890d1a4ff909/smmap-5.0.3.tar.gz", hash = "sha256:4d9debb8b99007ae47165abc08670bd74cb74b5227dda7f643eccc4e9eb5642c", size = 22506, upload-time = "2026-03-09T03:43:26.1Z" }
687
- wheels = [
688
- { url = "https://files.pythonhosted.org/packages/c1/d4/59e74daffcb57a07668852eeeb6035af9f32cbfd7a1d2511f17d2fe6a738/smmap-5.0.3-py3-none-any.whl", hash = "sha256:c106e05d5a61449cf6ba9a1e650227ecfb141590d2a98412103ff35d89fc7b2f", size = 24390, upload-time = "2026-03-09T03:43:24.361Z" },
689
- ]
690
-
691
659
  [[package]]
692
660
  name = "types-awscrt"
693
661
  version = "0.34.1"
@@ -717,11 +685,11 @@ wheels = [
717
685
 
718
686
  [[package]]
719
687
  name = "urllib3"
720
- version = "2.7.0"
688
+ version = "2.8.0"
721
689
  source = { registry = "https://pypi.org/simple" }
722
- sdist = { url = "https://files.pythonhosted.org/packages/53/0c/06f8b233b8fd13b9e5ee11424ef85419ba0d8ba0b3138bf360be2ff56953/urllib3-2.7.0.tar.gz", hash = "sha256:231e0ec3b63ceb14667c67be60f2f2c40a518cb38b03af60abc813da26505f4c", size = 433602, upload-time = "2026-05-07T16:13:18.596Z" }
690
+ sdist = { url = "https://files.pythonhosted.org/packages/e3/05/b17359e1cefb4f909b5e40b1b90a496d987258916dbbf88e842c729f510e/urllib3-2.8.0.tar.gz", hash = "sha256:63bf2ead4c879426ebf22ef2a781eeb4aa3b4ae798a0435506f8687fd5bb9b63", size = 458972, upload-time = "2026-09-15T19:29:36.253Z" }
723
691
  wheels = [
724
- { url = "https://files.pythonhosted.org/packages/7f/3e/5db95bcf282c52709639744ca2a8b149baccf648e39c8cc87553df9eae0c/urllib3-2.7.0-py3-none-any.whl", hash = "sha256:9fb4c81ebbb1ce9531cce37674bbc6f1360472bc18ca9a553ede278ef7276897", size = 131087, upload-time = "2026-05-07T16:13:17.151Z" },
692
+ { url = "https://files.pythonhosted.org/packages/92/9d/c4e665119135114480843e7ab388fa94d8480650450e6f8e26b70d323a4c/urllib3-2.8.0-py3-none-any.whl", hash = "sha256:0cf3cae568d36aa9576b28dfb35f11328f1cb974ca7647d9475ebb86c75ac6e3", size = 135717, upload-time = "2026-09-15T19:29:34.577Z" },
725
693
  ]
726
694
 
727
695
  [[package]]
@@ -1,2 +0,0 @@
1
- ln -f ../mypy.ini ./mypy.ini
2
- use_flake ".#python311.devShell"
@@ -1,45 +0,0 @@
1
- cache-dir = ".ruff_cache"
2
- line-length = 100
3
- indent-width = 4
4
- target-version = "py313"
5
-
6
- [lint]
7
- preview = true
8
- explicit-preview-rules = true
9
- select = ["ALL"]
10
- extend-select = ["PLR1702", "PLR0916"]
11
- ignore = [
12
- "FBT003", # conflict with the convention of denying kwargs
13
- "TC001", # import cycles can be hidden
14
- "TC002", # import cycles can be hidden
15
- "TC003", # improves performance; technical debt!
16
- "FLY002", # f-string is not type safe: implicit str conversion can hide codification issues
17
- "D203", # conflict with D211 one must be ignored
18
- "D212", # conflict with D213 one must be ignored
19
- "D104", # missing docs; technical debt!
20
- "D103", # missing docs; technical debt!
21
- "D101", # missing docs; technical debt!
22
- "D100", # missing docs; technical debt!
23
- "D102", # missing docs; technical debt!
24
- ]
25
- fixable = ["I001", "COM812", "RUF022", "D300"]
26
- unfixable = []
27
- dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"
28
-
29
- [lint.per-file-ignores]
30
- "tests/**/*" = ["S101"]
31
-
32
- [format]
33
- quote-style = "double"
34
- indent-style = "space"
35
- skip-magic-trailing-comma = false
36
- line-ending = "lf"
37
-
38
- [lint.mccabe]
39
- max-complexity = 8
40
-
41
- [lint.pylint]
42
- max-branches = 8
43
- max-nested-blocks = 4
44
- max-statements = 25
45
- max-bool-expr = 5