Skip to content

Commit a54d6c6

Browse files
author
winsvega
authored
Merge pull request #221 from ethereum/develop
version 0.3.2 development
2 parents fa5fe40 + f30e58c commit a54d6c6

File tree

195 files changed

+5288
-3634
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

195 files changed

+5288
-3634
lines changed

.gitmodules

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[submodule "libdataobj"]
2+
path = libdataobj
3+
url = https://github.com/winsvega/libdataobj

CMakeLists.txt

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11

22
cmake_minimum_required(VERSION 3.9.3)
3+
34
set(CMAKE_TOOLCHAIN_FILE ${CMAKE_SOURCE_DIR}/toolchain.cmake)
45

56
include("./cmake/Hunter/HunterGate.cmake")
@@ -23,10 +24,11 @@ HunterGate(
2324
SHA1 "908ddcb223f25fa155315baae64ce0ab48a38bf7"
2425
LOCAL
2526
)
27+
2628
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
2729

28-
project(retesteth VERSION 0.3.1)
29-
set(VERSION_SUFFIX "cancun")
30+
project(retesteth VERSION 0.3.2)
31+
set(VERSION_SUFFIX "legacy")
3032

3133
set(Boost_USE_STATIC_LIBS ON)
3234
set(Boost_USE_MULTITHREADED ON)
@@ -84,7 +86,11 @@ endif()
8486

8587
add_subdirectory(libdevcore)
8688
add_subdirectory(libdevcrypto)
89+
90+
set(DATA_YAML ON)
91+
add_compile_definitions(DATA_YAML="${DATA_YAML}")
8792
add_subdirectory(libdataobj)
93+
8894
if (${UNITTESTS})
8995
set(LIBSSZ ssz)
9096
add_subdirectory(libssz)

Dockerfile

Lines changed: 24 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM ubuntu:20.04 as retesteth
1+
FROM ubuntu:20.04 AS retesteth
22

33
ARG BESU_SRC="https://github.com/hyperledger/besu.git"
44
ARG PYSPECS_SRC="https://github.com/ethereum/execution-spec-tests"
@@ -28,18 +28,20 @@ RUN apt-get update \
2828
&& apt install software-properties-common -y \
2929
&& add-apt-repository -y ppa:ubuntu-toolchain-r/test \
3030
&& add-apt-repository -y ppa:deadsnakes/ppa \
31-
&& add-apt-repository ppa:linuxuprising/java \
32-
&& apt-get install --yes jq lsof git cmake make perl psmisc curl wget gcc-11 g++-11 python3.10 python3.10-venv python3-pip python3-dev \
31+
&& apt-get install --yes jq lsof git make libssl-dev libgmp-dev perl psmisc curl wget gcc-11 g++-11 python3.10 python3.10-venv python3-pip python3-dev \
3332
&& apt-get install --yes libboost-filesystem-dev libboost-system-dev libboost-program-options-dev libboost-test-dev \
34-
&& echo oracle-java17-installer shared/accepted-oracle-license-v1-3 select true | /usr/bin/debconf-set-selections \
35-
&& apt-get install --yes oracle-java17-installer oracle-java17-set-default \
3633
&& apt-get install --yes uuid-runtime \
3734
&& rm -rf /var/lib/apt/lists/*
3835
RUN rm /usr/bin/python3 && ln -s /usr/bin/python3.10 /usr/bin/python3 \
3936
&& rm /usr/bin/gcc && rm /usr/bin/g++ \
4037
&& ln -s /usr/bin/gcc-11 /usr/bin/gcc \
4138
&& ln -s /usr/bin/g++-11 /usr/bin/g++
4239

40+
# CMAKE LATEST
41+
RUN wget https://github.com/Kitware/CMake/releases/download/v3.28.0/cmake-3.28.0.tar.gz \
42+
&& tar -zxvf cmake-3.28.0.tar.gz && cd cmake-3.28.0 \
43+
&& ./bootstrap && make && make install
44+
4345
# Tests
4446
#RUN git clone --depth 1 -b master https://github.com/ethereum/tests /tests
4547

@@ -60,9 +62,9 @@ RUN wget https://github.com/ethereum/solidity/releases/download/v0.8.21/solc-sta
6062
# Pyspecs
6163
RUN git clone $PYSPECS_SRC /execution-spec-tests
6264
RUN cd /execution-spec-tests && git fetch && git checkout $PYSPECS \
63-
&& python3 -m venv ./venv/ \
64-
&& source ./venv/bin/activate \
65-
&& pip install -e . \
65+
&& curl -LsSf https://astral.sh/uv/install.sh | sh && source $HOME/.local/bin/env \
66+
&& uv sync --all-extras \
67+
&& uv run solc-select use 0.8.24 --always-install\
6668
&& wget https://raw.githubusercontent.com/ethereum/retesteth/develop/web/tfinit.sh \
6769
&& cp tfinit.sh /usr/bin/tfinit.sh \
6870
&& chmod +x /usr/bin/tfinit.sh
@@ -73,15 +75,15 @@ RUN test -n "$PYT8N" \
7375
&& cd /pyt8n && git fetch && git checkout $PYT8N \
7476
&& python3 -m venv ./venv/ \
7577
&& source ./venv/bin/activate \
76-
&& pip install -e . \
78+
&& pip install -e .[test] \
7779
|| echo "Pyt8n is empty"
7880

7981
# Geth
8082
RUN test -n "$GETH" \
8183
&& git clone $GETH_SRC /geth \
8284
&& cd /geth && git fetch && git checkout $GETH \
83-
&& wget https://dl.google.com/go/go1.20.linux-amd64.tar.gz \
84-
&& tar -xvf go1.20.linux-amd64.tar.gz \
85+
&& wget https://go.dev/dl/go1.21.8.linux-amd64.tar.gz \
86+
&& tar -xvf go1.21.8.linux-amd64.tar.gz \
8587
&& mv go /usr/local && ln -s /usr/local/go/bin/go /bin/go \
8688
&& go build ./cmd/evm && cp evm /bin/evm \
8789
&& rm -rf /geth && rm -rf /usr/local/go \
@@ -102,22 +104,24 @@ RUN test -n "$NIMBUS" \
102104
RUN test -n "$ETHEREUMJS" \
103105
&& wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash \
104106
&& . ~/.nvm/nvm.sh \
105-
&& nvm install 19 && nvm alias default 19 && nvm use default \
106-
&& cp -r ~/.nvm/versions/node/v19*/* /usr \
107+
&& nvm install 20 && nvm alias default 20 && nvm use default \
108+
&& cp -r ~/.nvm/versions/node/v20*/* /usr \
107109
&& git clone $ETEREUMJS_SRC /ethereumjs \
108110
&& cd /ethereumjs && git fetch && git checkout $ETHEREUMJS && npm i && npm run build --workspaces \
109111
|| echo "Ethereumjs is empty"
110112

111113
# Besu
114+
RUN test -n "$BESU" \
115+
&& apt-get update \
116+
&& apt-get install --yes openjdk-21-jdk \
117+
|| echo "Besu is empty"
112118
RUN test -n "$BESU" \
113119
&& git clone $BESU_SRC /besu \
114120
&& cd /besu && git fetch && git checkout $BESU \
115-
&& ./gradlew build \
116121
|| echo "Besu is empty"
117-
118122
RUN test -n "$BESU" \
119123
&& cd /besu && ./gradlew ethereum:evmtool:installDist \
120-
&& ln -s /besu/ethereum/evmtool/build/install/evmtool/bin/evm /usr/bin/besuevm \
124+
&& ln -s /besu/ethereum/evmtool/build/install/evmtool/bin/evmtool /usr/bin/besuevm \
121125
|| echo "Besu is empty"
122126

123127
# Evmone
@@ -126,14 +130,16 @@ RUN test -n "$EVMONE" \
126130
&& cd /evmone && git fetch && git checkout $evmone \
127131
&& cmake -S . -B build -DEVMONE_TESTING=ON \
128132
&& cmake --build build \
129-
&& ln -s /evmone/build/bin/evmone-t8n /usr/bin/evmone \
133+
&& ln -s /evmone/build/bin/evmone-t8n /usr/bin/evmone-t8n \
130134
&& rm -rf /var/cache/* /root/.hunter/* \
131135
|| echo "Evmone is empty"
132136

133137
# Retesteth
134138
RUN test -n "$RETESTETH" \
135139
&& git clone $RETESTETH_SRC /retesteth \
136-
&& cd /retesteth && git fetch && git checkout $RETESTETH && mkdir /build && cd /build \
140+
&& cd /retesteth \
141+
&& git fetch && git checkout $RETESTETH && git submodule update --init --recursive \
142+
&& mkdir /build && cd /build \
137143
&& cmake /retesteth -DCMAKE_BUILD_TYPE=Release \
138144
&& make -j2 \
139145
&& cp /build/retesteth/retesteth /usr/bin/retesteth \

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ ln -s /besu/ethereum/evmtool/build/install/evmtool/bin/evm /usr/bin/besuevm
123123
ln -s /evmone/build/bin/evmone-t8n /usr/bin/evmone
124124
```
125125

126-
Setup evn vars:
126+
Setup env vars:
127127
```
128128
ETHEREUMJS_PATH env var is required for ethereumjs client
129129
PYSPECS_PATH env var to generate .py test fillers (https://github.com/ethereum/execution-spec-tests)

circle.yml

Lines changed: 20 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ defaults:
3131
name: "ConfigureMac"
3232
working_directory: ~/build
3333
command: |
34-
cmake ../project -DCMAKE_BUILD_TYPE=$BUILD_TYPE $CMAKE_OPTIONS -DCMAKE_TOOLCHAIN_FILE=~/project/toolchain.cmake
34+
cmake ../project -DCMAKE_BUILD_TYPE=$BUILD_TYPE $CMAKE_OPTIONS -DCMAKE_TOOLCHAIN_FILE=~/project/toolchain.cmake -DCMAKE_POLICY_VERSION_MINIMUM=3.5
3535
3636
build: &build
3737
run:
@@ -44,8 +44,8 @@ defaults:
4444
name: "LinuxInstallGO and Tests"
4545
working_directory: ~/project
4646
command: |
47-
curl -L --output go1.20.linux-amd64.tar.gz "https://dl.google.com/go/go1.20.linux-amd64.tar.gz"
48-
tar -xf go1.20.linux-amd64.tar.gz
47+
curl -L --output go1.21.8.linux-amd64.tar.gz "https://go.dev/dl/go1.21.8.linux-amd64.tar.gz"
48+
tar -xf go1.21.8.linux-amd64.tar.gz
4949
sudo mv go /usr/local
5050
sudo ln -s /usr/local/go/bin/go /usr/local/bin/go
5151
git clone --depth 1 https://github.com/ethereum/go-ethereum.git
@@ -143,6 +143,12 @@ defaults:
143143
144144
linux-steps: &linux-steps
145145
- checkout
146+
- run:
147+
name: Update Git Submodules
148+
command: |
149+
git submodule sync
150+
git submodule update --init --recursive
151+
146152
- *environment-info
147153
- *configure
148154
# - *upload-hunter-cache
@@ -157,17 +163,24 @@ defaults:
157163

158164
mac-steps: &mac-steps
159165
- checkout
166+
- run:
167+
name: Update Git Submodules
168+
command: |
169+
git submodule sync
170+
git submodule update --init --recursive
171+
160172
- run:
161173
name: "Install macOS dependencies"
162174
# Python3 and requests are needed for Hunter upload.
163175
command: |
164-
HOMEBREW_NO_AUTO_UPDATE=1 brew install -q cmake ninja git
176+
brew install -q cmake ninja git
165177
git clone --depth 1 https://github.com/ethereum/go-ethereum.git
166178
git clone --depth 1 https://github.com/ethereum/tests.git
167179
168-
curl -L https://go.dev/dl/go1.20.1.darwin-amd64.pkg -o go1.20.pkg
169-
chmod +x go1.20.pkg
170-
sudo installer -pkg go1.20.pkg -target /
180+
sudo softwareupdate --install-rosetta --agree-to-license
181+
curl -L https://go.dev/dl/go1.21.8.darwin-amd64.pkg -o go1.21.pkg
182+
chmod +x go1.21.pkg
183+
sudo installer -pkg go1.21.pkg -target /
171184
sudo ln -s /usr/local/go/bin/go /usr/local/bin
172185
173186
cd go-ethereum

cmake/Hunter/config.cmake

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,9 @@ hunter_config(ethash VERSION 0.4.0
1717
SHA1 fd92ffadff2931877a3b68685dd8c53f0bdec539
1818
)
1919

20+
hunter_config(Boost VERSION 1.79.1
21+
URL "https://archives.boost.io/release/1.79.0/source/boost_1_79_0.tar.bz2"
22+
SHA1 "31209dcff292bd6a64e5e08ceb3ce44a33615dc0"
23+
)
24+
2025
hunter_config(CURL VERSION ${HUNTER_CURL_VERSION} CMAKE_ARGS HTTP_ONLY=ON CMAKE_USE_OPENSSL=OFF CMAKE_USE_LIBSSH2=OFF CURL_CA_PATH=none)

dretesteth.sh

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,15 @@ testpath="notfound"
44
installImage() {
55
SCRIPT=$(readlink -f "$0") # Get the absolute path of the script
66
SCRIPT_NAME=$(basename "$SCRIPT") # Get the name of the script without the path
7-
SCRIPT_NAME_LINK="${SCRIPT_NAME::-3}"
7+
SCRIPT_NAME_LINK="${SCRIPT_NAME%.*}" # Get the name of the bash script without extension
88

9-
if [ "$SCRIPT" != "/usr/bin/$SCRIPT_NAME" ]; then
10-
sudo ln -s "$SCRIPT" "/usr/bin/$SCRIPT_NAME_LINK"
11-
echo "Added link /usr/bin/$SCRIPT_NAME_LINK >> $SCRIPT"
9+
INSTALL_PATH="/usr/local/bin"
10+
if [ "$SCRIPT" != "$INSTALL_PATH/$SCRIPT_NAME" ]; then
11+
echo "Adding link $INSTALL_PATH/$SCRIPT_NAME_LINK >> $SCRIPT"
12+
sudo ln -s "$SCRIPT" "$INSTALL_PATH/$SCRIPT_NAME_LINK"
1213
if [ "$SCRIPT_NAME" = "dretesteth.sh" ]; then
13-
sudo ln -s "$SCRIPT" "/usr/bin/dr"
14-
echo "Added link /usr/bin/dr >> $SCRIPT"
14+
echo "Adding link $INSTALL_PATH/dr >> $SCRIPT"
15+
sudo ln -s "$SCRIPT" "$INSTALL_PATH/dr"
1516
fi
1617
fi
1718
exit 0

libdataobj

Submodule libdataobj added at 9a88b79

libdataobj/CMakeLists.txt

Lines changed: 0 additions & 6 deletions
This file was deleted.

libdataobj/ConvertFile.cpp

Lines changed: 0 additions & 21 deletions
This file was deleted.

0 commit comments

Comments
 (0)