You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: python/CHANGELOG.md
+29Lines changed: 29 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,6 +3,35 @@ All notable changes to this project will be documented in this file.
3
3
4
4
This project adheres to [Semantic Versioning](http://semver.org/).
5
5
6
+
## [v0.17.0] - June 3, 2026
7
+
8
+
### What's New
9
+
10
+
#### Update, Archive, and Unarchive Channels
11
+
Channels can now be edited from the Python client. Use `client.channels.update(channel, ChannelUpdate(...))` to change a channel's `description`, `unit`, `metadata`, or archived state, or call `update()`, `archive()`, and `unarchive()` directly on a `Channel`. Units are read and written by name, and `Channel` now exposes `metadata` and `is_archived`.
Data import now detects HDF5 files under three layouts, selected through the `data_type` argument with the new `DataTypeKey.HDF5_ONE_D`, `DataTypeKey.HDF5_TWO_D`, and `DataTypeKey.HDF5_COMPOUND` keys. `detect_config` and `import_from_path` also accept a new `time_format` argument; when omitted, HDF5 imports use `TimeFormat.ABSOLUTE_UNIX_NANOSECONDS`. HDF5 support remains an optional extra (`pip install sift-stack-py[hdf5]`).
20
+
21
+
#### Configurable Request Timeouts
22
+
gRPC and REST calls now accept a configurable default request timeout. Set `GrpcConfig(request_timeout=...)` for unary gRPC calls and `RestConfig(request_timeout=...)` for REST, both defaulting to 60 seconds. A per-call `timeout` overrides the default, `None` disables it, and long-running operations such as `wait_until_complete` and `wait_and_download` honor their own `timeout_secs`.
23
+
24
+
### Bugfixes
25
+
- Bound synchronous API calls so they fail fast instead of hanging the calling thread indefinitely when a request stalls or the client has already been closed. ([#613](https://github.com/sift-stack/sift/pull/613))
26
+
- Release the underlying gRPC channels on `close()` and `close_sync()` and make teardown idempotent, eliminating a shutdown warning, stall, and double-close hang at process exit. ([#595](https://github.com/sift-stack/sift/pull/595))
27
+
28
+
### Full Changelog
29
+
-[Add update, archive, and unarchive to Channel](https://github.com/sift-stack/sift/pull/599)
0 commit comments