fluentmap 0.1.0__tar.gz → 0.1.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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: fluentmap
3
- Version: 0.1.0
3
+ Version: 0.1.1
4
4
  Summary: A drop-in Python map replacement featuring parallel and batch processing.
5
5
  Author: leavers
6
6
  Author-Email: Leavers <leavers930@gmail.com>
@@ -15,6 +15,9 @@ Classifier: Programming Language :: Python :: 3.9
15
15
  Classifier: Programming Language :: Python :: 3.10
16
16
  Classifier: Programming Language :: Python :: 3.11
17
17
  Classifier: Programming Language :: Python :: 3.12
18
+ Classifier: Programming Language :: Python :: 3.13
19
+ Classifier: Programming Language :: Python :: 3.14
20
+ Classifier: Programming Language :: Python :: 3.15
18
21
  Classifier: Topic :: Software Development
19
22
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
20
23
  Classifier: Topic :: Utilities
@@ -39,6 +42,9 @@ processing.
39
42
 
40
43
  ## Installation
41
44
 
45
+ Fluentmap requires Python 3.8 or newer, has no runtime dependencies, and is tested
46
+ on CPython 3.8-3.15, including the free-threaded builds (3.13t-3.15t).
47
+
42
48
  Fluentmap is available on [PyPI](https://pypi.org/project/fluentmap/):
43
49
 
44
50
  ```shell
@@ -16,6 +16,9 @@ processing.
16
16
 
17
17
  ## Installation
18
18
 
19
+ Fluentmap requires Python 3.8 or newer, has no runtime dependencies, and is tested
20
+ on CPython 3.8-3.15, including the free-threaded builds (3.13t-3.15t).
21
+
19
22
  Fluentmap is available on [PyPI](https://pypi.org/project/fluentmap/):
20
23
 
21
24
  ```shell
@@ -26,7 +26,7 @@ from typing import (
26
26
  runtime_checkable,
27
27
  )
28
28
 
29
- __version__ = "0.1.0"
29
+ __version__ = "0.1.1"
30
30
  __all__ = ("Arguments", "map")
31
31
 
32
32
 
@@ -293,14 +293,14 @@ def _concurrent_chunk_map(
293
293
  break
294
294
 
295
295
  i, raw_result_chunk = pair
296
- results: List[Tuple[Union[T, BaseException], bool]] = []
296
+ results: List[Tuple[Union[T, R, BaseException], bool]] = []
297
297
  for raw_result, is_exc in raw_result_chunk:
298
298
  if is_exc:
299
299
  results.append((raw_result, True))
300
300
  continue
301
301
  try:
302
- new_result = on_return(raw_result) # type: ignore[arg-type]
303
- results.append((new_result, False)) # type: ignore[arg-type]
302
+ new_result = on_return(cast(T, raw_result))
303
+ results.append((new_result, False))
304
304
  except BaseException as exc:
305
305
  results.append((exc, True))
306
306
  del exc
@@ -517,7 +517,7 @@ def _concurrent_map(
517
517
 
518
518
  i, raw_result = pair
519
519
  try:
520
- result = on_return(raw_result) # type: ignore[misc]
520
+ result = on_return(raw_result)
521
521
  outqueue.put((i, result, False))
522
522
  except BaseException as exc:
523
523
  outqueue.put((i, exc, True))
@@ -740,7 +740,7 @@ def map(
740
740
  *more_args,
741
741
  batch_size=batch_size,
742
742
  num_prepare=num_prepare,
743
- on_return=on_return, # type: ignore[arg-type]
743
+ on_return=on_return,
744
744
  )
745
745
 
746
746
  if chunk_size is None or chunk_size <= 1:
@@ -752,7 +752,7 @@ def map(
752
752
  batch_size=batch_size,
753
753
  num_prepare=num_prepare,
754
754
  sort_by_completion=sort_by_completion,
755
- on_return=on_return, # type: ignore[arg-type]
755
+ on_return=on_return,
756
756
  )
757
757
  return _concurrent_chunk_map(
758
758
  fn,
@@ -763,5 +763,5 @@ def map(
763
763
  chunk_size=chunk_size,
764
764
  num_prepare=num_prepare,
765
765
  sort_by_completion=sort_by_completion,
766
- on_return=on_return, # type: ignore[arg-type]
766
+ on_return=on_return,
767
767
  )
@@ -16,6 +16,9 @@ classifiers = [
16
16
  "Programming Language :: Python :: 3.10",
17
17
  "Programming Language :: Python :: 3.11",
18
18
  "Programming Language :: Python :: 3.12",
19
+ "Programming Language :: Python :: 3.13",
20
+ "Programming Language :: Python :: 3.14",
21
+ "Programming Language :: Python :: 3.15",
19
22
  "Topic :: Software Development",
20
23
  "Topic :: Software Development :: Libraries :: Python Modules",
21
24
  "Topic :: Utilities",
@@ -24,7 +27,7 @@ dependencies = []
24
27
  requires-python = ">=3.8"
25
28
  readme = "README.md"
26
29
  dynamic = []
27
- version = "0.1.0"
30
+ version = "0.1.1"
28
31
 
29
32
  [project.license]
30
33
  text = "MIT"
@@ -50,14 +53,6 @@ excludes = [
50
53
  source = "file"
51
54
  path = "fluentmap.py"
52
55
 
53
- [tool.autoflake]
54
- in-place = true
55
- recursive = true
56
- remove-all-unused-imports = true
57
- ignore-init-module-imports = true
58
- remove-duplicate-keys = true
59
- remove-unused-variables = true
60
-
61
56
  [tool.coverage.run]
62
57
  branch = true
63
58
  source = [
@@ -74,21 +69,25 @@ exclude_lines = [
74
69
  [tool.ruff]
75
70
  line-length = 88
76
71
 
77
- [tool.mypy]
78
- check_untyped_defs = true
79
- follow_imports = "error"
80
- ignore_missing_imports = true
81
- show_error_codes = true
82
- warn_unused_configs = true
72
+ [tool.ruff.lint]
73
+ select = [
74
+ "F401",
75
+ "F841",
76
+ "F601",
77
+ ]
78
+
79
+ [tool.ruff.lint.per-file-ignores]
80
+ "__init__.py" = [
81
+ "F401",
82
+ ]
83
83
 
84
84
  [tool.pytest.ini_options]
85
85
  asyncio_mode = "strict"
86
86
 
87
87
  [dependency-groups]
88
88
  dev = [
89
- "autoflake>=2.3.1",
90
89
  "coverage[toml]>=7.6.1",
91
- "mypy>=1.11.1",
90
+ "ty>=0.0.91",
92
91
  "nox>=2024.4.15",
93
92
  "pytest>=8.3.2",
94
93
  "pytest-asyncio>=0.23.8",
@@ -96,5 +95,5 @@ dev = [
96
95
  "pytest-mock>=3.14.0",
97
96
  "pytest-timeout>=2.3.1",
98
97
  "ruff>=0.6.1",
99
- "rtoml>=0.11.0",
98
+ "tomli>=2.0.1",
100
99
  ]
File without changes