|
1 | 1 | # Changelog |
2 | 2 |
|
| 3 | +## Python Icechunk Library 1.1.0 |
| 4 | + |
| 5 | +### Features |
| 6 | + |
| 7 | +- Icechunk has an [asynchronous API](https://icechunk.io/en/latest/async/) now. |
| 8 | + - Icechunk internals continue to be fully asynchronous. Most "normal" use cases |
| 9 | + don't need the async API, the synchronous API will deliver the same performance. |
| 10 | + - The async API is useful to get optimal concurrency in operations involving |
| 11 | + multiple repos or multiple sessions. An example would be users who run Icechunk |
| 12 | + in the context of a service accessing multiple repositories. |
| 13 | + - Not every method in Icechunk has an async version, only those that can benefit because they do I/O. |
| 14 | + - The new methods have the same name as they synchronous ones with an `_async` suffix. |
| 15 | + They can be invoked on the same instances as usual. |
| 16 | + - Some Examples: |
| 17 | + - `Repository.create_async()` |
| 18 | + - `Repository.open_async()` |
| 19 | + - `Repository.garbage_collect_async()` |
| 20 | + - `Repository.total_chunks_storage_async()` |
| 21 | + - `Repository.lookup_tag_async()` |
| 22 | + - `Repository.readonly_session_async()` |
| 23 | + - `Repository.writable_session_async()` |
| 24 | + - `Session.commit_async()` |
| 25 | + - `Session.rebase_async()` |
| 26 | + - There are many more, check the [API reference](https://icechunk.io/en/latest/reference/) |
| 27 | +- Icechunk default log level is `warn` now, instead of `error`. |
| 28 | +- Emit a log warning and recommendation when manifests are too large for the configured cache |
| 29 | + size, which makes Icechunk less performant. |
| 30 | +- Add property accessors to `ManifestFileInfo` |
| 31 | + |
| 32 | +### Performance |
| 33 | + |
| 34 | +- We increased the size of the default asset caches |
| 35 | + - Snapshots nodes: 10k -> 30k |
| 36 | + - Chunk references: 5M -> 15M |
| 37 | + |
| 38 | +### Fixes |
| 39 | + |
| 40 | +- Validate urls on `set_virtual_ref` |
| 41 | + |
| 42 | +### API Breaking Changes |
| 43 | + |
| 44 | +There are two minor API breaking changes that will affect only virtual dataset users: |
| 45 | + |
| 46 | +- To improve security, the `url_prefix` of virtual chunk containers must be declared with a final `/` |
| 47 | + character now. This protects, for example, users from authorizing access to |
| 48 | + `foo` prefix and inadvertently authorize access to `foo-production`. |
| 49 | +- `set_virtual_ref` and `set_virtual_refs` now default to `validate_container = True`. This improves |
| 50 | + usability for repository writers, with an early error when they forget to create their virtual |
| 51 | + chunk containers. |
| 52 | + |
3 | 53 | ## Python Icechunk Library 1.0.3 |
4 | 54 |
|
5 | 55 | ### Fixes |
|
0 commit comments