Release 4.0.0
·
23 commits
to production
since this release
This release supports Dragonchain's accompanying 4.0.0 release.
Because Dragonchain has a breaking change to replace its indexing solution with 4.0.0, this is also a breaking SDK change for queries and custom indexing.
The following are worth noting when transitioning from 3.X.X to 4.X.X:
- Custom indexes have changed for a new redisearch schema. Transaction types can no longer be updated, and custom indexes must be provided upfront when creating a transaction type or smart contract. If updating is desired, simply delete and recreate the relevant transaction type/smart contract with the new desired custom indexes.
- A transaction type's indexes are now removed when the transaction type is deleted. You can no longer query for transactions from a deleted transaction type (or smart contract). (The transactions still exist and can be retrieved directly by transaction id, they simply can't be searched with a query)
- Querying blocks and transactions are completely different, and now use Redisearch queries. Check their client functions for argument reference. Note the response schema of queries remain unchanged.
- Smart contract querying has been removed, and instead replaced with a generic
list_smart_contractswhich simply returns all contracts.
Check the docs for more details on migrating from v3 to v4.
Changelog
Features:
- Support new query endpoints/parameters for redisearch replacement on dragonchain
- Support adding custom indexes for smart contracts on creation
- Support optionally fetching ids only (not entire documents) for querying
- Support list smart contracts
- Support disable schedule for
update_smart_contract - Support new smart contract logs endpoint
Documentation:
- Added docs for migrating from v3 to v4
Development:
- Modify integration test suite to integrate with new/modified endpoints
Packaging:
- Update packaged metadata to indicate supported OS and stable/typed
- Enforce stricter rules when building docs