|
3 | 3 | # SPDX-License-Identifier: Apache-2.0 |
4 | 4 | # Copyright Contributors to the OpenTimelineIO project |
5 | 5 |
|
6 | | -"""Setup.py for installing OpenTimelineIO |
| 6 | +"""Setup.py for installing OpenTimelineIO using setuptools. |
7 | 7 |
|
8 | | -For more information: |
9 | | -- see README.md |
10 | | -- http://opentimeline.io |
| 8 | +This file is retained for compatibility and to handle the custom C++ build |
| 9 | +process via CMake. Project metadata, dependencies, and entry points are |
| 10 | +defined in pyproject.toml following PEP 621. |
11 | 11 | """ |
12 | 12 |
|
13 | 13 | import multiprocessing |
@@ -217,6 +217,7 @@ def cmake_install(self): |
217 | 217 |
|
218 | 218 |
|
219 | 219 | # Metadata that gets stamped into the __init__ files during the build phase. |
| 220 | +# This might be removable in the future if version stamping is handled differently. |
220 | 221 | PROJECT_METADATA = { |
221 | 222 | "version": "0.18.0.dev1", |
222 | 223 | "author": 'Contributors to the OpenTimelineIO project', |
@@ -294,41 +295,11 @@ def run(self): |
294 | 295 | OpenTimelineIO format.""" |
295 | 296 |
|
296 | 297 | setup( |
297 | | - name='OpenTimelineIO', |
298 | | - description='Editorial interchange format and API', |
299 | | - long_description=LONG_DESCRIPTION, |
300 | | - long_description_content_type='text/markdown', |
301 | | - url='http://opentimeline.io', |
302 | | - project_urls={ |
303 | | - 'Source': |
304 | | - 'https://github.com/AcademySoftwareFoundation/OpenTimelineIO', |
305 | | - 'Documentation': |
306 | | - 'https://opentimelineio.readthedocs.io/', |
307 | | - 'Issues': |
308 | | - 'https://github.com/AcademySoftwareFoundation/OpenTimelineIO/issues', |
309 | | - }, |
310 | | - |
311 | | - classifiers=[ |
312 | | - 'Development Status :: 4 - Beta', |
313 | | - 'Topic :: Multimedia :: Graphics', |
314 | | - 'Topic :: Multimedia :: Video', |
315 | | - 'Topic :: Multimedia :: Video :: Display', |
316 | | - 'Topic :: Multimedia :: Video :: Non-Linear Editor', |
317 | | - 'Topic :: Software Development :: Libraries :: Python Modules', |
318 | | - 'License :: OSI Approved :: Apache Software License', |
319 | | - 'Programming Language :: Python :: 3', |
320 | | - 'Programming Language :: Python :: 3.7', |
321 | | - 'Programming Language :: Python :: 3.8', |
322 | | - 'Programming Language :: Python :: 3.9', |
323 | | - 'Programming Language :: Python :: 3.10', |
324 | | - 'Programming Language :: Python :: 3.11', |
325 | | - 'Operating System :: OS Independent', |
326 | | - 'Natural Language :: English', |
327 | | - ], |
328 | | - |
329 | | - keywords='film tv editing editorial edit non-linear edl time', |
330 | | - |
331 | | - platforms='any', |
| 298 | + # name, version, description, author, license, etc. are in pyproject.toml |
| 299 | + # url, project_urls are in pyproject.toml |
| 300 | + # classifiers are in pyproject.toml |
| 301 | + # keywords are in pyproject.toml |
| 302 | + # platforms='any', # Handled by build system/wheels |
332 | 303 |
|
333 | 304 | package_data={ |
334 | 305 | 'opentimelineio': [ |
@@ -356,38 +327,10 @@ def run(self): |
356 | 327 | 'opentimelineview': 'src/opentimelineview', |
357 | 328 | }, |
358 | 329 |
|
359 | | - # Disallow 3.9.0 because of https://github.com/python/cpython/pull/22670 |
360 | | - python_requires='>=3.7, !=3.9.0', # noqa: E501 |
361 | | - |
362 | | - install_requires=[ |
363 | | - 'importlib_metadata>=1.4; python_version < "3.8"', |
364 | | - ], |
365 | | - entry_points={ |
366 | | - 'console_scripts': [ |
367 | | - 'otiocat = opentimelineio.console.otiocat:main', |
368 | | - 'otioconvert = opentimelineio.console.otioconvert:main', |
369 | | - 'otiopluginfo = opentimelineio.console.otiopluginfo:main', |
370 | | - 'otiostat = opentimelineio.console.otiostat:main', |
371 | | - 'otiotool = opentimelineio.console.otiotool:main', |
372 | | - 'otioview = opentimelineview.console:main', |
373 | | - ( |
374 | | - 'otioautogen_serialized_schema_docs = ' |
375 | | - 'opentimelineio.console.autogen_serialized_datamodel:main' |
376 | | - ), |
377 | | - ], |
378 | | - }, |
379 | | - extras_require={ |
380 | | - 'dev': [ |
381 | | - 'check-manifest', |
382 | | - 'flake8>=3.5', |
383 | | - 'coverage>=4.5', |
384 | | - 'urllib3>=1.24.3' |
385 | | - ], |
386 | | - 'view': [ |
387 | | - 'PySide2~=5.11; platform.machine=="x86_64"', |
388 | | - 'PySide6~=6.2; platform.machine=="aarch64"' |
389 | | - ] |
390 | | - }, |
| 330 | + # python_requires is in pyproject.toml |
| 331 | + # install_requires is in pyproject.toml |
| 332 | + # entry_points are in pyproject.toml |
| 333 | + # extras_require is in pyproject.toml |
391 | 334 |
|
392 | 335 | # because we need to open() the adapters manifest, we aren't zip-safe |
393 | 336 | zip_safe=False, |
|
0 commit comments