Hey @Community a new major version for specklepy
is live.
This release marks the introduction of SpecklePy 3.0.0—the first SDK version built for compatibility with the NextGen Speckle connectors. It represents a major refactor of the object model, API surfaces, and transport layers to support Speckle’s v3 data schemas and workflows.
Breaking Changes
- Full transition to v3 object model. All legacy Speckle data types (v2) have been replaced and they are not available any more in the SDK. If you are still operating on V2 connector data, we recommend pinning your
specklepy
version to the latest release, which is currently2.23.0
. - Removal of FE1 (GraphQL v1) client functions. All “FE1” aka old nomenclature (streams, branches, commits) mutations, and queries have been stripped out. Instead, a new FE2 API is used for all operations, so code using the old
stream
/client.branch
queries must be updated to their new equivalents. The migration is mostly a drop in replacement. - Minimum Python version bumped to ≥ 3.10. Support for Python 3.8 and 3.9 has been dropped; if you’re still on an older interpreter, you’ll see compatibility errors until you upgrade.
Features & Enhancements
Completely redesigned object schema
- With the NextGen connector releases, we’ve redesigned our objects schema from the ground up to make it easier to get raw access to your 3D data.
Read more on the migration on our blog
Speckle Automate updates
- The Automate integration has been updated to use the new API only. Keep the breaking changes mentioned above while upgrading your function.
- The
attach_{result/error/warning...}_to_objects
function signatures have been changed to require passing in the affected objects by reference, not just theirobjectIds
. This allows us to better integrate automation results in our connectors. - The function template has also been updated to reflect these changes.
- It also got some simplifications to its packaging and project management system. We’ve dropped
poetry
as a dependency and we’re now relying on plain oldpip
with the new standardpyproject.toml
spec to manage your project and its dependencies. Read more in detail in the function readme.
That’s it for specklepy
v3, stay tuned for a similar post for our c# stack soon.