-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Migrate to AirseekerRegistry contract #165
Conversation
217d2a7
to
3b4620b
Compare
0c1ad3a
to
5354a23
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@peterjurco you can take a look at https://github.com/api3dao/airseeker-v2/blob/upgrade-contracts3/test/setup/contract.ts to see how contracts are setup and https://github.com/api3dao/airseeker-v2/blob/upgrade-contracts3/src/update-feeds-loops/contracts.ts how to work with it.
I made some changes to AirseekerRegistry that I haven't decided to keep yet. Giving a heads up because they probably cause the CI of this branch to fail. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is of course a pretty big PR, but I don't see anything incorrect/inefficient/etc.
So LGTM 💪
* Update deterministic address * Expose data feed ID for local test configuration * Update contract function naming in local test configuration * Improve readability of comment * Check against unexpected update parameters format
e542112
to
4e8f3d5
Compare
Thanks everyone 💪 . |
Closes #163
Rationale
The contract is a bit more generic and allows supporting data feeds via ID (not dAPI name). The code was previously tailored to dAPIs and used often used
dapi
for naming. These are renamed to a more generic and accuratedataFeed
instead.The contract name changed from
DapiDataRegistry
toAirseekerRegistry
. It usesApi3ServerV1
to read the data feed details and can return no data in case the data feed is not registered. This is now explicitly handled by skipping such data feeds and logging a warning.Both spec and diagrams are updated accordingly.