Features
- Add Hydra support 219
- Add cifar ignite example 237
- Add auto extraction of `tar.gz` files when using `StorageManager` 237
- Add `Task.init()` argument `auto_connect_streams` controlling stdout/stderr/logging capture 181
- Add carriage return flush support using the `sdk.development.worker.console_cr_flush_period` configuration setting 181
- Add `Task.create_function_task()` to allow creating a new task using a function and arguments to be executed remotely 230
- Allow disabling SSL certificates verification using `Task.setup_upload()` argument `verify` or AWS S3 bucket configuration `verify` property 256
- Add `StorageManager.get_files_server()`
- Add `Task.get_project_id()` using project name
- Add `project_name` argument to `Task.set_project()`
- Add `Task.connect()` support for class / instance objects
- Add `Task get_configuration_object() and `Task.set_configuration_object()` for easier automation
- Improve Auto-Scaler - allow extra configurations, key name and security group are now optional, defaults using empty strings
- Use a built-in matplotlib convertor
- Add reporting text as debug sample example
Bug Fixes
- Fix Optuna HPO parameter serializing 254
- Fix connect dictionary `''` cast to `None` 258
- Fix lightgbm binding keyword argument issue 251
- Fix artifact preview if artifact body is remote URI 239
- Fix infinite recursion in `StorageManager` upload 253
- Fix keras reusing model object only if the filename is the same 252
- Fix running remotely with no configuration should not crash but output a warning 243
- matplotlib
- Fix matplotlib 3.3.3 support
- Fix global figure enumeration
- Fix binding without a title reported a single plot (`untitled 00`) instead of increasing the counter
- Fix Python 2.7/3.5 support
- Fix quote issue when reporting debug images
- Fix replace quote safe characters in upload file to include `;=$`
- Fix `at_exit` called from another process should be ignored
- Fix `Task.set_tags()` for completed / published tasks
- Fix `Task.add_tags()` not working when running remotely
- Fix `Task.set_user_properties()` docstring and interface
- Fix preview with JSON (dict) artifacts did not store the artifact
- Fix `Logger.report_text()` on task created using `Task.create()` was not supported
- Fix initialization for torch: only call torch `get_worker_info` if torch was loaded
- Fix flush (wait) on auxiliary task (obtained using` Task.get_task()`) should wait on all upload events
- Fix server was not updated with the defaults from the code when running remotely and configuration section is missing
- Fix connect dict containing `None` default values, blocked the remote execution from passing string instead of None
- Fix `Task.upload_artifact()` argument `delete_after_upload=True` used in conjunction with `wait_for_upload=True` was not supported