All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Fix unable able fetch with small batch size issue (#847)
0.30.1 - 2022-03-10
- Fix enum sort order (#844)
0.30.0 - 2022-03-01
- Update imports, as substrate related components now will be imported from
subql/common-substrate
. (#781)
0.29.1 - 2022-02-23
- Fix get default subquery name (#820)
0.29.0 - 2022-02-23
- Update Polkadot/api to 7.9.1 (#815)
- Support node indexing from a manifest file (#800)
0.28.2 - 2022-02-16
- Update Polkadot/api to 7.8.1 ,in order to resolve previous release issue (#806)
0.28.1 - 2022-02-15
- Fixed issue that node stop fetch block when set batch size to 1. (#802)
0.28.0 - 2022-02-09
- Support running the indexer from locations other than the filesystem, and refactor
SubqueryProject
class (#511) - Add support for index dynamic datasources (#773)
- Add support for historical RPC methods that use BlockNumber (#788)
- Update Polkadot/api to 7.7.1 (#787)
- Fixed mmr initialization start height issue (#600)
0.27.2 - 2022-01-23
- Update Polkadot/api to 7.4.1 (#757)
- Fix genesis hash validation for manifest v0.0.1 (#762)
0.27.1 - 2022-01-18
- Ready endpoint return code (#750)
0.27.0 - 2022-01-13
- Deprecate local mode (#725)
- Update Polkadot/api to 7.3.1 (#745)
- Add ready status of indexer to endpoint (#728)
- Add
--port
option, auto find available port when the default one is occupied. (#739)ss
- Fix handle chainTypes error (#732)
- Try catch on init api with chainTypes (#738)
- Verify project store genesis hash with network genesis hash, instead of check specName only (#735)
- Remove update metadata last processed block by interval (#740)
- Use Promise.all for set metadata (#743)
0.26.0 - 2021-12-16
- Support dictionary for custom datasource (#686)
- Automatic adjust fetched block batch size based on memory usage, enable by passing
--scale-batch-size
(#668) - Depreciate subqueries table (#683)
- Add
bulkCreate()
tostore
(#699) - Add support for loading chaintypes from js (#698)
- Fix name escaping with db queries (#702)
- Fix
lastProcessedHeight
value representation (#711)
0.25.3 - 2021-12-02
Priority: High. Any project use enum should re-index with latest node ASAP.
- Skip insert poi when db transaction is null (#687)
- Replace enum index with unique hash value, in order resolve schema type name conflict issue.(#688)
0.25.2 - 2021-11-30
Priority: high for projects indexed with 0.25.x or above
- Upgrade dependency common, in order to remove auto generated enum types from entities relations (#682)
0.25.1 - 2021-11-27
Priority: high for projects use dictionary
- Fix variable replacement in dictionary's gql, remove the quote wrapping (#673)
- set default false for
--timestamp-field
(#661)
0.25.0 - 2021-11-19
- Fix publish failing with custom ds and assets (#610)
- Support for enum, add into store and store operations (#551)
- Allow running node from a different port through flag
—port
(#618) - Add flag
force-clean
, force clean the database, dropping project schemas and tables (#619) - Add
unsafe
flag for subql/node (#629)
- Merge metadata from query and node (#555)
- Refactor dictionary gql queries (#613)
- Use types mapping in storeOperation (#532)
- Replace patch api with
api.at()
(#638) - Update polkadot api to 6.9.2 (#648)
0.24.0 - 2021-11-03
- [custom ds] Read and feed assets to custom ds's
validate()
(#547) - Improve error msg when fetch block fails (#602)
- Bump dependencies (#584)
- Moonbeam EVM, filter before transforming with custom datasource (#593)
- Update Polkadot/api to 6.6.1 (#599)
- Moonbeam networks shows negative bps and fail Healthy checks (#589)
0.23.1 - 2021-10-27
- Disable the profiler on health check and remove logs (#569)
0.23.0 - 2021-10-26
- Add MMR service allow to acquire Proof of index information and generate Merkle mountain range root, create and store root value in a file-based database, simultaneously it updates in the corresponding MMR value in the
_poi
table. This feature will be running along with the Proof of index service, also allow the user to specify a local path for .mmr by using flag--mmr-path
. (#488) - Introduce custom datasource (beta), enable subql to support a vary kind of smart contract solutions that embedded in parachains (#512)
- Update Polkadot/api to 6.5.2 (#564)
- Performance improvement (#565)
0.22.0 - 2021-10-12
- Update Polkadot/api to 6.3.1 to support metadata v14 (#505)
- Fetch service improve logs to include block height,it threw error at the time (#492)
- Throw errors when connection dropped by http, and exit (#519)
- Addition fix for Poi service with if condition (#508)
- Support project manifest 0.2.0 (#495)
0.21.1 - 2021-09-18
- Fixed apollo/client dependency issue (#482)
0.21.0 - 2021-09-16
- Update Polkadot/api to 5.9.1 (#476)
- Api service support http(s) endpoint (#474)
- Add Proof-of-index service allow generate and record the hash of indexed work. User can enable this feature through the
--proof-of-work
command. Please note that this feature is currently in an experimental stage. (#443)
0.20.3 - 2021-09-01
- Update Polkadot/api to 5.7.1 (#460)
0.20.2 - 2021-08-28
- Solve the missing block height of the event/extrinsic in the batch returned by the dictionary service (#452)
0.20.1 - 2021-08-27
- Deprecated warnings (#448)
0.20.0 - 2021-08-20
- Update Polkadot/api to 5.5.2 (#439)
- support interpret Bytea type (#432)
0.19.2 - 2021-08-16
- Improve data sources filtering handling and error messages (#417)
- Adjust health check time to be the same as indexer timeout, or a minimum of 900 seconds. Also, log error when it is not healthy (#420)
- Update Polkadot/api to 5.5.1 (#433)
0.19.1 - 2021-07-29
- When the schema object type is an array convert to Jsonb type (#406)
0.19.0 - 2021-07-27
- Bump
polkadot/api
to 5.2.1 (#402)
- Disable
api.at()
in patched API (#402) - Fix to improve snake case handling for foreign keys and unique index constraint (#382)
- Fix
subql-node --help
so that it displays full options (#396)
- Expose best block height in meta (#392)
0.18.0 - 2021-07-06
- Fix metric listener handle skip dictionary (#380)
0.17.4 - 2021-07-06
- Fix problem when filling the block number buffer missing the last number which has caused some block records are missing. (#378)
0.17.3 - 2021-07-06
- Fixed bug that prevented indexes from being added automatically on foreign keys (#371)
- add profiler to monitoring indexer performance (#369)
- add metrics to listen status of using dictionary and number of times it been skipped. (#369)
0.17.2 - 2021-07-01
- fix get runtimeVersion failed when fetch service initialization (#367)
- set useDictionary to false when one of the event/extrinsic filters are not provided (#367)
0.17.1 - 2021-06-29
- Fix an edge case for dictionary query, add blocknumber max range to speed up dictionary (#365)
0.17.0 - 2021-06-25
- Add an external dictionary feature to massively improve indexing speed.
- Enable by
--network-dictionary=<dictionary_HTTP_url>
or inproject.yaml
- read more (#342) - Add dictionary service to fetch dictionary from external GraphQL API (#342)
- Add additional block number buffer in fetch service to handle incoming dictionary data (#342)
- Enable by
- replace vm2 with @subql/x-vm2 (#358)
- Update other dependencies (#358)
0.16.2 - 2021-06-28
- Bump polkadot/api to 4.16.2 (#363)
0.16.1 - 2021-06-22
- Add arg for enable/disable timestamp created_at and updated_at though
--timestamp-field
(#352)
0.16.0 - 2021-06-22
- metadata expose last processed block (#327)
- Remove created_at and updated_at from table (#343)
- Bump polkadot/api to 4.15.1 (#350)
0.15.1 - 2021-05-27
- Bump polkadot/api to 4.11.2
0.15.0 - 2021-05-24
- Bump polkadot/api to 4.11.1
- Skip fetch finalized block until API is ready.
- Fix indexes detection
0.14.0 - 2021-05-19
- Use pull instead of subscribe to get new block height. This solves issues where the subscription stalls and SubQuery reports an incorrect block height.
- Not all
api.rpc
are banned now, historical RPC methods can be called. See the docs link (#304) - Bump polkadot/api dependency (#310)
- Replace vm2 with fork to support lib like
@polkadot/*
that uses esm as default (#311)
0.13.0 - 2021-05-06
- Bump release version due to recent major updates, also need publish new release to npm.
0.12.3 - 2021-05-04
- Automatically verifies that a model's indexed fields are supported by extracting indexed fields from the database (#289)
- [Experimental Feature] We're removed the restrictions on using third party CommonJS libraries in your SubQuery project sandbox - please read more about this in our updated documentation (#292)
- Support for more NodeJS modules (
buffer
,crypto
,util
,events
, andpath
) (#294)
0.12.2 - 2021-04-21
- Enforce index on foreign key field (#285)
- Improve logs for db sync, catch error and exit (#283)
0.12.0 - 2021-04-20
- Bump dependencies for logger
- Fix query for double map storage (#269)
- Support network filter for dataSources (#247)
- Expose events in SubstrateBlock (#256)
- api.findCall and api.findError will use current block's metadata (#251)
- Inject global variable logger in sandbox and depricated console.log in subquery project, use logger instead. (#259)
- Create indexes on the fields with @index and allow querying by indexed field (#271)
- Create jsonb column for fields marked as jsonField in schema.graphql (#275)
- Bump @polkadot/api version to v4.6.2
0.11.0 - 2021-03-25
- Fix benchmark output format issues (#235)
- Only warning when user set start block to number smaller than 1. (#239)
- Support entity relations (#132)
- Refactor api.query...multi(), api.queryMulti() to use rpc.queryStorageAt() (#244)
0.10.2 - 2021-03-11
- refactor logger to @subql/common (#220)
- Bump polkadot/js version to v4.0.3 which shall fix a chain data decoding issue (#222)
0.10.1 - 2021-03-03
- use parent's specVersion to decide if metadata need to be injected (#211)
0.10.0 - 2021-03-03
- performance improvement: reduce injectMetadata call (#206)
- performance improvement: reduce specVersion query for each batch (#207)
0.9.2 - 2021-03-03
- more comprehensive timeout error stack (#198)
- use logger.info() instead of log() for sandbox logging (#197)
- estimate time remaining consider block increases (#199)
- add configurable timeout (#202)
- bump @polkadot/api to 3.11.1 (#203)
0.9.1 - 2021-03-03
- revert metrics name changes (#193)
- Update subquery starter repo path to new organization (#196)
0.9.0 - 2021-02-23
- Ian improve error logging (#181): support --log-level flag, error stack will be correctly organized
- Add benchmark outputs (#183): will print benchmark stats every 15s
- add meta api and store network info in subqueries table (#191)
- fix memory overflow and timeouts while indexing a large number of events
0.8.3 - 2021-02-17
- keep retrying failed block not skipping it (#175)
0.8.2 - 2021-02-16
- fix query.system.lastRuntimeUpgrade return null before the first runtime upgrade, use rpc.state.getRuntimeVersion instead (#169)
- after connection reconnected, indexing will now resume (#168)
0.8.1 - 2021-02-15
- fix dependencies (#164)
0.8.0 - 2021-02-15
- bump dependencies
- don't freeze table name (#161)
- cache metadata if specVersion bumped (#156)
- improve logging, support --output-fmt=json (#158)
- support override network endpoint from --network-endpoint flag (#157)
- add prometheus metrics (#159)
0.7.0 - 2021-01-27
- fix crash for events not own by extrinsic (#120)
- batch fetch blocks (#124)
- wrap all handler executions of same block in a db transaction (#125)
- node add startscript (#128)
0.6.0 - 2021-01-25
- bump @polkadot/api (#90)
- clean up console output unless start with --debug (#95)
- bump @polkadot/api to v3.6.3 (#109)
- patch and inject api in sandbox context (#103)
- support specVersion filter and success filter (#106)
- support other custom types option that @polkadot/api has (#107)
0.5.0 - 2021-01-15
- Fix BigInt transformation (#79)
- escalate sandbox out of IndexerManager (#83)
0.4.0 - 2021-01-12
- allow user to define start block in project (#54)
- add local flag to support create all tables in the default db schema (#59)
- retry when can not establish connection with postgres (#61)
- add priority to find subquery project entry point from package json file (#60)
- support load project from tarball file (#55)
- read db connection strings from env (#63)
- [BREAKING] project manifest spec updated to support custom types (#65)
0.3.0 - 2021-01-06
- support callHandler and eventHandler (#47)
- support block handler
- put subquery tables in their own db schema
- use BigInt instead of BN (#27)
- bump @polkadot/api to 3.1.1