New features added
* [Backport release-1.15] [python] Add region columns and metadata to SpatialData by github-actions in 3556
* [Backport release-1.15] [python] Handle non-list/non-tuple input in `tiledbsoma.io` registration by github-actions in 3520
* [Backport release-1.15] [c++] When a group has no type info, say its name by github-actions in 3532
* [Backport release-1.15] [c++] Show which coordinate is out of range in `fastercsx` error messages by github-actions in 3541
* [Backport release-1.15] [python] Add support for Visium v1 by github-actions in 3550
Bug fixes
* [Backport release-1.15] [python] Link lifetimes of `SOMAArray` and `ManagedQuery` by github-actions in 3522
* [Backport release-1.15] [python] Fix casting bug in `IntIndexer` by github-actions in 3527
* [Backport release-1.15] [python] Account for missing end-rows in shape-upgrader by github-actions in 3540
* [Backport release-1.15] [python] Implement `read`, `seek`, and `tell` for `SOMAVFSFilebuf` by github-actions in 3547
* [Backport release-1.15] [C++] Fix `ManagedQuery` segv: ctor/dtor order fix by github-actions in 3549
* [Backport release-1.15] [python] Validate byteorder on `fastercsx` argument arrays by github-actions in 3521
Minor changes
* [Backport release-1.15] [python] Fix and clean up basic `Scene` test by github-actions in 3523
* [Backport release-1.15] [python] Unpin `scipy` by github-actions in 3528
* [Backport release-1.15] [c++] Bump `spdlog` to 1.15 and remove patch by github-actions in 3531
* [c++] Fix backport on 3541 by johnkerl in 3542
* [Backport release-1.15] Bump jinja2 from 3.1.4 to 3.1.5 in /doc by github-actions in 3546
* [Backport release-1.15] [python] Inline `_read` and `AxisQueryResult` to `to_anndata` by github-actions in 3555
* [r] TileDB-SOMA 1.15.3 by johnkerl in 3551
**Full Changelog**: https://github.com/single-cell-data/TileDB-SOMA/compare/1.15.2...1.15.3