Releases: enviodev/hyperindex
v2.5.2
Fixes
- Prevent Fuel indexer from double processing events in some cases during indexer restart by @DZakh in #272
- Fix links in the README.md by @JonoPrest in #271
Full Changelog: v2.5.1...v2.5.2
v2.5.1
Fixes
- Multichain indexers could reach reorg threshold early and start saving entity history before it needs to
- Multichain contracts using preRegisterDynamicContracts would exit the pre registration early due to hitting the reorg threshold early.
- Fix reorg threshold bugs by @JonoPrest in #268
Full Changelog: v2.5.0...v2.5.1
v2.5.0
New Feature
Dynamic Contract Pre-registration
You can now add "preRegisterDynamicContracts" flag to your event config. For all the events that have this config, there will be an end to end indexer run just for these events to run all the relevant contractRegister functions and collect all the dynamic contract addresses. The indexer then restarts with all these addresses from the start block configured for the network (rather than from the block that the contract gets registered). For a standard factory contract setup this drastically reduces indexing time since it doesn't result in many small block range queries but rather larger grouped queries.
PoolFactory.CreatePool.contractRegister(
({ event, context }) => {
context.addPool(event.params.pool);
},
{ preRegisterDynamicContracts: true },
);
What's Changed
- Dynamic Contract Pre Registration by @JonoPrest in #252
- Dynamic Contract Preregistration improvements by @JonoPrest in #259
Full Changelog: v2.4.4...v2.5.0
v2.4.4
What's Changed
- Fix missing nested dependencies in fuel types gen causing incorrect ordering of code generation by @DenhamPreen in #257
- Fix restart bug with dynamic contracts by @JonoPrest in #258
Full Changelog: v2.4.3...v2.4.4
v2.4.3
Fixes
- Fix
copy_table_to_entity_history
function being called on non reorg indexer by @JonoPrest in #256
Improvements
- Indexers with multiple partitions worth of addresses now execute partitioned queries concurrently
- Implement concurrent partitions by @JonoPrest in #246
- Simplify the getMostBehindPartitions function. by @JasoonS in #254
Full Changelog: v2.4.2...v2.4.3
v2.4.2
v2.4.1
v2.4.0
What's Changed
New Fuel receipt types support ⛽
Previously, you could only index LOG_DATA
receipts. The release supports indexing MINT
, BURN
, TRANSFER
, TRANSFER_OUT
, and CALL
receipt types.
Read more on the Fuel documentation page.
By @DZakh in #227, #228, #229, #239, #241
Customize decimal precision of BigInt
and BigDecimal
fields 💯
When working with large integers or high-precision decimal numbers in your application, you might need to customize the precision and scale of your BigInt
and BigDecimal
fields. This ensures that your database stores these numbers accurately according to your specific requirements. If you know your numbers will not be too big, you can also optimize the database by not over-allocating on the precision.
Example:
type Product {
id: ID!
price: BigDecimal @numeric(precision: 10, scale: 2)
}
In this example, the price
field can store numbers with up to 10 digits in total, with 2 digits after the decimal point (e.g., 99999999.99).
Read more on the Schema documentation page.
Fixes & Improvements 🔧
- Drastically improve historical sync performance with Reorg handling enabled by @JonoPrest in #220, #235
- Update npm package README.md by @DZakh in #232
Internal work 🧹
- Benchmark Improvements by @JonoPrest in #218, #242
- Remove unused
to_postgres_type
function from codegen by @JasoonS in #224 - Preparations for V2 Hosted Service: Add Prometheus Metric for synced at head and update pnpm install options by @MJYoung114 in #230
- Remove TS and Eslint dev dependencies from the Envio package by @DZakh in #233
- Start moving code from generated to the Envio package by @DZakh in #234, #238
- Preparations for the Fuel Mainnet launch by @DZakh in #237
- Clean cache guide by @JasoonS in #236
Full Changelog: v2.3.2...v2.4.0
v2.3.2
What's Changed
- Add partial support for Fuel Bytes type by @DZakh in #225
- Increase HyperSync client timeout to 2 min by @JonoPrest in #213
- Add Indexer Benchmarking System by @JonoPrest in #215
- Fuel Mint indexing support Part 1 - Implement HyperFuel query selection for Mint receipts by @DZakh in #214
Full Changelog: v2.3.1...v2.3.2
v2.3.1
What's Changed
Fixes 🔧
- Support indexing multiple events with the same sighash and different topics by @JonoPrest in #204
- Fix contract import for Fuel by @DZakh in #207, #208, #209
- Fix Vec support for Fuel by @DZakh in #206
- Deduplicate wildcard queries on multiple registers and partitions by @JonoPrest in #210
Internal Work 🏗️
- Add types and schemas for RPC interactions by @JonoPrest in #199
Full Changelog: v2.3.0...v2.3.1