Skip to content

Commit 948d3fc

Browse files
authored
Merge pull request #424 from ethereum/dev
Release to Update package versions
2 parents fdab65d + 18418e6 commit 948d3fc

29 files changed

+494
-534
lines changed

.circleci/config.yml

+23-43
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,13 @@ tox_common: &tox_common
1919
key: tox-deps4-{{ arch }}-{{ .Environment.CIRCLE_JOB }}-{{ checksum "requirements.txt" }}-{{ checksum "requirements_test.txt" }}-{{ checksum "setup.py" }}-{{ checksum "Makefile" }}
2020

2121
orbs:
22-
win: circleci/windows@2.2.0 # The Windows orb give you everything you need to start using the Windows executor.
22+
win: circleci/windows@5.0 # The Windows orb give you everything you need to start using the Windows executor.
2323

2424
jobs:
2525
# Job(s) with Linux OS
2626
venv_build:
2727
docker:
28-
- image: cimg/python:3.10
28+
- image: cimg/python:3.12
2929
working_directory: ~/repo
3030
steps:
3131
- checkout
@@ -40,7 +40,7 @@ jobs:
4040
- ./venv
4141
venv_pytest:
4242
docker:
43-
- image: cimg/python:3.10
43+
- image: cimg/python:3.12
4444
working_directory: ~/repo
4545
steps:
4646
- checkout
@@ -56,7 +56,7 @@ jobs:
5656
path: test-reports/
5757
venv_lint:
5858
docker:
59-
- image: cimg/python:3.10
59+
- image: cimg/python:3.12
6060
working_directory: ~/repo
6161
steps:
6262
- checkout
@@ -65,40 +65,25 @@ jobs:
6565
- run:
6666
name: Run linter with venv
6767
command: make venv_lint
68-
tox-py310-core:
68+
tox-py312-core:
6969
<<: *tox_common
7070
docker:
71-
- image: cimg/python:3.10
71+
- image: cimg/python:3.12
7272
environment:
73-
TOXENV: py310-core
74-
tox-py38-core:
73+
TOXENV: py312-core
74+
tox-py312-script:
7575
<<: *tox_common
7676
docker:
77-
- image: cimg/python:3.8
77+
- image: cimg/python:3.12
7878
environment:
79-
TOXENV: py38-core
80-
tox-py310-script:
81-
<<: *tox_common
82-
docker:
83-
- image: cimg/python:3.10
84-
environment:
85-
TOXENV: py310-script
86-
tox-py38-script:
87-
<<: *tox_common
88-
docker:
89-
- image: cimg/python:3.8
90-
environment:
91-
TOXENV: py38-script
79+
TOXENV: py312-script
9280
# Job(s) with Windows OS
93-
win-py310-script:
81+
win-py312-script:
9482
executor:
9583
name: win/default
9684
shell: powershell.exe
9785
steps:
9886
- checkout
99-
- run:
100-
name: "Install Python"
101-
command: choco install python --version=3.10.3
10287
- run:
10388
name: Install testing requirements on Windows
10489
command: python -m pip install -r requirements_test.txt
@@ -110,15 +95,15 @@ jobs:
11095
command: python ./test_btec_script.py
11196
build-linux-amd64:
11297
machine:
113-
image: ubuntu-2004:202201-02
98+
image: ubuntu-2204:2024.04.4
11499
working_directory: ~/repo
115100
steps:
116101
- checkout
117102
- run:
118103
name: Install building requirements on Linux
119104
command: |
120-
env PYTHON_CONFIGURE_OPTS="--enable-shared" pyenv install -f 3.10.2;
121-
pyenv global 3.10.2;
105+
env PYTHON_CONFIGURE_OPTS="--enable-shared" pyenv install -f 3.12.1;
106+
pyenv global 3.12.1;
122107
pip install -r ./build_configs/linux/requirements.txt;
123108
- run:
124109
name: Build with build.spec
@@ -127,7 +112,7 @@ jobs:
127112
export CIRCLE_SHORT_SHA1=$(eval echo $CIRCLE_SHA1 | cut -c -7)
128113
export BUILD_FILE_NAME=staking_deposit-cli-${CIRCLE_SHORT_SHA1}-linux-amd64;
129114
mkdir ${BUILD_FILE_NAME};
130-
pyenv global 3.10.2;
115+
pyenv global 3.12.1;
131116
pyinstaller --distpath ./${BUILD_FILE_NAME} ./build_configs/linux/build.spec;
132117
- run:
133118
name: Test executable binaries
@@ -157,16 +142,16 @@ jobs:
157142
path: /tmp/artifacts
158143
build-linux-arm64:
159144
machine:
160-
image: ubuntu-2004:202201-02
145+
image: ubuntu-2204:2024.04.4
161146
resource_class: arm.medium
162147
working_directory: ~/repo
163148
steps:
164149
- checkout
165150
- run:
166151
name: Install building requirements on Linux ARM64
167152
command: |
168-
env PYTHON_CONFIGURE_OPTS="--enable-shared" pyenv install -f 3.10.2;
169-
pyenv global 3.10.2;
153+
env PYTHON_CONFIGURE_OPTS="--enable-shared" pyenv install -f 3.12.1;
154+
pyenv global 3.12.1;
170155
pip install -r ./build_configs/linux/requirements.txt;
171156
- run:
172157
name: Build with build.spec
@@ -175,7 +160,7 @@ jobs:
175160
export CIRCLE_SHORT_SHA1=$(eval echo $CIRCLE_SHA1 | cut -c -7)
176161
export BUILD_FILE_NAME=staking_deposit-cli-${CIRCLE_SHORT_SHA1}-linux-arm64;
177162
mkdir ${BUILD_FILE_NAME};
178-
pyenv global 3.10.2;
163+
pyenv global 3.12.1;
179164
pyinstaller --distpath ./${BUILD_FILE_NAME} ./build_configs/linux/build.spec;
180165
- run:
181166
name: Test executable binaries
@@ -208,9 +193,6 @@ jobs:
208193
shell: powershell.exe
209194
steps:
210195
- checkout
211-
- run:
212-
name: "Install Python"
213-
command: choco install python --version=3.10.3
214196
- run:
215197
name: Install building requirements on Windows
216198
command: pip install -r ./build_configs/windows/requirements.txt
@@ -254,7 +236,7 @@ jobs:
254236
path: /tmp/artifacts
255237
build-macos:
256238
macos:
257-
xcode: 13.4.1
239+
xcode: 15.3.0
258240
working_directory: ~/repo
259241
steps:
260242
- run: xcodebuild -version
@@ -309,11 +291,9 @@ workflows:
309291
- venv_lint:
310292
requires:
311293
- venv_build
312-
- tox-py310-core
313-
- tox-py38-core
314-
- tox-py310-script
315-
- tox-py38-script
316-
- win-py310-script
294+
- tox-py312-core
295+
- tox-py312-script
296+
- win-py312-script
317297
build_linux:
318298
jobs:
319299
- build-linux-amd64

Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM python:alpine3.14
1+
FROM python:alpine3.19
22

33
WORKDIR /app
44

Makefile

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
VENV_NAME?=venv
22
VENV_ACTIVATE=. $(VENV_NAME)/bin/activate
3-
PYTHON=${VENV_NAME}/bin/python3.8
3+
PYTHON=${VENV_NAME}/bin/python3.12
44
DOCKER_IMAGE="ethereum/staking-deposit-cli:latest"
55

66
help:
@@ -24,9 +24,9 @@ clean:
2424

2525
$(VENV_NAME)/bin/activate: requirements.txt
2626
@test -d $(VENV_NAME) || python3 -m venv --clear $(VENV_NAME)
27-
${VENV_NAME}/bin/python setup.py install
2827
${VENV_NAME}/bin/python -m pip install -r requirements.txt
2928
${VENV_NAME}/bin/python -m pip install -r requirements_test.txt
29+
${VENV_NAME}/bin/python setup.py install
3030
@touch $(VENV_NAME)/bin/activate
3131

3232
venv_build: $(VENV_NAME)/bin/activate

README.md

+70-69
Original file line numberDiff line numberDiff line change
@@ -5,68 +5,69 @@
55
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
66
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
77

8-
- [Introduction](#introduction)
9-
- [Tutorial for users](#tutorial-for-users)
10-
- [Build requirements](#build-requirements)
11-
- [For Linux or MacOS users](#for-linux-or-macos-users)
12-
- [File Permissions](#file-permissions)
13-
- [Option 1. Download binary executable file](#option-1-download-binary-executable-file)
14-
- [Step 1. Installation](#step-1-installation)
15-
- [Step 2. Create keys and `deposit_data-*.json`](#step-2-create-keys-and-deposit_data-json)
16-
- [`language` Argument](#language-argument)
17-
- [`--non_interactive` flag](#--non_interactive-flag)
18-
- [Commands](#commands)
19-
- [`new-mnemonic` Arguments](#new-mnemonic-arguments)
20-
- [`existing-mnemonic` Arguments](#existing-mnemonic-arguments)
21-
- [Successful message](#successful-message)
22-
- [`generate-bls-to-execution-change` Arguments](#generate-bls-to-execution-change-arguments)
23-
- [Option 2. Build `deposit-cli` with native Python](#option-2-build-deposit-cli-with-native-python)
24-
- [Step 0. Python version checking](#step-0-python-version-checking)
25-
- [Step 1. Installation](#step-1-installation-1)
26-
- [Step 2. Create keys and `deposit_data-*.json`](#step-2-create-keys-and-deposit_data-json-1)
27-
- [Language Argument](#language-argument)
28-
- [Commands](#commands-1)
29-
- [Arguments](#arguments)
30-
- [Successful message](#successful-message-1)
31-
- [Option 3. Build `deposit-cli` with `virtualenv`](#option-3-build-deposit-cli-with-virtualenv)
32-
- [Step 0. Python version checking](#step-0-python-version-checking-1)
33-
- [Step 1. Installation](#step-1-installation-2)
34-
- [Step 2. Create keys and `deposit_data-*.json`](#step-2-create-keys-and-deposit_data-json-2)
35-
- [Language Argument](#language-argument-1)
36-
- [Commands](#commands-2)
37-
- [Arguments](#arguments-1)
38-
- [Option 4. Use Docker image](#option-4-use-docker-image)
39-
- [Step 1. Build the docker image](#step-1-build-the-docker-image)
40-
- [Step 2. Create keys and `deposit_data-*.json`](#step-2-create-keys-and-deposit_data-json-3)
41-
- [Arguments](#arguments-2)
42-
- [Successful message](#successful-message-2)
43-
- [For Windows users](#for-windows-users)
44-
- [Option 1. Download binary executable file](#option-1-download-binary-executable-file-1)
45-
- [Step 1. Installation](#step-1-installation-3)
46-
- [Step 2. Create keys and `deposit_data-*.json`](#step-2-create-keys-and-deposit_data-json-4)
47-
- [Language Argument](#language-argument-2)
48-
- [Commands](#commands-3)
49-
- [Arguments](#arguments-3)
50-
- [Option 2. Build `deposit-cli` with native Python](#option-2-build-deposit-cli-with-native-python-1)
51-
- [Step 0. Python version checking](#step-0-python-version-checking-2)
52-
- [Step 1. Installation](#step-1-installation-4)
53-
- [Step 2. Create keys and `deposit_data-*.json`](#step-2-create-keys-and-deposit_data-json-5)
54-
- [Language Argument](#language-argument-3)
55-
- [Commands](#commands-4)
56-
- [Arguments](#arguments-4)
57-
- [Option 3. Build `deposit-cli` with `virtualenv`](#option-3-build-deposit-cli-with-virtualenv-1)
58-
- [Step 0. Python version checking](#step-0-python-version-checking-3)
59-
- [Step 1. Installation](#step-1-installation-5)
60-
- [Step 2. Create keys and `deposit_data-*.json`](#step-2-create-keys-and-deposit_data-json-6)
61-
- [Language Argument](#language-argument-4)
62-
- [Commands](#commands-5)
63-
- [Arguments](#arguments-5)
64-
- [Development](#development)
65-
- [Install basic requirements](#install-basic-requirements)
66-
- [Install testing requirements](#install-testing-requirements)
67-
- [Run tests](#run-tests)
68-
- [Building Binaries](#building-binaries)
69-
- [Mac M1 Binaries](#mac-m1-binaries)
8+
- [staking-deposit-cli](#staking-deposit-cli)
9+
- [Introduction](#introduction)
10+
- [Tutorial for users](#tutorial-for-users)
11+
- [Build requirements](#build-requirements)
12+
- [For Linux or MacOS users](#for-linux-or-macos-users)
13+
- [File Permissions](#file-permissions)
14+
- [Option 1. Download binary executable file](#option-1-download-binary-executable-file)
15+
- [Step 1. Installation](#step-1-installation)
16+
- [Step 2. Create keys and `deposit_data-*.json`](#step-2-create-keys-and-deposit_data-json)
17+
- [`language` Argument](#language-argument)
18+
- [`--non_interactive` flag](#--non_interactive-flag)
19+
- [Commands](#commands)
20+
- [`new-mnemonic` Arguments](#new-mnemonic-arguments)
21+
- [`existing-mnemonic` Arguments](#existing-mnemonic-arguments)
22+
- [Successful message](#successful-message)
23+
- [`generate-bls-to-execution-change` Arguments](#generate-bls-to-execution-change-arguments)
24+
- [Option 2. Build `deposit-cli` with native Python](#option-2-build-deposit-cli-with-native-python)
25+
- [Step 0. Python version checking](#step-0-python-version-checking)
26+
- [Step 1. Installation](#step-1-installation-1)
27+
- [Step 2. Create keys and `deposit_data-*.json`](#step-2-create-keys-and-deposit_data-json-1)
28+
- [Language Argument](#language-argument-1)
29+
- [Commands](#commands-1)
30+
- [Arguments](#arguments)
31+
- [Successful message](#successful-message-1)
32+
- [Option 3. Build `deposit-cli` with `virtualenv`](#option-3-build-deposit-cli-with-virtualenv)
33+
- [Step 0. Python version checking](#step-0-python-version-checking-1)
34+
- [Step 1. Installation](#step-1-installation-2)
35+
- [Step 2. Create keys and `deposit_data-*.json`](#step-2-create-keys-and-deposit_data-json-2)
36+
- [Language Argument](#language-argument-2)
37+
- [Commands](#commands-2)
38+
- [Arguments](#arguments-1)
39+
- [Option 4. Use Docker image](#option-4-use-docker-image)
40+
- [Step 1. Build the docker image](#step-1-build-the-docker-image)
41+
- [Step 2. Create keys and `deposit_data-*.json`](#step-2-create-keys-and-deposit_data-json-3)
42+
- [Arguments](#arguments-2)
43+
- [Successful message](#successful-message-2)
44+
- [For Windows users](#for-windows-users)
45+
- [Option 1. Download binary executable file](#option-1-download-binary-executable-file-1)
46+
- [Step 1. Installation](#step-1-installation-3)
47+
- [Step 2. Create keys and `deposit_data-*.json`](#step-2-create-keys-and-deposit_data-json-4)
48+
- [Language Argument](#language-argument-3)
49+
- [Commands](#commands-3)
50+
- [Arguments](#arguments-3)
51+
- [Option 2. Build `deposit-cli` with native Python](#option-2-build-deposit-cli-with-native-python-1)
52+
- [Step 0. Python version checking](#step-0-python-version-checking-2)
53+
- [Step 1. Installation](#step-1-installation-4)
54+
- [Step 2. Create keys and `deposit_data-*.json`](#step-2-create-keys-and-deposit_data-json-5)
55+
- [Language Argument](#language-argument-4)
56+
- [Commands](#commands-4)
57+
- [Arguments](#arguments-4)
58+
- [Option 3. Build `deposit-cli` with `virtualenv`](#option-3-build-deposit-cli-with-virtualenv-1)
59+
- [Step 0. Python version checking](#step-0-python-version-checking-3)
60+
- [Step 1. Installation](#step-1-installation-5)
61+
- [Step 2. Create keys and `deposit_data-*.json`](#step-2-create-keys-and-deposit_data-json-6)
62+
- [Language Argument](#language-argument-5)
63+
- [Commands](#commands-5)
64+
- [Arguments](#arguments-5)
65+
- [Development](#development)
66+
- [Install basic requirements](#install-basic-requirements)
67+
- [Install testing requirements](#install-testing-requirements)
68+
- [Run tests](#run-tests)
69+
- [Building Binaries](#building-binaries)
70+
- [Mac M1 Binaries](#mac-m1-binaries)
7071

7172
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
7273

@@ -85,7 +86,7 @@ You can find the audit report by Trail of Bits [here](https://github.com/trailof
8586

8687
### Build requirements
8788

88-
- [Python **3.8+**](https://www.python.org/about/gettingstarted/)
89+
- [Python **3.12+**](https://www.python.org/about/gettingstarted/)
8990
- [pip3](https://pip.pypa.io/en/stable/installing/)
9091

9192
### For Linux or MacOS users
@@ -198,7 +199,7 @@ You can use `bls-to-execution-change --help` to see all arguments. Note that if
198199

199200
##### Step 0. Python version checking
200201

201-
Ensure you are using Python version >= Python3.8:
202+
Ensure you are using Python version >= Python3.12:
202203

203204
```sh
204205
python3 -V
@@ -263,7 +264,7 @@ See [here](#successful-message)
263264

264265
##### Step 0. Python version checking
265266

266-
Ensure you are using Python version >= Python3.8:
267+
Ensure you are using Python version >= Python3.12:
267268

268269
```sh
269270
python3 -V
@@ -348,10 +349,10 @@ You can also run the tool with optional arguments:
348349
docker run -it --rm -v $(pwd)/validator_keys:/app/validator_keys ethereum/staking-deposit-cli new-mnemonic --num_validators=<NUM_VALIDATORS> --mnemonic_language=english --folder=<YOUR_FOLDER_PATH>
349350
```
350351

351-
Example for 1 validator on the [Prater testnet](https://prater.launchpad.ethereum.org/) using english:
352+
Example for 1 validator on the [Holesky testnet](https://holesky.launchpad.ethereum.org/) using english:
352353

353354
```sh
354-
docker run -it --rm -v $(pwd)/validator_keys:/app/validator_keys ethereum/staking-deposit-cli new-mnemonic --num_validators=1 --mnemonic_language=english --chain=prater
355+
docker run -it --rm -v $(pwd)/validator_keys:/app/validator_keys ethereum/staking-deposit-cli new-mnemonic --num_validators=1 --mnemonic_language=english --chain=holesky
355356
```
356357

357358
###### Arguments
@@ -412,7 +413,7 @@ See [here](#generate-bls-to-execution-change-arguments) for `generate-bls-to-exe
412413

413414
##### Step 0. Python version checking
414415

415-
Ensure you are using Python version >= Python3.8 (Assume that you've installed Python 3 as the main Python):
416+
Ensure you are using Python version >= Python12 (Assume that you've installed Python 3 as the main Python):
416417

417418
```sh
418419
python -V
@@ -475,7 +476,7 @@ See [here](#generate-bls-to-execution-change-arguments) for `generate-bls-to-exe
475476

476477
##### Step 0. Python version checking
477478

478-
Ensure you are using Python version >= Python3.8 (Assume that you've installed Python 3 as the main Python):
479+
Ensure you are using Python version >= Python3.12 (Assume that you've installed Python 3 as the main Python):
479480

480481
```cmd
481482
python -V

0 commit comments

Comments
 (0)