What's Changed
This release includes significant tidying-up of both the codebase and the documentation, as well as a significant change, which is the move away from using FastAPI dependencies in Thing code.
Updating to v0.0.12 will require migration for Things written using previous versions of LabThings. Most old features are deprecated rather than removed, so it should be possible to migrate code gradually (except for the renamed lt.thing_action and lt.fastapi_endpoint which have had their prefixes removed). See the discussion in #194 for more details.
A full list of changes is below, in the form of pull requests merged since the last release.
- Update metadata for pypi by @bprobert97 in #153
- Simplify property and add type hints by @rwb27 in #155
- Enable bugbear rules by @rwb27 in #172
- Fix a race condition in test_actions_list by @rwb27 in #174
- Fix read-only properties in
DirectThingClientby @rwb27 in #173 - Add InvocationError for an error without traceback. Log cancel at info. by @julianstirling in #157
- Stricter mypy by @rwb27 in #176
- Raise better errors in observe_property, and test them. by @rwb27 in #175
- Test decorated actions by @rwb27 in #177
- Use config not model_config with create_model for pydatic 2.11 compatibility by @julianstirling in #181
- Stricter ruff by @rwb27 in #180
- Drop dependencies by @rwb27 in #194
- Server instantiates things by @rwb27 in #183
- Docs tidy after dropping dependencies by @rwb27 in #195
- Add a
mock_all_slotsoption tocreate_thing_without_serverby @julianstirling in #199 - Deprecation warnings for
v0.0.12by @rwb27 in #209 - Refactor descriptors, decorators and actions by @rwb27 in #213
- Rename fastapi_endpoint to endpoint by @rwb27 in #214
- Accept constraint arguments in property. by @rwb27 in #208
- Adapt to FastAPI changes by @rwb27 in #216
- Fix typing for actions. by @rwb27 in #215
- Version bump and readme by @rwb27 in #219
New Contributors
- @bprobert97 made their first contribution in #153
Full Changelog: v0.0.11...v0.0.12