mmif-python 1.4.0__tar.gz → 1.5.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.
- {mmif_python-1.4.0 → mmif_python-1.5.0}/CHANGELOG.md +62 -0
- {mmif_python-1.4.0/mmif_python.egg-info → mmif_python-1.5.0}/PKG-INFO +2 -2
- {mmif_python-1.4.0 → mmif_python-1.5.0}/build-tools/docs.py +12 -10
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/res/mmif.json +17 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/utils/video_document_helper.py +448 -299
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/utils/workflow_helper.py +9 -1
- {mmif_python-1.4.0 → mmif_python-1.5.0/mmif_python.egg-info}/PKG-INFO +2 -2
- {mmif_python-1.4.0 → mmif_python-1.5.0}/pyproject.toml +1 -1
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/test_utils.py +133 -27
- {mmif_python-1.4.0 → mmif_python-1.5.0}/.github/workflows/codecov.yml +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/.github/workflows/issue-assign.yml +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/.github/workflows/issue-close.yml +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/.github/workflows/issue-infra-project.yml +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/.github/workflows/publish.yml +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/.gitignore +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/CONTRIBUTING.md +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/LICENSE +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/README.md +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/build-tools/build.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/build-tools/clean.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/build-tools/publish.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/build-tools/test.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/documentation/_mmif_example_builder/__init__.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/documentation/_templates/versions.html +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/documentation/cli.rst +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/documentation/conf.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/documentation/consumer-tutorial.rst +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/documentation/index.rst +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/documentation/introduction.rst +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/documentation/plugins.rst +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/documentation/summarizer.rst +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/documentation/target-versions.csv +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/documentation/target-versions.rst +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/__init__.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/res/__init__.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/serialize/__init__.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/serialize/annotation.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/serialize/mmif.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/serialize/model.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/serialize/view.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/utils/__init__.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/utils/cli/__init__.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/utils/cli/describe.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/utils/cli/rewind.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/utils/cli/source.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/utils/cli/summarize.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/utils/sequence_helper.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/utils/summarizer/__init__.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/utils/summarizer/config.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/utils/summarizer/graph.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/utils/summarizer/nodes.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/utils/summarizer/summary.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/utils/summarizer/utils.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/utils/text_document_helper.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/utils/timeunit_helper.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/ver/__init__.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/vocabulary/__init__.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/vocabulary/annotation_types.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/vocabulary/base_types.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif/vocabulary/document_types.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif_docloc_http/__init__.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif_python.egg-info/SOURCES.txt +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif_python.egg-info/dependency_links.txt +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif_python.egg-info/entry_points.txt +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif_python.egg-info/requires.txt +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/mmif_python.egg-info/top_level.txt +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/setup.cfg +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/black-2997fps.mp4 +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/mmif-examples/1.0.5-old-shortid.json +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/mmif-examples/README.md +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/mmif-examples/bars-tones-slates/raw.json +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/mmif-examples/east-tesseract-typing/raw.json +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/mmif-examples/everything/raw.json +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/mmif-examples/examples.json +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/mmif-examples/others/README.md +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/mmif-examples/others/image-box-ocr-timex.json +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/mmif-examples/others/image-box-ocr.json +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/mmif-examples/others/image-box.json +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/mmif-examples/others/image.json +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/mmif-examples/others/slate-detect.json +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/mmif-examples/others/slate-reco.json +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/mmif-examples/others/video-demux.json +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/mmif-examples/others/video-transcript-demux-fa.json +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/mmif-examples/others/video-transcript-demux-fa.short.json +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/mmif-examples/others/video-transcript-demux.json +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/mmif-examples/others/video-transcript-sentencesplit.json +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/mmif-examples/others/video-transcript.json +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/mmif-examples/others/video.json +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/mmif-examples/segmenter-kaldi-ner/raw.json +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/mmif-examples/swt-1.0.mmif +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/mmif_examples.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/test_serialize.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/test_specver.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/test_utils_cli.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/test_vocab.py +0 -0
- {mmif_python-1.4.0 → mmif_python-1.5.0}/tests/testsrc-2997fps-ptsoffset.mp4 +0 -0
|
@@ -1,4 +1,22 @@
|
|
|
1
1
|
|
|
2
|
+
## releasing 1.4.0 (2026-04-22)
|
|
3
|
+
### Overview
|
|
4
|
+
* This is minor level release that 1) replacing simple string enums in `mmif.vocabulary` with fully-fledged pydantic classes in `clams-vocabulary` package 2) deprecating framenum-based image extraction functions in VDH (frame numbers are no longer considered as proper timestamps)
|
|
5
|
+
|
|
6
|
+
### Additions
|
|
7
|
+
* presentation timestamp-based image extraction functions added to VDH (https://github.com/clamsproject/mmif-python/pull/382 )
|
|
8
|
+
* `pyav` and `clams-vocabulary` as new dependencies
|
|
9
|
+
|
|
10
|
+
### Changes
|
|
11
|
+
* opencv-based video operations are now based on pyav (ffmpeg backend)
|
|
12
|
+
* all framenum-based functions in VDH are now marked as deprecated, scheduled for removal at 2.0.0
|
|
13
|
+
* `mmif.vocabulary` package is now a thin wrapper around `clams-vocabulary` package (https://github.com/clamsproject/mmif-python/pull/381 )
|
|
14
|
+
* `AnnotationTypes` and `DocumentTypes` classes are no longer simple string enums, but pydantic-based validation-supported python classes
|
|
15
|
+
|
|
16
|
+
### Removal
|
|
17
|
+
* `durationTimeUnit` is no longer written to video documents' `Annotation` property. This is non-API change hence not triggering major version bump. (based on https://github.com/clamsproject/mmif/pull/240/changes/a74dc46245c21dc7a279b3f271cf3e3a2a126f3a, all time notations without explicit unit specification are considered as milliseconds)
|
|
18
|
+
|
|
19
|
+
|
|
2
20
|
## releasing 1.3.1 (2026-03-11)
|
|
3
21
|
### Overview
|
|
4
22
|
|
|
@@ -8,6 +26,7 @@ Bug-fix release to address broken `as_PIL=True` option in `extract_frames_as_ima
|
|
|
8
26
|
|
|
9
27
|
* Fix `PIL.Image` import failure in `_check_cv_dep` by switching from `importlib.__import__` to `importlib.import_module` (https://github.com/clamsproject/mmif-python/pull/377)
|
|
10
28
|
|
|
29
|
+
|
|
11
30
|
## releasing 1.3.0 (2026-03-10)
|
|
12
31
|
### Overview
|
|
13
32
|
Minor release adding a new `summarize` CLI, pydantic-based workflow descriptors, and various fixes for video document helpers and timestamp handling.
|
|
@@ -26,6 +45,7 @@ Minor release adding a new `summarize` CLI, pydantic-based workflow descriptors,
|
|
|
26
45
|
* Documentation build migrated to "build-once, stay-forever" model via documentation hub (https://github.com/clamsproject/mmif-python/pull/344)
|
|
27
46
|
|
|
28
47
|
|
|
48
|
+
|
|
29
49
|
## releasing 1.2.1 (2025-11-28)
|
|
30
50
|
### Overview
|
|
31
51
|
Updated output formats of the experimental `mmif describe` command
|
|
@@ -38,6 +58,7 @@ Updated output formats of the experimental `mmif describe` command
|
|
|
38
58
|
> [!NOTE]
|
|
39
59
|
> `mmif describe` (and the underlying `mmif.utils.workflow_helper`) is still experimental and subject to change in future releases without notice. Backward compatibility is not guaranteed.
|
|
40
60
|
|
|
61
|
+
|
|
41
62
|
## releasing 1.2.0 (2025-11-20)
|
|
42
63
|
### Overview
|
|
43
64
|
This version is minor release with addition of a new cli (`describe`), lots of in-line documentation updates, and deprecation of some "getter" methods
|
|
@@ -57,6 +78,7 @@ mmif.get(some_view_id)
|
|
|
57
78
|
* many outdated documentation updates
|
|
58
79
|
|
|
59
80
|
|
|
81
|
+
|
|
60
82
|
## releasing 1.1.2 (2025-07-28)
|
|
61
83
|
### Overview
|
|
62
84
|
Patch release with a hotfix of a bug.
|
|
@@ -64,6 +86,7 @@ Patch release with a hotfix of a bug.
|
|
|
64
86
|
### Changes
|
|
65
87
|
* Fixed bug with handling "list of ID" props in 1.0.x MMIF.
|
|
66
88
|
|
|
89
|
+
|
|
67
90
|
## releasing 1.1.1 (2025-07-26)
|
|
68
91
|
### Overview
|
|
69
92
|
Patch release to support installation on python 3.12 and newer (fixes https://github.com/clamsproject/mmif-python/issues/314).
|
|
@@ -72,6 +95,7 @@ Patch release to support installation on python 3.12 and newer (fixes https://gi
|
|
|
72
95
|
- `setup.py` is now compatible with the latest setuptools (80) .
|
|
73
96
|
- [Since python 3.12 no longer ship `setuptools` as a part of standard installation](https://docs.python.org/3/whatsnew/3.12.html#ensurepip), added setuptools as a `dev` dependency.
|
|
74
97
|
|
|
98
|
+
|
|
75
99
|
## releasing 1.1.0 (2025-07-23)
|
|
76
100
|
### Overview
|
|
77
101
|
This is a minor version release, but it includes several significant changes and improvements across the codebase.
|
|
@@ -88,6 +112,7 @@ This is a minor version release, but it includes several significant changes and
|
|
|
88
112
|
* Miscellaneous cleanup and improvements on documentation and unused code.
|
|
89
113
|
|
|
90
114
|
|
|
115
|
+
|
|
91
116
|
## releasing 1.0.19 (2024-07-29)
|
|
92
117
|
### Overview
|
|
93
118
|
Patch to fix a critical bug.
|
|
@@ -95,6 +120,7 @@ Patch to fix a critical bug.
|
|
|
95
120
|
### Changes
|
|
96
121
|
- bugfix when `Annotation` instance and "warnings" view both are involved, MMIF is not properly returned (#299)
|
|
97
122
|
|
|
123
|
+
|
|
98
124
|
## releasing 1.0.18 (2024-07-15)
|
|
99
125
|
### Overview
|
|
100
126
|
Patch release with a bugfix.
|
|
@@ -104,6 +130,7 @@ Patch release with a bugfix.
|
|
|
104
130
|
### Changes
|
|
105
131
|
- fixed bug when adding custom properties to a newly generated `TextDocument` object (https://github.com/clamsproject/mmif-python/issues/290)
|
|
106
132
|
|
|
133
|
+
|
|
107
134
|
## releasing 1.0.17 (2024-06-26)
|
|
108
135
|
### Overview
|
|
109
136
|
This release adds caching mechanism for annotation alignments (via `Alignment` annotation, the alignment via `targets` property is not yet supported).
|
|
@@ -117,6 +144,7 @@ This release adds caching mechanism for annotation alignments (via `Alignment` a
|
|
|
117
144
|
- `mmif.utils.text_document_helper.slice_text` received a major speed boost from the alignment caching.
|
|
118
145
|
|
|
119
146
|
|
|
147
|
+
|
|
120
148
|
## releasing 1.0.16 (2024-06-14)
|
|
121
149
|
### Overview
|
|
122
150
|
This release includes an _experimental_ implementation for helpers to slice `text_value` from text documents.
|
|
@@ -125,6 +153,7 @@ This release includes an _experimental_ implementation for helpers to slice `tex
|
|
|
125
153
|
* `mmif.utils.text_document_helper` module to address https://github.com/clamsproject/mmif-python/issues/280
|
|
126
154
|
|
|
127
155
|
|
|
156
|
+
|
|
128
157
|
## releasing 1.0.15 (2024-06-07)
|
|
129
158
|
### Overview
|
|
130
159
|
Minor release to add/improve helper methods.
|
|
@@ -136,6 +165,7 @@ Minor release to add/improve helper methods.
|
|
|
136
165
|
- `Mmif.__getitem__()` now works with short annotation IDs (https://github.com/clamsproject/mmif-python/issues/279)
|
|
137
166
|
|
|
138
167
|
|
|
168
|
+
|
|
139
169
|
## releasing 1.0.14 (2024-04-10)
|
|
140
170
|
### Overview
|
|
141
171
|
This release contains small fixes and improvements.
|
|
@@ -151,6 +181,7 @@ This release contains small fixes and improvements.
|
|
|
151
181
|
### Changes
|
|
152
182
|
- "empty" annotation property values are correctly retrievable
|
|
153
183
|
|
|
184
|
+
|
|
154
185
|
## releasing 1.0.13 (2024-04-02)
|
|
155
186
|
### Overview
|
|
156
187
|
This version includes small, but helpful improvements.
|
|
@@ -161,6 +192,7 @@ This version includes small, but helpful improvements.
|
|
|
161
192
|
* video frame sampling can now use fractional sampling rate (in terms of frame numbers)
|
|
162
193
|
|
|
163
194
|
|
|
195
|
+
|
|
164
196
|
## releasing 1.0.12 (2024-04-01)
|
|
165
197
|
### Overview
|
|
166
198
|
Hot-fixing a wrong field name.
|
|
@@ -169,6 +201,7 @@ Hot-fixing a wrong field name.
|
|
|
169
201
|
- `views[].metadata.app_configuration` is renamed to `appConfiguration`, correctly following the MMIF json schema.
|
|
170
202
|
|
|
171
203
|
|
|
204
|
+
|
|
172
205
|
## releasing 1.0.11 (2024-03-31)
|
|
173
206
|
### Overview
|
|
174
207
|
This release includes changes from MMIF spec 1.0.3 and 1.0.4, and a new helper module to handle sequence annotations
|
|
@@ -186,6 +219,7 @@ This release includes changes from MMIF spec 1.0.3 and 1.0.4, and a new helper m
|
|
|
186
219
|
- getting start or end anchor points on annotations objects only with `targets` are no longer require the targets list is already sorted
|
|
187
220
|
- sphinx-based public API documentation for old versions is back
|
|
188
221
|
|
|
222
|
+
|
|
189
223
|
## releasing 1.0.10 (2024-03-01)
|
|
190
224
|
### Overview
|
|
191
225
|
This version includes minor bug fixes and support for MMIF spec 1.0.2.
|
|
@@ -198,6 +232,7 @@ This version includes minor bug fixes and support for MMIF spec 1.0.2.
|
|
|
198
232
|
* ISO-like time unit conversion now consistently returns only to third decimal place.
|
|
199
233
|
|
|
200
234
|
|
|
235
|
+
|
|
201
236
|
## releasing 1.0.9 (2024-02-10)
|
|
202
237
|
### Overview
|
|
203
238
|
This is a feature-packed release.
|
|
@@ -213,6 +248,7 @@ This is a feature-packed release.
|
|
|
213
248
|
* `Annotation` objects' `properties` attribute is no longer limited to primitives and list of primitives (https://github.com/clamsproject/mmif/issues/215)
|
|
214
249
|
* Fixed annotation URI equivalence checker wasn't working in set-like collections (https://github.com/clamsproject/mmif-python/issues/257)
|
|
215
250
|
|
|
251
|
+
|
|
216
252
|
## releasing 1.0.8 (2023-07-24)
|
|
217
253
|
### Overview
|
|
218
254
|
This release includes polishing and bug fixes around the `mmif.utils.video_document_helper` module.
|
|
@@ -224,6 +260,7 @@ This release includes polishing and bug fixes around the `mmif.utils.video_docum
|
|
|
224
260
|
* `Annotation.get_property` now provide more intuitive access to "view-level" annotation properties found in `view.metadata.contains.some_at_type` dict
|
|
225
261
|
|
|
226
262
|
|
|
263
|
+
|
|
227
264
|
## releasing 1.0.7 (2023-07-20)
|
|
228
265
|
### Overview
|
|
229
266
|
Minor updates in VideoDucment helper module
|
|
@@ -233,6 +270,7 @@ Minor updates in VideoDucment helper module
|
|
|
233
270
|
|
|
234
271
|
|
|
235
272
|
|
|
273
|
+
|
|
236
274
|
## releasing 1.0.6 (2023-07-19)
|
|
237
275
|
### Overview
|
|
238
276
|
This release relaxes checks for optional CV dependencies in video utils module, so that users don't have install all of `[cv]` dependencies when they don't use them all.
|
|
@@ -241,6 +279,7 @@ This release relaxes checks for optional CV dependencies in video utils module,
|
|
|
241
279
|
* when any of `[cv]` dependencies is not found during `mmif.utils.video_document_helper` module is being loaded, instead of raising and an error, a warning is issued.
|
|
242
280
|
|
|
243
281
|
|
|
282
|
+
|
|
244
283
|
## releasing 1.0.5 (2023-07-19)
|
|
245
284
|
### Overview
|
|
246
285
|
This release contains a minor fix in video_document_helper module
|
|
@@ -249,11 +288,13 @@ This release contains a minor fix in video_document_helper module
|
|
|
249
288
|
* fixed time unit normalization was missing some important string
|
|
250
289
|
|
|
251
290
|
|
|
291
|
+
|
|
252
292
|
## releasing 1.0.4 (2023-07-19)
|
|
253
293
|
### Overview
|
|
254
294
|
This release fixes installation error in the previous version.
|
|
255
295
|
|
|
256
296
|
|
|
297
|
+
|
|
257
298
|
## releasing 1.0.3 (2023-07-19)
|
|
258
299
|
### Overview
|
|
259
300
|
This release is primarily about adding `mmif.utils` package and `mmif.utils.video_document_helper` module. The module provides many helper functions to handle frame-based and time-based documents and annotations.
|
|
@@ -266,6 +307,7 @@ This release is primarily about adding `mmif.utils` package and `mmif.utils.vide
|
|
|
266
307
|
* fixed bug in `Annotation.get_property` (#232)
|
|
267
308
|
|
|
268
309
|
|
|
310
|
+
|
|
269
311
|
## releasing 1.0.2 (2023-07-11)
|
|
270
312
|
### Overview
|
|
271
313
|
This release includes support for plugins, and a "magic" helper for using `Annotation` annotations for documents in MMIF.
|
|
@@ -277,6 +319,7 @@ This release includes support for plugins, and a "magic" helper for using `Annot
|
|
|
277
319
|
|
|
278
320
|
|
|
279
321
|
|
|
322
|
+
|
|
280
323
|
## releasing 1.0.1 (2023-05-26)
|
|
281
324
|
### Overview
|
|
282
325
|
`mmif-python` 1.0.0 included MMIF 0.5.0 instead of MMIF 1.0.0. This release fixes it
|
|
@@ -284,11 +327,13 @@ This release includes support for plugins, and a "magic" helper for using `Annot
|
|
|
284
327
|
### Changes
|
|
285
328
|
* now based on MMIF specification 1.0.0
|
|
286
329
|
|
|
330
|
+
|
|
287
331
|
## releasing 1.0.0 (2023-05-25)
|
|
288
332
|
### Overview
|
|
289
333
|
This release will be numbered as 1.0.0, but actually is re-numbering of 0.5.2, hence no technical changes are included in 1.0.0.
|
|
290
334
|
|
|
291
335
|
|
|
336
|
+
|
|
292
337
|
## releasing 0.5.2 (2023-05-19)
|
|
293
338
|
### Overview
|
|
294
339
|
This release fixes an oversight bug in `__eq__` in `MmifObject`s. Also includes updates of the sphinx documentation.
|
|
@@ -298,6 +343,7 @@ This release fixes an oversight bug in `__eq__` in `MmifObject`s. Also includes
|
|
|
298
343
|
* Updated sphinx documentation (#215 )
|
|
299
344
|
|
|
300
345
|
|
|
346
|
+
|
|
301
347
|
## releasing 0.5.1 (2023-05-02)
|
|
302
348
|
### Overview
|
|
303
349
|
This release includes "fuzzy" matching of at_types and sanitized `serialize` of `Mmif` objects.
|
|
@@ -313,6 +359,7 @@ This release includes "fuzzy" matching of at_types and sanitized `serialize` of
|
|
|
313
359
|
* fixed a small bug in `Mmif.get_alignments`
|
|
314
360
|
* fixed `view.metadata` serialized into an invalid MMIF due to a *oneOf* condition in jsonschema
|
|
315
361
|
|
|
362
|
+
|
|
316
363
|
## releasing 0.5.0 (2023-04-30)
|
|
317
364
|
### Overview
|
|
318
365
|
This release is a synchronization of `mmif-python` with the latest [MMIF 0.5.0 release](https://github.com/clamsproject/mmif/pull/199).
|
|
@@ -321,9 +368,11 @@ This release is a synchronization of `mmif-python` with the latest [MMIF 0.5.0 r
|
|
|
321
368
|
* Enum-like subclasses for annotation `@type`s in the `mmif.vocabulary` package are updated to accommodate the new way of checking I/O compatibility (as `__eq__()` in the SDK).
|
|
322
369
|
|
|
323
370
|
|
|
371
|
+
|
|
324
372
|
## releasing 0.4.8 (2023-02-10)
|
|
325
373
|
This is a small PR that doesn't include any code in the SDK, but the target MMIF version is bumped up to [0.4.2](https://github.com/clamsproject/mmif/blob/master/CHANGELOG.md#version-042---2023-02-09).
|
|
326
374
|
|
|
375
|
+
|
|
327
376
|
## releasing 0.4.7 (2023-02-09)
|
|
328
377
|
This release includes
|
|
329
378
|
|
|
@@ -331,12 +380,14 @@ This release includes
|
|
|
331
380
|
* made `properties` map to behave like a map (#194)
|
|
332
381
|
* updated python dependencies (#196, #198)
|
|
333
382
|
|
|
383
|
+
|
|
334
384
|
## releasing 0.4.6 (2022-03-25)
|
|
335
385
|
This release includes
|
|
336
386
|
|
|
337
387
|
* fixes in the development & release pipelines. (#189 #187)
|
|
338
388
|
* upgrade in the text retrieval from TextDocument (#185)
|
|
339
389
|
|
|
390
|
+
|
|
340
391
|
## releasing 0.4.5 (2021-07-11)
|
|
341
392
|
This release contains minor bug fixes
|
|
342
393
|
|
|
@@ -344,23 +395,29 @@ This release contains minor bug fixes
|
|
|
344
395
|
* fixed how `develop` version of vocab URIs were handled
|
|
345
396
|
* colon (`:`) is now a class constant for gluing view_id and annotation_id
|
|
346
397
|
|
|
398
|
+
|
|
347
399
|
## releasing 0.4.4 (2021-06-19)
|
|
348
400
|
This release contains small but breaking changes. See d5198cb2304ad488975644a87fba51906abc5299 for details.
|
|
349
401
|
|
|
350
402
|
|
|
403
|
+
|
|
351
404
|
## releasing 0.4.3 (2021-06-18)
|
|
352
405
|
This release fixes minor bugs from the previous version.
|
|
353
406
|
|
|
354
407
|
|
|
408
|
+
|
|
355
409
|
## releasing 0.4.2 (2021-06-17)
|
|
356
410
|
This release adds `new_textdocument` helper method to `View` class.
|
|
357
411
|
|
|
412
|
+
|
|
358
413
|
## releasing 0.4.1 (2021-06-14)
|
|
359
414
|
The release contains a small bug fix in deserialization of `Mmif` object.
|
|
360
415
|
|
|
416
|
+
|
|
361
417
|
## releasing 0.4.0 (2021-06-10)
|
|
362
418
|
New release to correspond to the MMIF specification 0.4.0.
|
|
363
419
|
|
|
420
|
+
|
|
364
421
|
## releasing 0.3.5 (2021-06-05)
|
|
365
422
|
The release includes ...
|
|
366
423
|
|
|
@@ -370,19 +427,24 @@ The release includes ...
|
|
|
370
427
|
* various bug fixes and clean-up
|
|
371
428
|
|
|
372
429
|
|
|
430
|
+
|
|
373
431
|
## releasing 0.3.4 (2021-05-24)
|
|
374
432
|
This release includes major bug fixes (#131, #164) and a new documentation generation pipeline (#167).
|
|
375
433
|
|
|
434
|
+
|
|
376
435
|
## releasing 0.3.3 (2021-05-12)
|
|
377
436
|
This release contains various bug fixes.
|
|
378
437
|
|
|
438
|
+
|
|
379
439
|
## releasing 0.3.2 (2021-05-12)
|
|
380
440
|
A version to match changes in the specification 0.3.1.
|
|
381
441
|
|
|
442
|
+
|
|
382
443
|
## releasing 0.3.1 (2021-03-30)
|
|
383
444
|
0.3.1 contains mostly small bugfixes.
|
|
384
445
|
|
|
385
446
|
|
|
447
|
+
|
|
386
448
|
## release candidate for 0.3.0 (2021-03-14)
|
|
387
449
|
release note for mmif-python 0.3.0
|
|
388
450
|
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mmif-python
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.5.0
|
|
4
4
|
Summary: Python implementation of MultiMedia Interchange Format specification. (https://mmif.clams.ai)
|
|
5
5
|
License-Expression: Apache-2.0
|
|
6
6
|
Project-URL: homepage, https://mmif.clams.ai
|
|
7
7
|
Project-URL: source, https://github.com/clamsproject/mmif-python
|
|
8
|
-
Project-URL: mmif-spec, https://mmif.clams.ai/1.
|
|
8
|
+
Project-URL: mmif-spec, https://mmif.clams.ai/1.2.0
|
|
9
9
|
Classifier: Development Status :: 5 - Production/Stable
|
|
10
10
|
Classifier: Intended Audience :: Developers
|
|
11
11
|
Classifier: Programming Language :: Python :: 3 :: Only
|
|
@@ -109,10 +109,6 @@ def build_versioned_docs(env: Venv, source_path: Path, version: str):
|
|
|
109
109
|
print("\n--- Installing sphinx and furo theme ---")
|
|
110
110
|
env.run_pip("install", "sphinx>=7.0,<8.0", "furo", "m2r2", cwd=source_path)
|
|
111
111
|
|
|
112
|
-
# Write VERSION file (needed for setup.py and sphinx)
|
|
113
|
-
version_file = source_path / "VERSION"
|
|
114
|
-
version_file.write_text(version)
|
|
115
|
-
|
|
116
112
|
# Inject linkcode_resolve function into conf.py for GitHub source links
|
|
117
113
|
# because some old version of conf.py may not have it
|
|
118
114
|
print("\n--- Injecting linkcode_resolve into conf.py ---")
|
|
@@ -148,10 +144,16 @@ def linkcode_resolve(domain, info):
|
|
|
148
144
|
with open(conf_py, "a") as f:
|
|
149
145
|
f.write(linkcode_snippet)
|
|
150
146
|
|
|
151
|
-
# Install package in
|
|
152
|
-
#
|
|
153
|
-
|
|
154
|
-
|
|
147
|
+
# Install package in editable mode so sphinx-autodoc can import it.
|
|
148
|
+
# Pre-1.4.0 releases ship setup.py with build-time code generation that
|
|
149
|
+
# needs a VERSION file; 1.4.0+ releases are pyproject-only and version
|
|
150
|
+
# themselves from git tags via setuptools-scm.
|
|
151
|
+
print("\n--- Installing package in editable mode ---")
|
|
152
|
+
if (source_path / "setup.py").exists():
|
|
153
|
+
(source_path / "VERSION").write_text(version)
|
|
154
|
+
env.run_python("setup.py", "develop", cwd=source_path)
|
|
155
|
+
else:
|
|
156
|
+
env.run_pip("install", "-e", ".", cwd=source_path)
|
|
155
157
|
|
|
156
158
|
# Build documentation with sphinx-build
|
|
157
159
|
print("\n--- Building Sphinx documentation ---")
|
|
@@ -216,8 +218,8 @@ def build_docs_for_version(version: str, output_base_dir: Path, repo_path: Path
|
|
|
216
218
|
print(f"\n--- Step 2: Creating and setting up virtual environment ---")
|
|
217
219
|
env = Venv(venv_path)
|
|
218
220
|
env.create()
|
|
219
|
-
#
|
|
220
|
-
#
|
|
221
|
+
# setuptools<80 pin keeps the legacy `python setup.py develop` path
|
|
222
|
+
# working for pre-1.4.0 tags; harmless for pyproject-only tags.
|
|
221
223
|
env.run_pip("install", "--upgrade", "pip", "setuptools<80", "wheel")
|
|
222
224
|
|
|
223
225
|
print(f"\n--- Step 3: Building documentation ---")
|
|
@@ -64,6 +64,14 @@
|
|
|
64
64
|
"format": "uri",
|
|
65
65
|
"minLength": 7
|
|
66
66
|
},
|
|
67
|
+
"appTags": {
|
|
68
|
+
"type": "array",
|
|
69
|
+
"items": {
|
|
70
|
+
"type": "string",
|
|
71
|
+
"minLength": 1
|
|
72
|
+
},
|
|
73
|
+
"uniqueItems": true
|
|
74
|
+
},
|
|
67
75
|
"contains": {
|
|
68
76
|
"type": "object",
|
|
69
77
|
"additionalProperties": false,
|
|
@@ -98,6 +106,15 @@
|
|
|
98
106
|
},
|
|
99
107
|
"appConfiguration": {
|
|
100
108
|
"type": "object"
|
|
109
|
+
},
|
|
110
|
+
"appProfiling": {
|
|
111
|
+
"type": "object",
|
|
112
|
+
"properties": {
|
|
113
|
+
"runningTime": {
|
|
114
|
+
"type": "string",
|
|
115
|
+
"minLength": 1
|
|
116
|
+
}
|
|
117
|
+
}
|
|
101
118
|
}
|
|
102
119
|
},
|
|
103
120
|
"oneOf": [
|