@@ -5,6 +5,50 @@ All notable changes to this project will be documented in this file.
55The format is based on [ Keep a Changelog] ( https://keepachangelog.com/en/1.0.0/ ) ,
66and this project adheres to [ Semantic Versioning] ( https://semver.org/spec/v2.0.0.html ) .
77
8+ ## [ 1.7.0] - 2023-11-21
9+
10+ - Supported Serve API: ` v1.4.3 ` or newer
11+
12+ ### Added
13+
14+ - Ability to specify output filename by specifying a full path or a relative file name in CLI command ` create-device ` .
15+ - Add the staging privacy certificate (` staging.google.com ` ) to ` Cdm.staging_privacy_cert ` .
16+ - Similar to ` common_privacy_cert ` which would be used on Google's production license server,
17+ - Though this one is used on Google's staging license server (a production-ready testing server).
18+
19+ ### Changed
20+
21+ - Raise an error if a file already exists at the output path in CLI command ` create-device ` .
22+ - Use std-lib xml instead of lxml to reduce dependencies and support ARM (#35 ).
23+ - Lessen restriction on Python version to any Python version ` >=3.7 ` , but ` <4.0 ` .
24+ - I was hoping to do ` ^3.7 ` , but some dependencies also require ` <4.0 ` therefore I cannot, for now.
25+ - Move Key ID parsing to static ` PSSH.parse_key_ids() ` method.
26+ - The ` shaka-packager ` subprocess call's return code is now returned from ` Cdm.decrypt() ` .
27+ - The flags variable of a ` Device ` now defaults to a dict, even if not set.
28+ - Heavily improve initializing of protobuf objects, improving readability, typing, and linting quite a bit.
29+ - Renamed Device's ` _Types ` enum class to ` DeviceTypes ` .
30+
31+ ### Removed
32+
33+ - Removed ` Device.Types ` class variable alias to ` _Types ` enum class as a static linter cannot recognize a class
34+ variable as a type. Instead, the actual ` _Types ` (now named ` DeviceTypes ` ) enum should be imported and used instead.
35+
36+ ### Fixed
37+
38+ - Ensure output directory exists before creating new ` .wvd ` files in CLI command ` create-device ` .
39+ - Ignore empty Key ID values in v4.0.0.0 PlayReadyHeaders.
40+ - Remove ` Cdm.system_id ` class variable as it conflicted with the ` cdm.system_id ` class instance variable of the same
41+ name. It's also generally not needed. The same data can be gotten via ` Cdm.uuid.bytes ` .
42+ - Casting of ` type_ ` when passed a non-int value in ` Cdm.get_license_challenge() ` .
43+ - Pass a PSSH object in ` test ` CLI command instead of a string.
44+ - Lower-case and setup ` __all__ ` correctly, add missing ` __all__ ` in some of the modules.
45+ - For the longest time I thought it was ` __ALL__ ` and an iterable of objects/variables.
46+ - However, its actually ` __all__ ` and explicitly a list of Strings...
47+
48+ ### New Contributors
49+
50+ - [ mediaminister] ( https://github.com/mediaminister )
51+
852## [ 1.6.0] - 2023-02-03
953
1054- Supported Serve API: ` v1.4.3 ` or newer
0 commit comments