Added
- The `tiled serve ...` CLI commands now accept a `--log-config` option,
pointing to a custom uvicorn logging configuration file. An example
file was added to the repository root, `example_log_config.yml`.
- Added `tiled.adapters.protocols` which will provide possibility for user to
implement their custom adapters in a way that satisfies mypy.
- Added `tiled.client.smoke` with a utility for walking a node and ensuring
that the data in it can be read.
- Added `tiled.client.sync` with a utility for copying nodes between two
Tiled instances.
- Show authentication state in `Context` repr.
Changed
- SQLite-backed catalogs now employ connection pooling. This results in a
significant speed-up and avoids frequently re-opening the SQLite file.
- Metadata returned from the use of the `select_metadata` is now a one-item
dictionary with 'selected' as the key, to match default type/behavior.
- The method `BaseClient.data_sources()` returns dataclass objects instead of
raw dict objects.
- `tiled.client.sync` has conflict handling, with initial options of 'error'
(default), 'warn', and 'skip'
Fixed
- Propagate setting `include_data_sources` into child nodes.
- Populate attributes in member data variables and coordinates of xarray Datasets.
- Update dependencies.
- Fix behavior of queries `In` and `NotIn` when passed an empty list of values.