Skip to content
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

Merge upstream - 16-09-2024 #63

Merged
merged 22 commits into from
Sep 16, 2024

Conversation

sameersubudhi
Copy link
Member

@sameersubudhi sameersubudhi commented Sep 16, 2024

What was the problem?

This PR resolves LISK-1099

How was it solved?

  • git merge -S upstream/master -X theirs
  • Explicitly added the API server start commit
  • Fix docker GHA workflow file

How was it tested?

yarn install && yarn eslint && yarn format && yarn build
yarn relay --wallet void --address <ADDRESS>

pxrl and others added 21 commits September 6, 2024 11:32
…col#1802)

Has been used to initiate a slow fill for a user in Discord.
There's duplication between updateRelayerClients() and the main relayer
loop. This can be optimised and rate-limited by unifying the logic.

No change in behaviour yet - the code is just relocated.
This ensures that token approvals are in place for all tokens held by
the relayer EOA. For 99.999% of the time it's fine to do this once on
startup; it doesn't need to be repeated on each loop.

This also removes a redundant tokenClient.update() call that is being
performed on each loop.
…ol#1810)

The contract object is quite large and seems to be upsetting the logger
- potentially due to recursion when unpacking the JSON object. There's
no need to log the contract anyway; the intention is only to log the
address.
…protocol#1808)

If there are no cross-chain transfers to update then don't bother
logging about it.
…protocol#1756)

* improve(adapters): swap polygon adapter with generic adapter

Signed-off-by: bennett <[email protected]>

---------

Signed-off-by: bennett <[email protected]>
* improve: use migrations

Signed-off-by: james-a-morris <[email protected]>

* chore: tests

Signed-off-by: james-a-morris <[email protected]>

* chore: bump to beta version

Signed-off-by: james-a-morris <[email protected]>

* chore: bump SDK

Signed-off-by: james-a-morris <[email protected]>

* chore: refactor out bundle data client file

Signed-off-by: james-a-morris <[email protected]>

* chore: remove unneeded promise

Signed-off-by: james-a-morris <[email protected]>

* chore: find all _getPoolRebalanceRoot

Signed-off-by: james-a-morris <[email protected]>

* chore: upgrade sdk

Signed-off-by: james-a-morris <[email protected]>

* chore: bump sdk

Signed-off-by: james-a-morris <[email protected]>

* chore: upgrade to latest sdk

Signed-off-by: james-a-morris <[email protected]>

---------

Signed-off-by: james-a-morris <[email protected]>
This should provide more descriptive error outputs when something goes
wrong during an RPC query.
* fix(providers): pass logger to provider

Signed-off-by: james-a-morris <[email protected]>

* set default logger for retry providers (across-protocol#1813)

---------

Signed-off-by: james-a-morris <[email protected]>
Co-authored-by: Melisa Guevara <[email protected]>
…tocol#1814)

There's no need to compulsively check ETH and WETH balances in looping
mode. This clutters the logs a lot, increases the relayer's exposure to
delays on RPC queries and generally unnecessarily increases RPC 
consumption. Instead, rate-limit these tasks to a default of 1/minute,
with the option to override via the RELAYER_MAINTENANCE_INTERVAL
configurable .

As part of this change, refactor some other calls from
src/relayer/index.ts to methods within the relayer class.
…ocol#1781)

The fast relayer can presently have multiple concurrent instances
for a short period of time because there is no method of coordinating
the "active" relayer. This can cause some collisions when both relayer
instances attempt to fill the same transaction(s), and requires that the
relayer be stopped via a SIGHUP, which is slightly awkward in the
serverless environment.

This change instead uses redis as a coordination mechanism between
relayer instances, such that a new relayer will update a specific redis
record when it is ready to take over from any previous instance.
Likewise, and existing instance will detect when the record is updated
and will gracefully exit thereafter.
…otocol#1714)

* improve(adapters): swap Linea adapter with generic adapter

Signed-off-by: bennett <[email protected]>

---------

Signed-off-by: bennett <[email protected]>
Co-authored-by: James Morris, MS <[email protected]>
Co-authored-by: Paul <[email protected]>
…col#1817)

Per current implementation, the relayer can prematurely mark a deposit
as filled if it _intends_ to fill it. This can however be derailed in
the event that the destination chain has pending fills, in which case
the fill transaction is discarded. This creates problems for fill status
tracking, which is otherwise marked at the time the transaction is
enqueued.

The simple fix is to filter candidate deposits by whether their
destination chain has pending fills. A more optimised version, which
might follow, would apply a pending status for these fills and would
apply that pending status at the time of transaction submission. That's
more complex for an (at best) marginal benefit, so proceed with the
simple solution for now.
Bumps [express](https://github.com/expressjs/express) from 4.19.2 to 4.20.0.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](expressjs/express@4.19.2...4.20.0)

---
updated-dependencies:
- dependency-name: express
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: nicholaspai <[email protected]>
…1819)

Bumps [body-parser](https://github.com/expressjs/body-parser) from 1.20.0 to 1.20.3.
- [Release notes](https://github.com/expressjs/body-parser/releases)
- [Changelog](https://github.com/expressjs/body-parser/blob/master/HISTORY.md)
- [Commits](expressjs/body-parser@1.20.0...1.20.3)

---
updated-dependencies:
- dependency-name: body-parser
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [micromatch](https://github.com/micromatch/micromatch) from 4.0.5 to 4.0.8.
- [Release notes](https://github.com/micromatch/micromatch/releases)
- [Changelog](https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md)
- [Commits](micromatch/micromatch@4.0.5...4.0.8)

---
updated-dependencies:
- dependency-name: micromatch
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: nicholaspai <[email protected]>
Bumps [axios](https://github.com/axios/axios) from 1.6.1 to 1.7.4.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](axios/axios@v1.6.1...v1.7.4)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: nicholaspai <[email protected]>
No change in functionality intended - this is pure cleanup.
@sameersubudhi sameersubudhi self-assigned this Sep 16, 2024
@sameersubudhi sameersubudhi merged commit 3dcd777 into master Sep 16, 2024
1 check passed
@sameersubudhi sameersubudhi deleted the LISK-1099-Merge-upstream-16-09-2024 branch September 16, 2024 10:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants