caption-flow 0.3.4__tar.gz → 0.4.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.
Files changed (61) hide show
  1. {caption_flow-0.3.4/src/caption_flow.egg-info → caption_flow-0.4.0}/PKG-INFO +5 -4
  2. {caption_flow-0.3.4 → caption_flow-0.4.0}/pyproject.toml +10 -5
  3. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow/__init__.py +3 -3
  4. caption_flow-0.4.0/src/caption_flow/cli.py +1561 -0
  5. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow/models.py +45 -3
  6. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow/monitor.py +2 -3
  7. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow/orchestrator.py +153 -104
  8. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow/processors/base.py +8 -7
  9. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow/processors/huggingface.py +439 -67
  10. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow/processors/local_filesystem.py +24 -28
  11. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow/processors/webdataset.py +28 -22
  12. caption_flow-0.4.0/src/caption_flow/storage/exporter.py +631 -0
  13. caption_flow-0.4.0/src/caption_flow/storage/manager.py +1047 -0
  14. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow/utils/auth.py +1 -1
  15. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow/utils/caption_utils.py +1 -1
  16. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow/utils/certificates.py +15 -8
  17. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow/utils/checkpoint_tracker.py +30 -28
  18. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow/utils/chunk_tracker.py +153 -56
  19. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow/utils/image_processor.py +9 -9
  20. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow/utils/json_utils.py +37 -20
  21. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow/utils/prompt_template.py +24 -16
  22. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow/utils/vllm_config.py +5 -4
  23. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow/viewer.py +4 -12
  24. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow/workers/base.py +5 -4
  25. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow/workers/caption.py +265 -90
  26. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow/workers/data.py +6 -8
  27. {caption_flow-0.3.4 → caption_flow-0.4.0/src/caption_flow.egg-info}/PKG-INFO +5 -4
  28. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow.egg-info/SOURCES.txt +21 -1
  29. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow.egg-info/requires.txt +3 -1
  30. caption_flow-0.4.0/tests/test_caption_utils.py +394 -0
  31. caption_flow-0.4.0/tests/test_certificates.py +374 -0
  32. caption_flow-0.4.0/tests/test_cli.py +523 -0
  33. caption_flow-0.4.0/tests/test_config_reload.py +244 -0
  34. caption_flow-0.4.0/tests/test_duplicate_job_assignments.py +1696 -0
  35. caption_flow-0.4.0/tests/test_exporter.py +509 -0
  36. caption_flow-0.4.0/tests/test_fix_verification.py +367 -0
  37. caption_flow-0.4.0/tests/test_huggingface_ranges.py +504 -0
  38. caption_flow-0.4.0/tests/test_json_utils.py +530 -0
  39. caption_flow-0.4.0/tests/test_main.py +827 -0
  40. caption_flow-0.4.0/tests/test_monitor.py +385 -0
  41. caption_flow-0.4.0/tests/test_processors.py +1038 -0
  42. caption_flow-0.4.0/tests/test_range_level_distribution.py +734 -0
  43. caption_flow-0.4.0/tests/test_storage_components.py +329 -0
  44. caption_flow-0.4.0/tests/test_viewer.py +367 -0
  45. caption_flow-0.4.0/tests/test_vllm_config.py +484 -0
  46. caption_flow-0.4.0/tests/test_webdataset_ranges.py +1120 -0
  47. caption_flow-0.4.0/tests/test_worker_caption.py +883 -0
  48. caption_flow-0.4.0/tests/test_worker_reconnection_complete.py +572 -0
  49. caption_flow-0.4.0/tests/test_worker_reconnection_sequence.py +590 -0
  50. caption_flow-0.3.4/src/caption_flow/cli.py +0 -1042
  51. caption_flow-0.3.4/src/caption_flow/storage/exporter.py +0 -550
  52. caption_flow-0.3.4/src/caption_flow/storage/manager.py +0 -1167
  53. {caption_flow-0.3.4 → caption_flow-0.4.0}/LICENSE +0 -0
  54. {caption_flow-0.3.4 → caption_flow-0.4.0}/README.md +0 -0
  55. {caption_flow-0.3.4 → caption_flow-0.4.0}/setup.cfg +0 -0
  56. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow/processors/__init__.py +3 -3
  57. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow/storage/__init__.py +0 -0
  58. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow/utils/__init__.py +1 -1
  59. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow.egg-info/dependency_links.txt +0 -0
  60. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow.egg-info/entry_points.txt +0 -0
  61. {caption_flow-0.3.4 → caption_flow-0.4.0}/src/caption_flow.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: caption-flow
3
- Version: 0.3.4
3
+ Version: 0.4.0
4
4
  Summary: Self-contained distributed community captioning system
5
5
  Author-email: bghira <bghira@users.github.com>
6
6
  License: MIT
@@ -9,10 +9,9 @@ Classifier: Development Status :: 4 - Beta
9
9
  Classifier: Intended Audience :: Developers
10
10
  Classifier: License :: OSI Approved :: MIT License
11
11
  Classifier: Programming Language :: Python :: 3
12
- Classifier: Programming Language :: Python :: 3.10
13
12
  Classifier: Programming Language :: Python :: 3.11
14
13
  Classifier: Programming Language :: Python :: 3.12
15
- Requires-Python: <3.13,>=3.10
14
+ Requires-Python: <3.13,>=3.11
16
15
  Description-Content-Type: text/markdown
17
16
  License-File: LICENSE
18
17
  Requires-Dist: websockets>=12.0
@@ -35,7 +34,9 @@ Requires-Dist: boto3<2.0.0,>=1.40.11
35
34
  Requires-Dist: torchdata<0.12.0,>=0.11.0
36
35
  Requires-Dist: textual<6.0.0,>=5.3.0
37
36
  Requires-Dist: urwid<4.0.0,>=3.0.2
38
- Requires-Dist: webshart<0.5.0,>=0.4.0
37
+ Requires-Dist: webshart<0.5.0,>=0.4.3
38
+ Requires-Dist: pylance<0.36.0,>=0.35.0
39
+ Requires-Dist: duckdb<2.0.0,>=1.3.2
39
40
  Provides-Extra: dev
40
41
  Requires-Dist: pytest>=7.4.0; extra == "dev"
41
42
  Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
@@ -1,9 +1,9 @@
1
1
  [project]
2
2
  name = "caption-flow"
3
- version = "0.3.4"
3
+ version = "0.4.0"
4
4
  description = "Self-contained distributed community captioning system"
5
5
  readme = "README.md"
6
- requires-python = ">=3.10,<3.13"
6
+ requires-python = ">=3.11,<3.13"
7
7
  license = {text = "MIT"}
8
8
  authors = [
9
9
  {name = "bghira", email = "bghira@users.github.com"},
@@ -14,7 +14,6 @@ classifiers = [
14
14
  "Intended Audience :: Developers",
15
15
  "License :: OSI Approved :: MIT License",
16
16
  "Programming Language :: Python :: 3",
17
- "Programming Language :: Python :: 3.10",
18
17
  "Programming Language :: Python :: 3.11",
19
18
  "Programming Language :: Python :: 3.12",
20
19
  ]
@@ -40,7 +39,9 @@ dependencies = [
40
39
  "torchdata (>=0.11.0,<0.12.0)",
41
40
  "textual (>=5.3.0,<6.0.0)",
42
41
  "urwid (>=3.0.2,<4.0.0)",
43
- "webshart (>=0.4.0,<0.5.0)",
42
+ "webshart (>=0.4.3,<0.5.0)",
43
+ "pylance (>=0.35.0,<0.36.0)",
44
+ "duckdb (>=1.3.2,<2.0.0)",
44
45
  ]
45
46
 
46
47
  [project.optional-dependencies]
@@ -73,7 +74,11 @@ select = ["E", "F", "I", "N", "W", "B", "C90", "D"]
73
74
  ignore = ["D100", "D101", "D102", "D103", "D104", "D105", "D106", "D107"]
74
75
 
75
76
  [tool.mypy]
76
- python_version = "3.10"
77
+ python_version = "3.11"
77
78
  warn_return_any = true
78
79
  warn_unused_configs = true
79
80
  disallow_untyped_defs = true
81
+
82
+ [tool.poetry.group.dev.dependencies]
83
+ pytest-asyncio = "^1.1.0"
84
+
@@ -1,10 +1,10 @@
1
1
  """CaptionFlow - Distributed community captioning system."""
2
2
 
3
- __version__ = "0.3.4"
3
+ __version__ = "0.4.0"
4
4
 
5
+ from .monitor import Monitor
5
6
  from .orchestrator import Orchestrator
6
- from .workers.data import DataWorker
7
7
  from .workers.caption import CaptionWorker
8
- from .monitor import Monitor
8
+ from .workers.data import DataWorker
9
9
 
10
10
  __all__ = ["Orchestrator", "DataWorker", "CaptionWorker", "Monitor"]