The Runway Model SDK follows semantic versioning. Be aware that breaking changes may be introduced in minor version updates until a stable 1.0.0 release occurs per SemVer spec #4.
- Major version zero (0.y.z) is for initial development. Anything may change at any time. The public API should not be considered stable.
Until version 1.0.0, expect that minor version changes may introduce breaking changes. We will take care not to introduce new behavior, features, or breaking changes in patch releases. If you require stability and reproducible behavior you may pin to a version or version range of the model SDK like runway-python>=0.2.0
or runway-python>=0.2,<0.3
.
- Fixed support for hot-reloading when running the model server with
debug=True
.
- Drop Python 2 support.
- Add ability to specify output format with the
X-Runway-Output-Format
header. - Add 32-bit depth support for the
image
data type with the EXR format.
- Fix issue when extracting tar archives that include non-ASCII filenames.
- Speed up downloads for
runway.file
andrunway.directory
data types by using segmented file transfer.
- Add support for nearest-neighbor color matching for segmentation input.
- Log initialization time when running model.
- Do not set
default
valuevector
data type if none provided.
- Added
default
option to therunway.file
data type.
- Added support for streaming inference via WebSockets.
- Add
default_output_format
option inrunway.image
data type. - Convert
runway.image
input to the specified number of channels.
- Add
runway.directory
as an alias torunway.file(is_directory=True)
. - Remove range restrictions from
image_point
,image_landmarks
, andimage_bounding_box
data types.
- Set default port to 9000.
- Add
image_landmarks
data type.
- Make segmentation serialize as a 3-channel color map when used as an output field, instead of a 1-channel label map.
- Remove default values for
min
,max
, andstep
parameters ofnumber
data type. - Rename
type
field ofimage_point.to_dict()
response frompoint
toimage_point
.
- Add
image_point
data type. - Add
image_bounding_box
data type.
- Add
boolean
data type.
- Add
segmentation
data type. - Begin strict semantic versioning.
- Use PNG as default serialization format for images.
- Remove
name
keyword argument from allrunway.data_types
. #13 - Add
description
keyword argument to allrunway.data_types
andrunway.command()
. #12 - Create abstract
runway.data_types.BaseType
class that defines a common interface for allrunway.data_types
.
- Add support for all remote filetypes over HTTP (we are currently only supporting tarballs)
- Add extneison argument to the file type and enforce that during deserialization
- Rename is_folder to is_directory
- Move
/
meta endpoint to/meta
and specifyGET
as the only allowed method (its still available via/
for backwards compatibility). /healthcheck
endpoint now returns JSON (e.g.{ "status": "RUNNING" }
)- Limit
/healthcheck
to only allow HTTP methods. - Add
modelSDKVersion
to manifest atGET /meta
. - Add
millisRunning
to manifest atGET /meta
. - Add
millisSinceLastCommand
to manifest atGET /meta
. - Add
GPU
to manifest atGET /meta
so that a model's GPU accessibility can be determined at runtime. - Add undocumented
millis_running()
andmillis_since_last_command()
toRunwayModel
. - Add
default
parameter tovector
data type. - Model server now wraps common server error codes in JSON responses (e.g. 401, 403, 404, 405, 500).
- Model server now sniffs the body of
POST
for JSON even ifcontent-type: application/json
is not sent in the request header. #1 - Model server now returns
content-type: application/json
. #6 - Add
RW_NO_SERVE
environment variable andno_serve
keyword argument torunway.run()
. These settings preventrunway.run()
from starting the Flask server so that mock HTTP requests can be made viaapp.test_client()
. See Testing Flask Applications for more details. - Add model tests in
tests/test_model.py
- Minor change to
docs/
so that JavaScript HTTP -> HTTPS redirect only occurs when the protocol is actuallyhttp:
.