runwayml 1.0.0__tar.gz → 2.1.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 (71) hide show
  1. runwayml-2.1.0/.release-please-manifest.json +3 -0
  2. {runwayml-1.0.0 → runwayml-2.1.0}/CHANGELOG.md +24 -0
  3. {runwayml-1.0.0 → runwayml-2.1.0}/CONTRIBUTING.md +24 -20
  4. {runwayml-1.0.0 → runwayml-2.1.0}/PKG-INFO +8 -5
  5. {runwayml-1.0.0 → runwayml-2.1.0}/README.md +6 -2
  6. {runwayml-1.0.0 → runwayml-2.1.0}/pyproject.toml +5 -10
  7. {runwayml-1.0.0 → runwayml-2.1.0}/requirements-dev.lock +11 -14
  8. {runwayml-1.0.0 → runwayml-2.1.0}/requirements.lock +4 -4
  9. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/_base_client.py +71 -49
  10. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/_client.py +4 -4
  11. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/_compat.py +7 -3
  12. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/_models.py +11 -8
  13. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/_response.py +3 -0
  14. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/_types.py +4 -2
  15. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/_utils/__init__.py +1 -0
  16. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/_utils/_transform.py +7 -2
  17. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/_utils/_utils.py +17 -0
  18. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/_version.py +1 -1
  19. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/resources/image_to_video.py +25 -6
  20. runwayml-2.1.0/src/runwayml/types/image_to_video_create_params.py +58 -0
  21. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/types/image_to_video_create_response.py +4 -2
  22. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/types/task_retrieve_response.py +1 -0
  23. {runwayml-1.0.0 → runwayml-2.1.0}/tests/api_resources/test_image_to_video.py +4 -0
  24. {runwayml-1.0.0 → runwayml-2.1.0}/tests/conftest.py +8 -6
  25. {runwayml-1.0.0 → runwayml-2.1.0}/tests/test_client.py +125 -2
  26. {runwayml-1.0.0 → runwayml-2.1.0}/tests/test_models.py +8 -15
  27. {runwayml-1.0.0 → runwayml-2.1.0}/tests/test_response.py +50 -0
  28. {runwayml-1.0.0 → runwayml-2.1.0}/tests/test_transform.py +15 -0
  29. runwayml-1.0.0/.release-please-manifest.json +0 -3
  30. runwayml-1.0.0/src/runwayml/types/image_to_video_create_params.py +0 -37
  31. {runwayml-1.0.0 → runwayml-2.1.0}/.gitignore +0 -0
  32. {runwayml-1.0.0 → runwayml-2.1.0}/LICENSE +0 -0
  33. {runwayml-1.0.0 → runwayml-2.1.0}/SECURITY.md +0 -0
  34. {runwayml-1.0.0 → runwayml-2.1.0}/api.md +0 -0
  35. {runwayml-1.0.0 → runwayml-2.1.0}/bin/check-release-environment +0 -0
  36. {runwayml-1.0.0 → runwayml-2.1.0}/bin/publish-pypi +0 -0
  37. {runwayml-1.0.0 → runwayml-2.1.0}/examples/.keep +0 -0
  38. {runwayml-1.0.0 → runwayml-2.1.0}/mypy.ini +0 -0
  39. {runwayml-1.0.0 → runwayml-2.1.0}/noxfile.py +0 -0
  40. {runwayml-1.0.0 → runwayml-2.1.0}/release-please-config.json +0 -0
  41. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/__init__.py +0 -0
  42. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/_constants.py +0 -0
  43. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/_exceptions.py +0 -0
  44. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/_files.py +0 -0
  45. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/_qs.py +0 -0
  46. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/_resource.py +0 -0
  47. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/_streaming.py +0 -0
  48. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/_utils/_logs.py +0 -0
  49. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/_utils/_proxy.py +0 -0
  50. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/_utils/_reflection.py +0 -0
  51. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/_utils/_streams.py +0 -0
  52. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/_utils/_sync.py +0 -0
  53. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/_utils/_typing.py +0 -0
  54. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/lib/.keep +0 -0
  55. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/py.typed +0 -0
  56. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/resources/__init__.py +0 -0
  57. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/resources/tasks.py +0 -0
  58. {runwayml-1.0.0 → runwayml-2.1.0}/src/runwayml/types/__init__.py +0 -0
  59. {runwayml-1.0.0 → runwayml-2.1.0}/tests/__init__.py +0 -0
  60. {runwayml-1.0.0 → runwayml-2.1.0}/tests/api_resources/__init__.py +0 -0
  61. {runwayml-1.0.0 → runwayml-2.1.0}/tests/api_resources/test_tasks.py +0 -0
  62. {runwayml-1.0.0 → runwayml-2.1.0}/tests/sample_file.txt +0 -0
  63. {runwayml-1.0.0 → runwayml-2.1.0}/tests/test_deepcopy.py +0 -0
  64. {runwayml-1.0.0 → runwayml-2.1.0}/tests/test_extract_files.py +0 -0
  65. {runwayml-1.0.0 → runwayml-2.1.0}/tests/test_files.py +0 -0
  66. {runwayml-1.0.0 → runwayml-2.1.0}/tests/test_qs.py +0 -0
  67. {runwayml-1.0.0 → runwayml-2.1.0}/tests/test_required_args.py +0 -0
  68. {runwayml-1.0.0 → runwayml-2.1.0}/tests/test_streaming.py +0 -0
  69. {runwayml-1.0.0 → runwayml-2.1.0}/tests/test_utils/test_proxy.py +0 -0
  70. {runwayml-1.0.0 → runwayml-2.1.0}/tests/test_utils/test_typing.py +0 -0
  71. {runwayml-1.0.0 → runwayml-2.1.0}/tests/utils.py +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "2.1.0"
3
+ }
@@ -1,5 +1,29 @@
1
1
  # Changelog
2
2
 
3
+ ## 2.1.0 (2024-11-06)
4
+
5
+ Full Changelog: [v2.0.0...v2.1.0](https://github.com/runwayml/sdk-python/compare/v2.0.0...v2.1.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** API version 2024-11-06 ([#15](https://github.com/runwayml/sdk-python/issues/15)) ([39c096f](https://github.com/runwayml/sdk-python/commit/39c096fdc4784cc726e8688dcc3263e6cb322607))
10
+ * **api:** Set latest default API version ([#17](https://github.com/runwayml/sdk-python/issues/17)) ([2ad66fd](https://github.com/runwayml/sdk-python/commit/2ad66fd753321eaae28fa09755bfdb6bbfc07949))
11
+
12
+ ## 2.0.0 (2024-10-04)
13
+
14
+ Full Changelog: [v1.0.0...v2.0.0](https://github.com/runwayml/sdk-python/compare/v1.0.0...v2.0.0)
15
+
16
+ ### Features
17
+
18
+ * **api:** update via SDK Studio ([#7](https://github.com/runwayml/sdk-python/issues/7)) ([e31ea2c](https://github.com/runwayml/sdk-python/commit/e31ea2ca5602245bd936d564b66752f592cc2fab))
19
+
20
+
21
+ ### Chores
22
+
23
+ * **internal:** codegen related update ([#10](https://github.com/runwayml/sdk-python/issues/10)) ([b1b5a5f](https://github.com/runwayml/sdk-python/commit/b1b5a5f1eb6dadc9674e771a598d7269a6ed23b2))
24
+ * **internal:** codegen related update ([#11](https://github.com/runwayml/sdk-python/issues/11)) ([6a8ccd0](https://github.com/runwayml/sdk-python/commit/6a8ccd00924f775851a9a8e9429ae4b2f1790dee))
25
+ * **internal:** codegen related update ([#8](https://github.com/runwayml/sdk-python/issues/8)) ([c66ad91](https://github.com/runwayml/sdk-python/commit/c66ad91471c094e4c42bbbefdce4ea0d81fe487f))
26
+
3
27
  ## 1.0.0 (2024-09-18)
4
28
 
5
29
  Full Changelog: [v0.1.0-alpha.1...v1.0.0](https://github.com/runwayml/sdk-python/compare/v0.1.0-alpha.1...v1.0.0)
@@ -2,9 +2,13 @@
2
2
 
3
3
  ### With Rye
4
4
 
5
- We use [Rye](https://rye.astral.sh/) to manage dependencies so we highly recommend [installing it](https://rye.astral.sh/guide/installation/) as it will automatically provision a Python environment with the expected Python version.
5
+ We use [Rye](https://rye.astral.sh/) to manage dependencies because it will automatically provision a Python environment with the expected Python version. To set it up, run:
6
6
 
7
- After installing Rye, you'll just have to run this command:
7
+ ```sh
8
+ $ ./scripts/bootstrap
9
+ ```
10
+
11
+ Or [install Rye manually](https://rye.astral.sh/guide/installation/) and run:
8
12
 
9
13
  ```sh
10
14
  $ rye sync --all-features
@@ -39,17 +43,17 @@ modify the contents of the `src/runwayml/lib/` and `examples/` directories.
39
43
 
40
44
  All files in the `examples/` directory are not modified by the generator and can be freely edited or added to.
41
45
 
42
- ```bash
46
+ ```py
43
47
  # add an example to examples/<your-example>.py
44
48
 
45
49
  #!/usr/bin/env -S rye run python
46
50
 
47
51
  ```
48
52
 
49
- ```
50
- chmod +x examples/<your-example>.py
53
+ ```sh
54
+ $ chmod +x examples/<your-example>.py
51
55
  # run the example against your api
52
- ./examples/<your-example>.py
56
+ $ ./examples/<your-example>.py
53
57
  ```
54
58
 
55
59
  ## Using the repository from source
@@ -58,8 +62,8 @@ If you’d like to use the repository from source, you can either install from g
58
62
 
59
63
  To install via git:
60
64
 
61
- ```bash
62
- pip install git+ssh://git@github.com/runwayml/sdk-python.git
65
+ ```sh
66
+ $ pip install git+ssh://git@github.com/runwayml/sdk-python.git
63
67
  ```
64
68
 
65
69
  Alternatively, you can build from source and install the wheel file:
@@ -68,29 +72,29 @@ Building this package will create two files in the `dist/` directory, a `.tar.gz
68
72
 
69
73
  To create a distributable version of the library, all you have to do is run this command:
70
74
 
71
- ```bash
72
- rye build
75
+ ```sh
76
+ $ rye build
73
77
  # or
74
- python -m build
78
+ $ python -m build
75
79
  ```
76
80
 
77
81
  Then to install:
78
82
 
79
83
  ```sh
80
- pip install ./path-to-wheel-file.whl
84
+ $ pip install ./path-to-wheel-file.whl
81
85
  ```
82
86
 
83
87
  ## Running tests
84
88
 
85
89
  Most tests require you to [set up a mock server](https://github.com/stoplightio/prism) against the OpenAPI spec to run the tests.
86
90
 
87
- ```bash
91
+ ```sh
88
92
  # you will need npm installed
89
- npx prism mock path/to/your/openapi.yml
93
+ $ npx prism mock path/to/your/openapi.yml
90
94
  ```
91
95
 
92
- ```bash
93
- rye run pytest
96
+ ```sh
97
+ $ ./scripts/test
94
98
  ```
95
99
 
96
100
  ## Linting and formatting
@@ -100,14 +104,14 @@ This repository uses [ruff](https://github.com/astral-sh/ruff) and
100
104
 
101
105
  To lint:
102
106
 
103
- ```bash
104
- rye run lint
107
+ ```sh
108
+ $ ./scripts/lint
105
109
  ```
106
110
 
107
111
  To format and fix all ruff issues automatically:
108
112
 
109
- ```bash
110
- rye run format
113
+ ```sh
114
+ $ ./scripts/format
111
115
  ```
112
116
 
113
117
  ## Publishing and releases
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: runwayml
3
- Version: 1.0.0
3
+ Version: 2.1.0
4
4
  Summary: The official Python library for the runwayml API
5
5
  Project-URL: Homepage, https://github.com/runwayml/sdk-python
6
6
  Project-URL: Repository, https://github.com/runwayml/sdk-python
@@ -14,7 +14,6 @@ Classifier: Operating System :: Microsoft :: Windows
14
14
  Classifier: Operating System :: OS Independent
15
15
  Classifier: Operating System :: POSIX
16
16
  Classifier: Operating System :: POSIX :: Linux
17
- Classifier: Programming Language :: Python :: 3.7
18
17
  Classifier: Programming Language :: Python :: 3.8
19
18
  Classifier: Programming Language :: Python :: 3.9
20
19
  Classifier: Programming Language :: Python :: 3.10
@@ -22,7 +21,7 @@ Classifier: Programming Language :: Python :: 3.11
22
21
  Classifier: Programming Language :: Python :: 3.12
23
22
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
24
23
  Classifier: Typing :: Typed
25
- Requires-Python: >=3.7
24
+ Requires-Python: >=3.8
26
25
  Requires-Dist: anyio<5,>=3.5.0
27
26
  Requires-Dist: cached-property; python_version < '3.8'
28
27
  Requires-Dist: distro<2,>=1.7.0
@@ -36,7 +35,7 @@ Description-Content-Type: text/markdown
36
35
 
37
36
  [![PyPI version](https://img.shields.io/pypi/v/runwayml.svg)](https://pypi.org/project/runwayml/)
38
37
 
39
- The RunwayML Python library provides convenient access to the RunwayML REST API from any Python 3.7+
38
+ The RunwayML Python library provides convenient access to the RunwayML REST API from any Python 3.8+
40
39
  application. The library includes type definitions for all request params and response fields,
41
40
  and offers both synchronous and asynchronous clients powered by [httpx](https://github.com/encode/httpx).
42
41
 
@@ -376,4 +375,8 @@ print(runwayml.__version__)
376
375
 
377
376
  ## Requirements
378
377
 
379
- Python 3.7 or higher.
378
+ Python 3.8 or higher.
379
+
380
+ ## Contributing
381
+
382
+ See [the contributing documentation](https://github.com/runwayml/sdk-python/tree/main/./CONTRIBUTING.md).
@@ -2,7 +2,7 @@
2
2
 
3
3
  [![PyPI version](https://img.shields.io/pypi/v/runwayml.svg)](https://pypi.org/project/runwayml/)
4
4
 
5
- The RunwayML Python library provides convenient access to the RunwayML REST API from any Python 3.7+
5
+ The RunwayML Python library provides convenient access to the RunwayML REST API from any Python 3.8+
6
6
  application. The library includes type definitions for all request params and response fields,
7
7
  and offers both synchronous and asynchronous clients powered by [httpx](https://github.com/encode/httpx).
8
8
 
@@ -342,4 +342,8 @@ print(runwayml.__version__)
342
342
 
343
343
  ## Requirements
344
344
 
345
- Python 3.7 or higher.
345
+ Python 3.8 or higher.
346
+
347
+ ## Contributing
348
+
349
+ See [the contributing documentation](./CONTRIBUTING.md).
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "runwayml"
3
- version = "1.0.0"
3
+ version = "2.1.0"
4
4
  description = "The official Python library for the runwayml API"
5
5
  dynamic = ["readme"]
6
6
  license = "Apache-2.0"
@@ -16,11 +16,10 @@ dependencies = [
16
16
  "sniffio",
17
17
  "cached-property; python_version < '3.8'",
18
18
  ]
19
- requires-python = ">= 3.7"
19
+ requires-python = ">= 3.8"
20
20
  classifiers = [
21
21
  "Typing :: Typed",
22
22
  "Intended Audience :: Developers",
23
- "Programming Language :: Python :: 3.7",
24
23
  "Programming Language :: Python :: 3.8",
25
24
  "Programming Language :: Python :: 3.9",
26
25
  "Programming Language :: Python :: 3.10",
@@ -63,11 +62,11 @@ format = { chain = [
63
62
  "format:ruff",
64
63
  "format:docs",
65
64
  "fix:ruff",
65
+ # run formatting again to fix any inconsistencies when imports are stripped
66
+ "format:ruff",
66
67
  ]}
67
- "format:black" = "black ."
68
68
  "format:docs" = "python scripts/utils/ruffen-docs.py README.md api.md"
69
69
  "format:ruff" = "ruff format"
70
- "format:isort" = "isort ."
71
70
 
72
71
  "lint" = { chain = [
73
72
  "check:ruff",
@@ -125,10 +124,6 @@ path = "README.md"
125
124
  pattern = '\[(.+?)\]\(((?!https?://)\S+?)\)'
126
125
  replacement = '[\1](https://github.com/runwayml/sdk-python/tree/main/\g<2>)'
127
126
 
128
- [tool.black]
129
- line-length = 120
130
- target-version = ["py37"]
131
-
132
127
  [tool.pytest.ini_options]
133
128
  testpaths = ["tests"]
134
129
  addopts = "--tb=short"
@@ -143,7 +138,7 @@ filterwarnings = [
143
138
  # there are a couple of flags that are still disabled by
144
139
  # default in strict mode as they are experimental and niche.
145
140
  typeCheckingMode = "strict"
146
- pythonVersion = "3.7"
141
+ pythonVersion = "3.8"
147
142
 
148
143
  exclude = [
149
144
  "_dev",
@@ -16,8 +16,6 @@ anyio==4.4.0
16
16
  # via runwayml
17
17
  argcomplete==3.1.2
18
18
  # via nox
19
- attrs==23.1.0
20
- # via pytest
21
19
  certifi==2023.7.22
22
20
  # via httpcore
23
21
  # via httpx
@@ -28,8 +26,9 @@ distlib==0.3.7
28
26
  # via virtualenv
29
27
  distro==1.8.0
30
28
  # via runwayml
31
- exceptiongroup==1.1.3
29
+ exceptiongroup==1.2.2
32
30
  # via anyio
31
+ # via pytest
33
32
  filelock==3.12.4
34
33
  # via virtualenv
35
34
  h11==0.14.0
@@ -49,7 +48,7 @@ markdown-it-py==3.0.0
49
48
  # via rich
50
49
  mdurl==0.1.2
51
50
  # via markdown-it-py
52
- mypy==1.11.2
51
+ mypy==1.13.0
53
52
  mypy-extensions==1.0.0
54
53
  # via mypy
55
54
  nodeenv==1.8.0
@@ -60,27 +59,25 @@ packaging==23.2
60
59
  # via pytest
61
60
  platformdirs==3.11.0
62
61
  # via virtualenv
63
- pluggy==1.3.0
64
- # via pytest
65
- py==1.11.0
62
+ pluggy==1.5.0
66
63
  # via pytest
67
- pydantic==2.7.1
64
+ pydantic==2.9.2
68
65
  # via runwayml
69
- pydantic-core==2.18.2
66
+ pydantic-core==2.23.4
70
67
  # via pydantic
71
68
  pygments==2.18.0
72
69
  # via rich
73
70
  pyright==1.1.380
74
- pytest==7.1.1
71
+ pytest==8.3.3
75
72
  # via pytest-asyncio
76
- pytest-asyncio==0.21.1
73
+ pytest-asyncio==0.24.0
77
74
  python-dateutil==2.8.2
78
75
  # via time-machine
79
76
  pytz==2023.3.post1
80
77
  # via dirty-equals
81
78
  respx==0.20.2
82
79
  rich==13.7.1
83
- ruff==0.6.5
80
+ ruff==0.6.9
84
81
  setuptools==68.2.2
85
82
  # via nodeenv
86
83
  six==1.16.0
@@ -90,10 +87,10 @@ sniffio==1.3.0
90
87
  # via httpx
91
88
  # via runwayml
92
89
  time-machine==2.9.0
93
- tomli==2.0.1
90
+ tomli==2.0.2
94
91
  # via mypy
95
92
  # via pytest
96
- typing-extensions==4.8.0
93
+ typing-extensions==4.12.2
97
94
  # via anyio
98
95
  # via mypy
99
96
  # via pydantic
@@ -19,7 +19,7 @@ certifi==2023.7.22
19
19
  # via httpx
20
20
  distro==1.8.0
21
21
  # via runwayml
22
- exceptiongroup==1.1.3
22
+ exceptiongroup==1.2.2
23
23
  # via anyio
24
24
  h11==0.14.0
25
25
  # via httpcore
@@ -30,15 +30,15 @@ httpx==0.25.2
30
30
  idna==3.4
31
31
  # via anyio
32
32
  # via httpx
33
- pydantic==2.7.1
33
+ pydantic==2.9.2
34
34
  # via runwayml
35
- pydantic-core==2.18.2
35
+ pydantic-core==2.23.4
36
36
  # via pydantic
37
37
  sniffio==1.3.0
38
38
  # via anyio
39
39
  # via httpx
40
40
  # via runwayml
41
- typing-extensions==4.8.0
41
+ typing-extensions==4.12.2
42
42
  # via anyio
43
43
  # via pydantic
44
44
  # via pydantic-core