Skip to content

Commit d32214f

Browse files
Merge branch 'main' into dependabot_freq
2 parents b4fafb5 + 60171a4 commit d32214f

File tree

11 files changed

+75
-87
lines changed

11 files changed

+75
-87
lines changed

.github/workflows/python-package.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ jobs:
9393
strategy:
9494
matrix:
9595
os: [ubuntu-latest, windows-latest, macos-14, macos-latest]
96-
python-version: ["3.9", "3.10", "3.11", "3.12"]
96+
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
9797
include:
9898
- { os: ubuntu-latest, shell: bash }
9999
- { os: macos-latest, shell: bash }
@@ -179,7 +179,7 @@ jobs:
179179
macos-14,
180180
macos-latest,
181181
]
182-
python-build: ["cp39", "cp310", "cp311", "cp312"]
182+
python-build: ["cp39", "cp310", "cp311", "cp312", "cp313"]
183183
#exclude:
184184
# none currently
185185
# - { os: macos-latest, python-build: 'cp37' }

CMakeLists.txt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,13 @@ option(OTIO_FIND_RAPIDJSON "Find RapidJSON using find_package" OFF)
3636
set(OTIO_PYTHON_INSTALL_DIR "" CACHE STRING "Python installation dir (such as the site-packages dir)")
3737

3838
# Build options
39+
#
40+
# If you are building OpenTimelineIO as a static library you will need to
41+
# defined OPENTIME_STATIC and OTIO_STATIC. If you use the provided CMake
42+
# config files these will be automatically defined for you. To use the
43+
# provided config files add `find_package(OpenTimelineIO)` to your
44+
# CMakeLists.txt file.
45+
#
3946
option(OTIO_SHARED_LIBS "Build shared if ON, static if OFF" ON)
4047
option(OTIO_CXX_COVERAGE "Invoke code coverage if lcov/gcov is available" OFF)
4148
option(OTIO_CXX_EXAMPLES "Build CXX examples (also requires OTIO_PYTHON_INSTALL=ON)" OFF)

docs/conf.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,6 @@
4444
# https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output
4545

4646
html_theme = "sphinx_rtd_theme"
47-
html_theme_path = [sphinx_rtd_theme.get_html_theme_path()]
4847

4948
htmlhelp_basename = f'{project.lower()}doc'
5049

docs/requirements.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
sphinx==5.3.0
1+
sphinx==7.3.7
22
readthedocs-sphinx-ext==2.1.9 # ??
33
sphinx-rtd-theme
4-
myst-parser==0.18.1
4+
myst-parser==3.0.1

docs/tutorials/otio-serialized-schema.md

Lines changed: 18 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -29,24 +29,23 @@ changes. If it needs to be updated and this file regenerated, run:
2929
```
3030
Adapters convert between OTIO and other formats.
3131
32-
Note that this class is not subclassed by adapters. Rather, an adapter is
33-
a python module that implements at least one of the following functions:
32+
Note that this class is not subclassed by adapters. Rather, an adapter is
33+
a python module that implements at least one of the following functions:
3434
35-
.. code-block:: python
35+
.. code-block:: python
3636
37-
write_to_string(input_otio)
38-
write_to_file(input_otio, filepath) (optionally inferred)
39-
read_from_string(input_str)
40-
read_from_file(filepath) (optionally inferred)
37+
write_to_string(input_otio)
38+
write_to_file(input_otio, filepath) (optionally inferred)
39+
read_from_string(input_str)
40+
read_from_file(filepath) (optionally inferred)
4141
42-
...as well as a small json file that advertises the features of the adapter
43-
to OTIO. This class serves as the wrapper around these modules internal
44-
to OTIO. You should not need to extend this class to create new adapters
45-
for OTIO.
42+
...as well as a small json file that advertises the features of the adapter
43+
to OTIO. This class serves as the wrapper around these modules internal
44+
to OTIO. You should not need to extend this class to create new adapters
45+
for OTIO.
4646
47-
For more information: https://opentimelineio.readthedocs.io/en/latest/tutorials/write-an-
47+
For more information: https://opentimelineio.readthedocs.io/en/latest/tutorials/write-an-
4848
adapter.html. # noqa
49-
5049
```
5150

5251
parameters:
@@ -84,10 +83,8 @@ parameters:
8483
*documentation*:
8584

8685
```
87-
8886
An object that can be composed within a :class:`~Composition` (such as :class:`~Track` or
8987
:class:`.Stack`).
90-
9188
```
9289

9390
parameters:
@@ -101,11 +98,9 @@ parameters:
10198
*documentation*:
10299

103100
```
104-
105101
Base class for an :class:`~Item` that contains :class:`~Composable`\s.
106102
107103
Should be subclassed (for example by :class:`.Track` and :class:`.Stack`), not used directly.
108-
109104
```
110105

111106
parameters:
@@ -207,10 +202,8 @@ parameters:
207202
*documentation*:
208203

209204
```
210-
211205
The RationalTime class represents a measure of time of :math:`rt.value/rt.rate` seconds.
212206
It can be rescaled into another :class:`~RationalTime`'s rate.
213-
214207
```
215208

216209
parameters:
@@ -224,11 +217,9 @@ parameters:
224217
*documentation*:
225218

226219
```
227-
228220
The TimeRange class represents a range in time. It encodes the start time and the duration,
229221
meaning that :meth:`end_time_inclusive` (last portion of a sample in the time range) and
230222
:meth:`end_time_exclusive` can be computed.
231-
232223
```
233224

234225
parameters:
@@ -261,14 +252,13 @@ parameters:
261252
```
262253
Defines an OTIO plugin Manifest.
263254
264-
This is considered an internal OTIO implementation detail.
255+
This is considered an internal OTIO implementation detail.
265256
266-
A manifest tracks a collection of plugins and enables finding them by name
267-
or other features (in the case of adapters, what file suffixes they
268-
advertise support for).
257+
A manifest tracks a collection of plugins and enables finding them by name
258+
or other features (in the case of adapters, what file suffixes they
259+
advertise support for).
269260
270-
For more information, consult the documentation.
271-
261+
For more information, consult the documentation.
272262
```
273263

274264
parameters:
@@ -287,8 +277,7 @@ parameters:
287277

288278
```
289279
A class of plugin that is encoded in a python module, exposed via a
290-
manifest.
291-
280+
manifest.
292281
```
293282

294283
parameters:
@@ -304,11 +293,9 @@ parameters:
304293
*documentation*:
305294

306295
```
307-
308296
A :class:`~Clip` is a segment of editable media (usually audio or video).
309297
310298
Contains a :class:`.MediaReference` and a trim on that media reference.
311-
312299
```
313300

314301
parameters:
@@ -420,7 +407,6 @@ parameters:
420407
*documentation*:
421408

422409
```
423-
424410
An ImageSequenceReference refers to a numbered series of single-frame image files. Each file can be
425411
referred to by a URL generated by the :class:`~ImageSequenceReference`.
426412
@@ -496,7 +482,6 @@ yield the first three target urls as:
496482
- ``file:///show/sequence/shot/sample_image_sequence.-0001.exr``
497483
- ``file:///show/sequence/shot/sample_image_sequence.0000.exr``
498484
- ``file:///show/sequence/shot/sample_image_sequence.0001.exr``
499-
500485
```
501486

502487
parameters:
@@ -520,9 +505,7 @@ parameters:
520505
*documentation*:
521506

522507
```
523-
524508
A time warp that applies a linear speed up or slow down across the entire clip.
525-
526509
```
527510

528511
parameters:
@@ -543,13 +526,11 @@ Instead it affects the speed of the media displayed within that item.
543526
*documentation*:
544527

545528
```
546-
547529
A marker indicates a marked range of time on an item in a timeline, usually with a name, color or
548530
other metadata.
549531
550532
The marked range may have a zero duration. The marked range is in the owning item's time coordinate
551533
system.
552-
553534
```
554535

555536
parameters:
@@ -566,12 +547,10 @@ parameters:
566547
*documentation*:
567548

568549
```
569-
570550
Represents media for which a concrete reference is missing.
571551
572552
Note that a :class:`~MissingReference` may have useful metadata, even if the location of the media
573553
is not known.
574-
575554
```
576555

577556
parameters:
@@ -587,7 +566,6 @@ parameters:
587566
*documentation*:
588567

589568
```
590-
591569
A container which can hold an ordered list of any serializable objects. Note that this is not a
592570
:class:`.Composition` nor is it :class:`.Composable`.
593571
@@ -598,7 +576,6 @@ a named collection.
598576
599577
A :class:`~SerializableCollection` is useful for serializing multiple timelines, clips, or media
600578
references to a single file.
601-
602579
```
603580

604581
parameters:

setup.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -320,6 +320,7 @@ def run(self):
320320
'Programming Language :: Python :: 3.10',
321321
'Programming Language :: Python :: 3.11',
322322
'Programming Language :: Python :: 3.12',
323+
'Programming Language :: Python :: 3.13',
323324
'Operating System :: OS Independent',
324325
'Natural Language :: English',
325326
],

src/opentime/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ set_target_properties(opentime PROPERTIES
2828
LIBRARY_OUTPUT_NAME "opentime"
2929
POSITION_INDEPENDENT_CODE TRUE)
3030

31-
if(BUILD_SHARED_LIBS)
31+
if(OTIO_SHARED_LIBS)
3232
set_target_properties(opentime PROPERTIES
3333
SOVERSION ${OTIO_SOVERSION}
3434
VERSION ${OTIO_VERSION})

src/opentime/export.h

Lines changed: 33 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -7,34 +7,38 @@
77
// https://github.com/PixarAnimationStudios/OpenUSD/blob/dev/pxr/base/arch/export.h
88
#if defined(_WINDOWS)
99
# if defined(__GNUC__) && __GNUC__ >= 4 || defined(__clang__)
10-
# define OPENTIMELINIO_EXPORT __attribute__((dllexport))
11-
# define OPENTIMELINIO_IMPORT __attribute__((dllimport))
12-
# define OPENTIMELINIO_HIDDEN
13-
# define OPENTIMELINIO_EXPORT_TYPE
10+
# define OPENTIMELINEIO_EXPORT __attribute__((dllexport))
11+
# define OPENTIMELINEIO_IMPORT __attribute__((dllimport))
12+
# define OPENTIMELINEIO_HIDDEN
13+
# define OPENTIMELINEIO_EXPORT_TYPE
14+
# define OPENTIMELINEIO_IMPORT_TYPE
1415
# else
15-
# define OPENTIMELINIO_EXPORT __declspec(dllexport)
16-
# define OPENTIMELINIO_IMPORT __declspec(dllimport)
17-
# define OPENTIMELINIO_HIDDEN
18-
# define OPENTIMELINIO_EXPORT_TYPE
16+
# define OPENTIMELINEIO_EXPORT __declspec(dllexport)
17+
# define OPENTIMELINEIO_IMPORT __declspec(dllimport)
18+
# define OPENTIMELINEIO_HIDDEN
19+
# define OPENTIMELINEIO_EXPORT_TYPE
20+
# define OPENTIMELINEIO_IMPORT_TYPE
1921
# endif
2022
#elif defined(__GNUC__) && __GNUC__ >= 4 || defined(__clang__)
21-
# define OPENTIMELINIO_EXPORT __attribute__((visibility("default")))
22-
# define OPENTIMELINIO_IMPORT
23-
# define OPENTIMELINIO_HIDDEN __attribute__((visibility("hidden")))
23+
# define OPENTIMELINEIO_EXPORT __attribute__((visibility("default")))
24+
# define OPENTIMELINEIO_IMPORT
25+
# define OPENTIMELINEIO_HIDDEN __attribute__((visibility("hidden")))
2426
# if defined(__clang__)
25-
# define OPENTIMELINIO_EXPORT_TYPE __attribute__((type_visibility("default")))
27+
# define OPENTIMELINEIO_EXPORT_TYPE __attribute__((type_visibility("default")))
2628
# else
27-
# define OPENTIMELINIO_EXPORT_TYPE __attribute__((visibility("default")))
29+
# define OPENTIMELINEIO_EXPORT_TYPE __attribute__((visibility("default")))
2830
# endif
31+
# define OPENTIMELINEIO_IMPORT_TYPE
2932
#else
30-
# define OPENTIMELINIO_EXPORT
31-
# define OPENTIMELINIO_IMPORT
32-
# define OPENTIMELINIO_HIDDEN
33-
# define OPENTIMELINIO_EXPORT_TYPE
33+
# define OPENTIMELINEIO_EXPORT
34+
# define OPENTIMELINEIO_IMPORT
35+
# define OPENTIMELINEIO_HIDDEN
36+
# define OPENTIMELINEIO_EXPORT_TYPE
37+
# define OPENTIMELINEIO_IMPORT_TYPE
3438
#endif
35-
#define OPENTIMELINIO_EXPORT_TEMPLATE(type, ...)
36-
#define OPENTIMELINIO_IMPORT_TEMPLATE(type, ...) \
37-
extern template type OPENTIMELINIO_IMPORT __VA_ARGS__
39+
#define OPENTIMELINEIO_EXPORT_TEMPLATE(type, ...)
40+
#define OPENTIMELINEIO_IMPORT_TEMPLATE(type, ...) \
41+
extern template type OPENTIMELINEIO_IMPORT __VA_ARGS__
3842

3943
#if defined(OPENTIME_STATIC)
4044
# define OPENTIME_API
@@ -44,19 +48,19 @@
4448
# define OPENTIME_LOCAL
4549
#else
4650
# if defined(OPENTIME_EXPORTS)
47-
# define OPENTIME_API OPENTIMELINIO_EXPORT
48-
# define OPENTIME_API_TYPE OPENTIMELINIO_EXPORT_TYPE
51+
# define OPENTIME_API OPENTIMELINEIO_EXPORT
52+
# define OPENTIME_API_TYPE OPENTIMELINEIO_EXPORT_TYPE
4953
# define OPENTIME_API_TEMPLATE_CLASS(...) \
50-
OPENTIMELINIO_EXPORT_TEMPLATE(class, __VA_ARGS__)
54+
OPENTIMELINEIO_EXPORT_TEMPLATE(class, __VA_ARGS__)
5155
# define OPENTIME_API_TEMPLATE_STRUCT(...) \
52-
OPENTIMELINIO_EXPORT_TEMPLATE(struct, __VA_ARGS__)
56+
OPENTIMELINEIO_EXPORT_TEMPLATE(struct, __VA_ARGS__)
5357
# else
54-
# define OPENTIME_API OPENTIMELINIO_IMPORT
55-
# define OPENTIME_API_TYPE OPENTIMELINIO_IMPORT_TYPE
58+
# define OPENTIME_API OPENTIMELINEIO_IMPORT
59+
# define OPENTIME_API_TYPE OPENTIMELINEIO_IMPORT_TYPE
5660
# define OPENTIME_API_TEMPLATE_CLASS(...) \
57-
OPENTIMELINIO_IMPORT_TEMPLATE(class, __VA_ARGS__)
61+
OPENTIMELINEIO_IMPORT_TEMPLATE(class, __VA_ARGS__)
5862
# define OPENTIME_API_TEMPLATE_STRUCT(...) \
59-
OPENTIMELINIO_IMPORT_TEMPLATE(struct, __VA_ARGS__)
63+
OPENTIMELINEIO_IMPORT_TEMPLATE(struct, __VA_ARGS__)
6064
# endif
61-
# define OPENTIME_LOCAL OPENTIMELINIO_HIDDEN
65+
# define OPENTIME_LOCAL OPENTIMELINEIO_HIDDEN
6266
#endif

src/opentimelineio/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ set_target_properties(opentimelineio PROPERTIES
103103
LIBRARY_OUTPUT_NAME "opentimelineio"
104104
POSITION_INDEPENDENT_CODE TRUE)
105105

106-
if(BUILD_SHARED_LIBS)
106+
if(OTIO_SHARED_LIBS)
107107
set_target_properties(opentimelineio PROPERTIES
108108
SOVERSION ${OTIO_SOVERSION}
109109
VERSION ${OTIO_VERSION})

src/opentimelineio/export.h

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -13,19 +13,19 @@
1313
# define OTIO_LOCAL
1414
#else
1515
# if defined(OTIO_EXPORTS)
16-
# define OTIO_API OPENTIMELINIO_EXPORT
17-
# define OTIO_API_TYPE OPENTIMELINIO_EXPORT_TYPE
16+
# define OTIO_API OPENTIMELINEIO_EXPORT
17+
# define OTIO_API_TYPE OPENTIMELINEIO_EXPORT_TYPE
1818
# define OTIO_API_TEMPLATE_CLASS(...) \
19-
OPENTIMELINIO_EXPORT_TEMPLATE(class, __VA_ARGS__)
19+
OPENTIMELINEIO_EXPORT_TEMPLATE(class, __VA_ARGS__)
2020
# define OTIO_API_TEMPLATE_STRUCT(...) \
21-
OPENTIMELINIO_EXPORT_TEMPLATE(struct, __VA_ARGS__)
21+
OPENTIMELINEIO_EXPORT_TEMPLATE(struct, __VA_ARGS__)
2222
# else
23-
# define OTIO_API OPENTIMELINIO_IMPORT
24-
# define OTIO_API_TYPE OPENTIMELINIO_IMPORT_TYPE
23+
# define OTIO_API OPENTIMELINEIO_IMPORT
24+
# define OTIO_API_TYPE OPENTIMELINEIO_IMPORT_TYPE
2525
# define OTIO_API_TEMPLATE_CLASS(...) \
26-
OPENTIMELINIO_IMPORT_TEMPLATE(class, __VA_ARGS__)
26+
OPENTIMELINEIO_IMPORT_TEMPLATE(class, __VA_ARGS__)
2727
# define OTIO_API_TEMPLATE_STRUCT(...) \
28-
OPENTIMELINIO_IMPORT_TEMPLATE(struct, __VA_ARGS__)
28+
OPENTIMELINEIO_IMPORT_TEMPLATE(struct, __VA_ARGS__)
2929
# endif
30-
# define OTIO_LOCAL OPENTIMELINIO_HIDDEN
30+
# define OTIO_LOCAL OPENTIMELINEIO_HIDDEN
3131
#endif

0 commit comments

Comments
 (0)