The crawler has fallen into the darkness of needing urgently new updates, as it has been without any kind of update last year. Even after a few attempts at doing so, there were pretty nasty turnarounds to fix the tricky Ethereum secp256k1 keys and Libp2p's new formats/structs that didn't really work.
Thus, here we are, trying to make every as whiny as possible.
Description
This PR aims to catch up with the latest versions of most of the dependencies, including the upgrade of the go version to a more recent one (one that supports Generics 🤫 )
Tasks
[x] Upgrade the go versions to 1.21
[x] Upgrade the dependencies to the latest available ones
[x] Upgrade/rebase the pubsub fork to the latest changes, maintaining the mods
[ ] Make sure that everything still compiles and works
[x] Come up with a cool turn around the Private/Public key swaping between Eth and Libp2p structs
[x] Update the code to support the Mainnet/Deneb hardfork (more work on this will have to be done later on)
Proof of Success
So fat it manually compiles without problem:
$ make build
go get
go build -o "./build/armiarma"
$ docker compose build eth_crawler
WARN[0000] The "CRAWLER_SSE_PORT" variable is not set. Defaulting to a blank string.
[+] Building 39.8s (18/18) FINISHED docker:default
=> [eth_crawler internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 643B 0.0s
=> [eth_crawler] resolve image config for docker.io/docker/dockerfile:1 1.0s
=> CACHED [eth_crawler] docker-image://docker.io/docker/dockerfile:1@sha256:ac85f380a63b13dfcefa89046420e1781752bab202122f8f50032edf31be0021 0.0s
=> [eth_crawler internal] load metadata for docker.io/library/debian:buster-slim 1.0s
=> [eth_crawler internal] load metadata for docker.io/library/golang:1.21-alpine 0.9s
=> [eth_crawler internal] load .dockerignore 0.0s
=> => transferring context: 145B 0.0s
=> [eth_crawler builder 1/8] FROM docker.io/library/golang:1.21-alpine@sha256:d7c6083c5400694f7a17b07c4fad8db9115c0e8e3cf62f781cb29cc890a64e8e 0.0s
=> [eth_crawler internal] load build context 0.5s
=> => transferring context: 42.28MB 0.4s
=> [eth_crawler stage-1 1/3] FROM docker.io/library/debian:buster-slim@sha256:4620251e86cea652ef2746c8abef2fcc3ea54abb5f014bfbf841159d805cd1fd 0.0s
=> CACHED [eth_crawler builder 2/8] RUN apk add --no-cache git 0.0s
=> CACHED [eth_crawler builder 3/8] RUN apk add --no-cache make 0.0s
=> [eth_crawler builder 4/8] COPY ./ /armiarma 0.5s
=> [eth_crawler builder 5/8] WORKDIR /armiarma 0.6s
=> [eth_crawler builder 6/8] RUN make dependencies 0.9s
=> [eth_crawler builder 7/8] RUN make build 34.3s
=> CACHED [eth_crawler stage-1 2/3] RUN mkdir /crawler 0.0s
=> [eth_crawler stage-1 3/3] COPY --from=builder /armiarma/build/ /crawler 0.1s
=> [eth_crawler] exporting to image 0.2s
=> => exporting layers 0.2s
=> => writing image sha256:cbd0c849c951abe484f1e4eff667b385d56954948230fe80c75a55e7b39d3bae 0.0s
=> => naming to docker.io/library/armiarma:latest
Motivation
The crawler has fallen into the darkness of needing urgently new updates, as it has been without any kind of update last year. Even after a few attempts at doing so, there were pretty nasty turnarounds to fix the tricky Ethereum secp256k1 keys and Libp2p's new formats/structs that didn't really work.
Thus, here we are, trying to make every as whiny as possible.
Description
This PR aims to catch up with the latest versions of most of the dependencies, including the upgrade of the go version to a more recent one (one that supports Generics 🤫 )
Tasks
pubsub
fork to the latest changes, maintaining the modsProof of Success
So fat it manually compiles without problem:
Local-Dashboard: