clams-python 1.7.4__tar.gz → 1.8.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 (104) hide show
  1. {clams_python-1.7.4 → clams_python-1.8.1}/.gitignore +1 -1
  2. {clams_python-1.7.4 → clams_python-1.8.1}/CHANGELOG.md +29 -0
  3. {clams_python-1.7.4 → clams_python-1.8.1}/CONTRIBUTING.md +1 -1
  4. {clams_python-1.7.4/clams_python.egg-info → clams_python-1.8.1}/PKG-INFO +4 -4
  5. {clams_python-1.7.4 → clams_python-1.8.1}/build-tools/clean.py +1 -1
  6. {clams_python-1.7.4 → clams_python-1.8.1}/build-tools/test.py +4 -4
  7. {clams_python-1.7.4 → clams_python-1.8.1}/clams/__init__.py +1 -1
  8. {clams_python-1.7.4 → clams_python-1.8.1}/clams/app/__init__.py +289 -62
  9. {clams_python-1.7.4 → clams_python-1.8.1}/clams/appmetadata/__init__.py +18 -4
  10. {clams_python-1.7.4 → clams_python-1.8.1}/clams/backends/hf.py +4 -4
  11. {clams_python-1.7.4 → clams_python-1.8.1}/clams/develop/__init__.py +18 -3
  12. {clams_python-1.7.4 → clams_python-1.8.1}/clams/develop/templates/app/Containerfile.template +0 -14
  13. {clams_python-1.7.4 → clams_python-1.8.1}/clams/develop/templates/utl-tf/timeframe.py.template +48 -21
  14. {clams_python-1.7.4 → clams_python-1.8.1}/clams/envelop/__init__.py +1 -1
  15. {clams_python-1.7.4 → clams_python-1.8.1/clams_python.egg-info}/PKG-INFO +4 -4
  16. {clams_python-1.7.4 → clams_python-1.8.1}/clams_python.egg-info/SOURCES.txt +1 -1
  17. {clams_python-1.7.4 → clams_python-1.8.1}/clams_python.egg-info/requires.txt +3 -3
  18. {clams_python-1.7.4 → clams_python-1.8.1}/clams_python.egg-info/scm_file_list.json +1 -1
  19. clams_python-1.8.1/clams_python.egg-info/scm_version.json +8 -0
  20. {clams_python-1.7.4 → clams_python-1.8.1}/documentation/app-baseclasses.rst +65 -0
  21. {clams_python-1.7.4 → clams_python-1.8.1}/documentation/target-versions.csv +2 -0
  22. {clams_python-1.7.4 → clams_python-1.8.1}/pyproject.toml +18 -3
  23. {clams_python-1.7.4 → clams_python-1.8.1}/tests/test_clamsapp.py +99 -13
  24. clams_python-1.8.1/tests/test_develop.py +136 -0
  25. {clams_python-1.7.4 → clams_python-1.8.1}/tests/test_promptable.py +261 -0
  26. clams_python-1.7.4/.pytype.cfg +0 -10
  27. clams_python-1.7.4/clams_python.egg-info/scm_version.json +0 -8
  28. {clams_python-1.7.4 → clams_python-1.8.1}/.github/workflows/codecov.yml +0 -0
  29. {clams_python-1.7.4 → clams_python-1.8.1}/.github/workflows/container.yml +0 -0
  30. {clams_python-1.7.4 → clams_python-1.8.1}/.github/workflows/containers.yml +0 -0
  31. {clams_python-1.7.4 → clams_python-1.8.1}/.github/workflows/issue-assign.yml +0 -0
  32. {clams_python-1.7.4 → clams_python-1.8.1}/.github/workflows/issue-close.yml +0 -0
  33. {clams_python-1.7.4 → clams_python-1.8.1}/.github/workflows/issue-infra-project.yml +0 -0
  34. {clams_python-1.7.4 → clams_python-1.8.1}/.github/workflows/publish.yml +0 -0
  35. {clams_python-1.7.4 → clams_python-1.8.1}/.github/workflows/release-check.yml +0 -0
  36. {clams_python-1.7.4 → clams_python-1.8.1}/LICENSE +0 -0
  37. {clams_python-1.7.4 → clams_python-1.8.1}/README.md +0 -0
  38. {clams_python-1.7.4 → clams_python-1.8.1}/build-tools/build.py +0 -0
  39. {clams_python-1.7.4 → clams_python-1.8.1}/build-tools/docs.py +0 -0
  40. {clams_python-1.7.4 → clams_python-1.8.1}/build-tools/prep_release.py +0 -0
  41. {clams_python-1.7.4 → clams_python-1.8.1}/build-tools/publish.py +0 -0
  42. {clams_python-1.7.4 → clams_python-1.8.1}/clams/backends/__init__.py +0 -0
  43. {clams_python-1.7.4 → clams_python-1.8.1}/clams/develop/templates/app/.dockerignore.template +0 -0
  44. {clams_python-1.7.4 → clams_python-1.8.1}/clams/develop/templates/app/.gitignore.template +0 -0
  45. {clams_python-1.7.4 → clams_python-1.8.1}/clams/develop/templates/app/LICENSE.template +0 -0
  46. {clams_python-1.7.4 → clams_python-1.8.1}/clams/develop/templates/app/README.md.template +0 -0
  47. {clams_python-1.7.4 → clams_python-1.8.1}/clams/develop/templates/app/app.py.template +0 -0
  48. {clams_python-1.7.4 → clams_python-1.8.1}/clams/develop/templates/app/cli.py.template +0 -0
  49. {clams_python-1.7.4 → clams_python-1.8.1}/clams/develop/templates/app/metadata.py.template +0 -0
  50. {clams_python-1.7.4 → clams_python-1.8.1}/clams/develop/templates/app/requirements.txt.template +0 -0
  51. {clams_python-1.7.4 → clams_python-1.8.1}/clams/develop/templates/gha/for-clams-team.md.template +0 -0
  52. {clams_python-1.7.4 → clams_python-1.8.1}/clams/develop/templates/gha/workflows/issue-apps-project.yml.template +0 -0
  53. {clams_python-1.7.4 → clams_python-1.8.1}/clams/develop/templates/gha/workflows/issue-assign.yml.template +0 -0
  54. {clams_python-1.7.4 → clams_python-1.8.1}/clams/develop/templates/gha/workflows/issue-close.yml.template +0 -0
  55. {clams_python-1.7.4 → clams_python-1.8.1}/clams/develop/templates/gha/workflows/publish.yml.template +0 -0
  56. {clams_python-1.7.4 → clams_python-1.8.1}/clams/develop/templates/utl-tf/__init__.py.template +0 -0
  57. {clams_python-1.7.4 → clams_python-1.8.1}/clams/restify/__init__.py +0 -0
  58. {clams_python-1.7.4 → clams_python-1.8.1}/clams/serve/__init__.py +0 -0
  59. {clams_python-1.7.4 → clams_python-1.8.1}/clams/ver/__init__.py +0 -0
  60. {clams_python-1.7.4 → clams_python-1.8.1}/clams_python.egg-info/dependency_links.txt +0 -0
  61. {clams_python-1.7.4 → clams_python-1.8.1}/clams_python.egg-info/entry_points.txt +0 -0
  62. {clams_python-1.7.4 → clams_python-1.8.1}/clams_python.egg-info/top_level.txt +0 -0
  63. {clams_python-1.7.4 → clams_python-1.8.1}/container/Containerfile +0 -0
  64. {clams_python-1.7.4 → clams_python-1.8.1}/container/ffmpeg-hf.containerfile +0 -0
  65. {clams_python-1.7.4 → clams_python-1.8.1}/container/ffmpeg-hf4.containerfile +0 -0
  66. {clams_python-1.7.4 → clams_python-1.8.1}/container/ffmpeg-hf5.containerfile +0 -0
  67. {clams_python-1.7.4 → clams_python-1.8.1}/container/ffmpeg-tf2.containerfile +0 -0
  68. {clams_python-1.7.4 → clams_python-1.8.1}/container/ffmpeg-torch2.containerfile +0 -0
  69. {clams_python-1.7.4 → clams_python-1.8.1}/container/ffmpeg.containerfile +0 -0
  70. {clams_python-1.7.4 → clams_python-1.8.1}/container/generate_containers_yml.py +0 -0
  71. {clams_python-1.7.4 → clams_python-1.8.1}/container/hf.containerfile +0 -0
  72. {clams_python-1.7.4 → clams_python-1.8.1}/container/hf4.containerfile +0 -0
  73. {clams_python-1.7.4 → clams_python-1.8.1}/container/hf5.containerfile +0 -0
  74. {clams_python-1.7.4 → clams_python-1.8.1}/container/jdk8.containerfile +0 -0
  75. {clams_python-1.7.4 → clams_python-1.8.1}/container/opencv4-hf.containerfile +0 -0
  76. {clams_python-1.7.4 → clams_python-1.8.1}/container/opencv4-hf4.containerfile +0 -0
  77. {clams_python-1.7.4 → clams_python-1.8.1}/container/opencv4-hf5.containerfile +0 -0
  78. {clams_python-1.7.4 → clams_python-1.8.1}/container/opencv4-tf2.containerfile +0 -0
  79. {clams_python-1.7.4 → clams_python-1.8.1}/container/opencv4-torch2.containerfile +0 -0
  80. {clams_python-1.7.4 → clams_python-1.8.1}/container/opencv4.containerfile +0 -0
  81. {clams_python-1.7.4 → clams_python-1.8.1}/container/tf2.containerfile +0 -0
  82. {clams_python-1.7.4 → clams_python-1.8.1}/container/torch2.containerfile +0 -0
  83. {clams_python-1.7.4 → clams_python-1.8.1}/documentation/appdirectory.rst +0 -0
  84. {clams_python-1.7.4 → clams_python-1.8.1}/documentation/appmetadata.rst +0 -0
  85. {clams_python-1.7.4 → clams_python-1.8.1}/documentation/autodoc/clams.app.rst +0 -0
  86. {clams_python-1.7.4 → clams_python-1.8.1}/documentation/autodoc/clams.appmetadata.rst +0 -0
  87. {clams_python-1.7.4 → clams_python-1.8.1}/documentation/autodoc/clams.backends.rst +0 -0
  88. {clams_python-1.7.4 → clams_python-1.8.1}/documentation/autodoc/clams.mmif_utils.rst +0 -0
  89. {clams_python-1.7.4 → clams_python-1.8.1}/documentation/autodoc/clams.restify.rst +0 -0
  90. {clams_python-1.7.4 → clams_python-1.8.1}/documentation/clamsapp.rst +0 -0
  91. {clams_python-1.7.4 → clams_python-1.8.1}/documentation/cli.rst +0 -0
  92. {clams_python-1.7.4 → clams_python-1.8.1}/documentation/conf.py +0 -0
  93. {clams_python-1.7.4 → clams_python-1.8.1}/documentation/gpu-apps.rst +0 -0
  94. {clams_python-1.7.4 → clams_python-1.8.1}/documentation/index.rst +0 -0
  95. {clams_python-1.7.4 → clams_python-1.8.1}/documentation/input-output.rst +0 -0
  96. {clams_python-1.7.4 → clams_python-1.8.1}/documentation/introduction.rst +0 -0
  97. {clams_python-1.7.4 → clams_python-1.8.1}/documentation/modules.rst +0 -0
  98. {clams_python-1.7.4 → clams_python-1.8.1}/documentation/runtime-params.rst +0 -0
  99. {clams_python-1.7.4 → clams_python-1.8.1}/documentation/tutorial.md +0 -0
  100. {clams_python-1.7.4 → clams_python-1.8.1}/setup.cfg +0 -0
  101. {clams_python-1.7.4 → clams_python-1.8.1}/tests/metadata.py +0 -0
  102. {clams_python-1.7.4 → clams_python-1.8.1}/tests/pillow-logo.png +0 -0
  103. {clams_python-1.7.4 → clams_python-1.8.1}/tests/test_backends_hf.py +0 -0
  104. {clams_python-1.7.4 → clams_python-1.8.1}/tests/test_envelope.py +0 -0
@@ -1,6 +1,6 @@
1
1
  # python test files
2
2
  .coverage
3
- .pytype
3
+ .mypy_cache
4
4
 
5
5
  # build time temp files
6
6
  VERSION*
@@ -1,4 +1,33 @@
1
1
 
2
+ ## releasing 1.8.0 (2026-10-06)
3
+ ### Overview
4
+ Adds runtime parameters that cap the number of images per prompt in promptable apps, and updates `mmif-python` to 1.5.4.
5
+
6
+ ### Additions
7
+
8
+ * `maxImagesPerPrompt` and `imagesPerPromptMode`: new runtime parameters for promptable apps. A TimeFrame with more images than the cap is split into several prompts, which bounds GPU memory for long scenes ( https://github.com/clamsproject/clams-python/issues/306).
9
+
10
+ ### Changes
11
+
12
+ * `mmif-python` is updated to 1.5.4, which fixes image extraction from truncated or otherwise incomplete video files.
13
+ * (for contributors) Test-time type checking moved from `pytype` to `mypy` (https://github.com/clamsproject/clams-python/issues/285).
14
+
15
+
16
+
17
+
18
+ ## releasing 1.7.4 (2026-09-01)
19
+ ### Overview
20
+
21
+ Fixes parameter recording in signed view metadata, adds consistent handling of empty views, and repairs the `-torch` base container images.
22
+
23
+ ### Changes
24
+
25
+ * `parameters`: fix recording of multi-valued and raw parameters when signing a view, and clarify the distinction between `params` and `appConfiguration` in view metadata (https://github.com/clamsproject/clams-python/issues/296)
26
+ * views: handle "empty" views returned from apps consistently and emit an SDK-level warning when an app returns no new annotations (https://github.com/clamsproject/clams-python/issues/305)
27
+ * `-torch` container images: add a minimal C tool chain to the base images for triton compatibility ( https://github.com/clamsproject/clams-python/issues/302)
28
+
29
+
30
+
2
31
  ## releasing 1.7.3 (2026-07-09)
3
32
  ### Overview
4
33
  This patch includes critical bugfixes. See changes below.
@@ -15,7 +15,7 @@ Unlike the old `setup.py`-based workflow, an editable install
15
15
  (`pip install -e .`) is now required before running tests or building
16
16
  docs. The package uses `importlib.metadata` for version resolution at
17
17
  runtime, which only works when the package is registered in the
18
- environment. You can no longer run `pytest` or `pytype` directly
18
+ environment. You can no longer run `pytest` or `mypy` directly
19
19
  against the source tree without installing first. If you want to avoid
20
20
  pulling in all dependencies, `pip install -e . --no-deps` is sufficient
21
21
  to register the package metadata.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: clams-python
3
- Version: 1.7.4
3
+ Version: 1.8.1
4
4
  Summary: A collection of APIs to develop CLAMS app for python
5
5
  License-Expression: Apache-2.0
6
6
  Project-URL: homepage, https://clams.ai
@@ -13,7 +13,7 @@ Classifier: Programming Language :: Python :: 3 :: Only
13
13
  Requires-Python: >=3.10
14
14
  Description-Content-Type: text/markdown
15
15
  License-File: LICENSE
16
- Requires-Dist: mmif-python==1.5.3
16
+ Requires-Dist: mmif-python==1.6.0
17
17
  Requires-Dist: Flask>=2
18
18
  Requires-Dist: Flask-RESTful>=0.3.9
19
19
  Requires-Dist: gunicorn>=20
@@ -21,7 +21,7 @@ Requires-Dist: lapps>=0.0.2
21
21
  Requires-Dist: pydantic>=2
22
22
  Requires-Dist: jsonschema>=3
23
23
  Provides-Extra: dev
24
- Requires-Dist: pytype; extra == "dev"
24
+ Requires-Dist: mypy; extra == "dev"
25
25
  Requires-Dist: pytest; extra == "dev"
26
26
  Requires-Dist: pytest-cov; extra == "dev"
27
27
  Requires-Dist: pillow; extra == "dev"
@@ -32,7 +32,7 @@ Requires-Dist: furo; extra == "docs"
32
32
  Requires-Dist: m2r2; extra == "docs"
33
33
  Requires-Dist: sphinx-jsonschema; extra == "docs"
34
34
  Provides-Extra: test
35
- Requires-Dist: pytype; extra == "test"
35
+ Requires-Dist: mypy; extra == "test"
36
36
  Requires-Dist: pytest; extra == "test"
37
37
  Requires-Dist: pytest-cov; extra == "test"
38
38
  Requires-Dist: pillow; extra == "test"
@@ -13,7 +13,7 @@ PROJECT_ROOT = SCRIPT_DIR.parent
13
13
  # Directories to remove
14
14
  CLEAN_DIRS = [
15
15
  "build", "dist", "*.egg-info", "clams_python-*",
16
- ".pytest_cache", ".pytype", ".hypothesis",
16
+ ".pytest_cache", ".mypy_cache", ".hypothesis",
17
17
  "tests/.hypothesis", "htmlcov",
18
18
  "docs-test",
19
19
  ]
@@ -3,7 +3,7 @@ Run tests for the clams-python package.
3
3
 
4
4
  This script is equivalent to ``make test`` in the Makefile-based repos:
5
5
  pip install -e ".[test]"
6
- pytype --config .pytype.cfg clams
6
+ python -m mypy
7
7
  python -m pytest --cov=clams --cov-report=xml
8
8
  """
9
9
  import argparse
@@ -50,10 +50,10 @@ def main():
50
50
  cwd=project_root,
51
51
  )
52
52
 
53
- # Run pytype static analysis
54
- print("\n--- Running pytype ---")
53
+ # Run mypy static analysis (configured in pyproject.toml)
54
+ print("\n--- Running mypy ---")
55
55
  run_command(
56
- ["pytype", "--config", ".pytype.cfg", "clams"],
56
+ [sys.executable, "-m", "mypy"],
57
57
  cwd=project_root,
58
58
  )
59
59
 
@@ -11,7 +11,7 @@ from clams.envelop import create_envelope
11
11
  from clams.restify import Restifier
12
12
  from clams.ver import __version__
13
13
 
14
- __all__ = [AppMetadata, Restifier] + app_all
14
+ __all__ = ['AppMetadata', 'Restifier'] + app_all
15
15
  version_template = "{} (based on MMIF spec: {})"
16
16
 
17
17