Releases: enviodev/hyperindex
v2.2.1
What's changed
- π Fix
Historical Sync Time
to consider timezones for TUI and Hosted Service
Full Changelog: v2.2.0...v2.2.1
v2.2.0
What's Changed
Features π
New Timestamp
scalar type available in schema.graphql
. It's represented as an instance of Date
, making your handlers and queries more flexible, fast, and explicit.
By @moose-code and @DZakh in #156
Fixes & Polishing
- Update
Viem
version to the latest V2 to fix type conflicts with theViem
version on user-side by @DZakh in #159β οΈ Be careful if you're usingViem
V1 in your indexer handlers. This change might cause unexpected behavior. - Fix incorrect import of a type, which caused
tsc --build
to fail. Also, prevent this from happening in the future by adding a TypeScript type check to CI pipeline by @DZakh in #165 - Fix codegen with HyperSync/RPC endpoint in the config having a trailing slash by @JasoonS in #164
- Update the supported chains list by adding new chains and removing deprecated ones by @JasoonS in #163
- Remove dependency on
Ethers.Interface
by @DZakh in #155
Other
- Working on Wildcard Indexing feature implementation by @JonoPrest in #135, #151, #160, #161
- Working on Fuel merge by @DZakh in #155
- Add script to help update the chain list by @JasoonS and @JonoPrest in #162
Full Changelog: v2.1.4...v2.2.0
v2.1.4
What's Changed
Replacing lists with arrays in v2.1.0 incurred a significant performance regression due to using Array.slice method. This removes the use of Array.slice and improves performance.
- Refactor array slicing code to reversed arrays with pop by @JonoPrest in #157
- Bump fuel package version to 2.2.3 by @JonoPrest in #158
Full Changelog: v2.1.3...v2.1.4
v2.1.3
What's Changed
Templates are now initialized with rollback_on_reorg
set to false to allow the fastest possible historical sync while developing an indexer
- Opt out of rollback on reorg for templates by @JonoPrest in #154
Fuel merge
- Fuel merge part 4 - make codegen work without compilation errors by @DZakh in #144
- Use [email protected] which supports Address.toString in initial templates by @DZakh in #148
- Fuel merge part 3 - Start working on EventMod codegen by @DZakh in #150
General
- Clean up internal event is_async flag by @DZakh in #145
- Add unit tests for fetchstate by @JonoPrest in #146
- Use Viem for address parsing and remove checksum since it's done on the client by @DZakh in #149
- Fix static address checksumming by @DZakh in #153
Full Changelog: v2.1.2...v2.1.3
v2.1.2
What's Changed
- Add support for the new fuel abi format by @DZakh in #141
- Udpate fuel greeter abi by @DZakh in #143
- Fix contract registration bug @JonoPrest in #142
- Upgrade hypersync client to 0.6.2 by @JonoPrest in #140
Full Changelog: v2.1.1...v2.1.2
v2.1.1
What's Changed
Fixes
- Fix types and validation for nullable fields in the field selection by @JonoPrest in #136
- Fix the "Maximum call stack size exceeded" error for indexers with a big number of dynamic contracts by @JonoPrest in #138
- Update the Fuel Greeter template to include the
ecosystem
field in the config by @DZakh in #134 - Remove deprecated alternative Hasura playground from init templates by @DZakh in #134
- Fix the description of the
schema
field in the config file by @DZakh in #137 - Improve error message when trying to run Fuel indexer with the Evm envio package by @DZakh in #137
Internal
Full Changelog: v2.1.0...v2.1.1
v2.1.0
What's Changed
Features
- Allow custom names for events by @DZakh in #132
This is useful when you want to have a different name on the Envio side; or index events with the same name but different signatures:- event: Assigned(address indexed recipientId, uint256 amount, address token) - event: Assigned(address indexed recipientId, uint256 amount, address token, address sender) name: AssignedWithSender
Fixes & Polishing
- Fix progress bar for chains with 5000+ registered contract addresses by @JonoPrest in #124
- Fix "Maximum call stack size exceeded" error in reorgs logic by @JonoPrest in #125
- Memory and performance improvements by @JonoPrest in #127
- Update schema documentation on rollback_on_reorg to say that it's defaulted to true by @JonoPrest in #131
- Init Fuel indexer with the
[email protected]
version which fixes dynamic contracts by @DZakh in #126 - Improve error message for invalid contract and event names by @DZakh in #133
Full Changelog: v2.0.1...v2.1.0
v2.0.1
What's Changed
- Remove log by @JonoPrest in #113
- Contract import fix by @moose-code in #114
- Update hypersync client field selection and bindings by @JonoPrest in #117
- Remove envio-win32-x64 as an optional dep by @JonoPrest in #119
- Update to hs client 0.5 with size as bigint by @JonoPrest in #120
New Contributors
- @moose-code made their first contribution in #114
Full Changelog: v2.0.0...v2.0.1
v2.0.0
What's Changed
- V2 by @JonoPrest in #35
- BigInt clean up by @DZakh in #48
- Enable Uncurried mode by @DZakh in #49
- Support event param names as reserved rescript keywords by @DZakh in #51
- Uncurried mode for Fuel by @DZakh in #52
- Generate json schema for config.yaml by @DZakh in #56
- Update rescript schema to V7 by @DZakh in #57
- Add commands for updating schemas and help docs by @JonoPrest in #58
- Move codegen from Config.res file by @DZakh in #59
- Clean up how we codegen Config by @DZakh in #60
- Implement partitioning of fetch state by @JonoPrest in #55
- Implement Field Selection by @JonoPrest in #61
- Support nested abi field by @DZakh in #64
- Improve missing global contract error message by @DZakh in #65
- Fix integration tests by @JonoPrest in #66
- Move Converters to static codegen by @DZakh in #67
- Treat rc as valid envio version by @DZakh in #68
- Update fuel version by @DZakh in #69
- Backup rpc urls by @DZakh in #70
- Add contract import for amoy by @JasoonS in #73
- Lookup events in config by @DZakh in #72
- Fix tests by @DZakh in #75
- Use rescript-schema V8 by @DZakh in #74
- Improve failure message of contract import unhandled array types by @JonoPrest in #77
- Add generic ChainWorker module by @DZakh in #78
- Opt-in raw events by @DZakh in #80
- Remove rescript_type duplication by @DZakh in #81
- Fix integration tests after raw events removal by @DZakh in #84
- Use fuel 2.1.2 by @DZakh in #85
- Implement hack for detecting invalid api key and prompting by @JonoPrest in #83
- Add id validation for entity parsing by @DZakh in #86
- Increase stallTimeout for rpc by @DZakh in #76
- Remove codegen rescript format by @DZakh in #89
- Improve logging in a few places so more context is shared with logs such as chainId by @JasoonS in #90
- Remove event_type by @DZakh in #91
- Implement updated bindings for hs client by @JonoPrest in #88
- Initial implementation of whereEq queries by @JonoPrest in #79
- V2 Implement restart filter for partially processed block by @JonoPrest in #93
- Add back shouldExitOnFailure variable by @JonoPrest in #95
- Add support for dotenv by @JonoPrest in #94
- Remove rescript core by @DZakh in #96
- chore: add open licensing to repository by @DenhamPreen in #45
- Perf optimisations by @DZakh in #98
- Update npm links to point to correct repo by @JasoonS in #100
- Change 'docker-compose' to 'docker compose' by @JasoonS in #101
- [1] Prompt for API key on init by @JonoPrest in #97
- Make should_rollback_on_reorg default to true by @JonoPrest in #104
- [2] Add TUI messages by @JonoPrest in #103
- Refactor LoadLayer by @DZakh in #99
- Evaluate rows on addEmptyIndex by @JonoPrest in #105
- Use 2.1.4-fuel by @DZakh in #107
- Add api token to template by @JonoPrest in #108
- Add Fuji network to chain list by @JasoonS in #102
- Update schema descriptions by @JonoPrest in #109
- Remove footer from CLI Help by @JonoPrest in #110
- Preserve ordering of schema for docs by @JonoPrest in #111
- Rename unstable sync config by @JonoPrest in #112
Full Changelog: v1.3.1...v2.0.0
v2.0.0-rc.5
What's Changed
- Improve logging in a few places so more context is shared with logs such as chainId by @JasoonS in #90
- Removed
eventName
type by @DZakh in #91 - Added support for
whereEq
queries in the loader by @JonoPrest in #79 - Fix indexer restart on a partially indexed block by @JonoPrest in #93
- Add support for
dotenv
by @JonoPrest in #94 - Remove
@rescript/core
package from dependencies by @DZakh in #96 - Add open licensing to the repository by @DenhamPreen in #45
- Update npm links to point to the correct repo by @JasoonS in #100
- Fixed CI by changing 'docker-compose' to 'docker compose' by @JasoonS in #101
- Prompt for Envio API key on init by @JonoPrest in #97
- Set
should_rollback_on_reorg
default to true by @JonoPrest in #104 - Add TUI notifications by @JonoPrest in #103
- Refactor LoadLayer to make it more performant and reliable by @DZakh in #99
- Use envio Fuel indexer 2.1.4 by @DZakh in #107
- Add API token example to templates by @JonoPrest in #108
- Add Fuji network to chain list by @JasoonS in #102
Full Changelog: v2.0.0-rc.4...v2.0.0-rc.5