Merge pull request #981 from ethereum/only_setup_py
Only use `setup.py`
This commit is contained in:
commit
98e6a24fd5
|
@ -60,15 +60,15 @@ jobs:
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
key: v1-specs-repo-{{ .Branch }}-{{ .Revision }}
|
key: v1-specs-repo-{{ .Branch }}-{{ .Revision }}
|
||||||
- restore_cached_venv:
|
- restore_cached_venv:
|
||||||
venv_name: v1-pyspec
|
venv_name: v1-test_libs
|
||||||
reqs_checksum: '{{ checksum "test_libs/pyspec/requirements.txt" }}-{{ checksum "test_libs/pyspec/requirements-testing.txt" }}'
|
reqs_checksum: '{{ checksum "test_libs/pyspec/setup.py" }}'
|
||||||
- run:
|
- run:
|
||||||
name: Install pyspec requirements
|
name: Install pyspec requirements
|
||||||
command: make install_test
|
command: make install_test
|
||||||
- save_cached_venv:
|
- save_cached_venv:
|
||||||
venv_name: v1-pyspec
|
venv_name: v1-test_libs
|
||||||
reqs_checksum: '{{ checksum "test_libs/pyspec/requirements.txt" }}-{{ checksum "test_libs/pyspec/requirements-testing.txt" }}'
|
reqs_checksum: '{{ checksum "test_libs/pyspec/setup.py" }}'
|
||||||
venv_path: ./test_libs/pyspec/venv
|
venv_path: ./test_libs/venv
|
||||||
test:
|
test:
|
||||||
docker:
|
docker:
|
||||||
- image: circleci/python:3.6
|
- image: circleci/python:3.6
|
||||||
|
@ -77,8 +77,8 @@ jobs:
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
key: v1-specs-repo-{{ .Branch }}-{{ .Revision }}
|
key: v1-specs-repo-{{ .Branch }}-{{ .Revision }}
|
||||||
- restore_cached_venv:
|
- restore_cached_venv:
|
||||||
venv_name: v1-pyspec
|
venv_name: v1-test_libs
|
||||||
reqs_checksum: '{{ checksum "test_libs/pyspec/requirements.txt" }}-{{ checksum "test_libs/pyspec/requirements-testing.txt" }}'
|
reqs_checksum: '{{ checksum "test_libs/pyspec/setup.py" }}'
|
||||||
- run:
|
- run:
|
||||||
name: Run py-tests
|
name: Run py-tests
|
||||||
command: make citest
|
command: make citest
|
||||||
|
|
|
@ -4,6 +4,10 @@ venv
|
||||||
.venvs
|
.venvs
|
||||||
.venv
|
.venv
|
||||||
/.pytest_cache
|
/.pytest_cache
|
||||||
|
*.egg
|
||||||
|
*.egg-info
|
||||||
|
eggs
|
||||||
|
.eggs
|
||||||
|
|
||||||
build/
|
build/
|
||||||
output/
|
output/
|
||||||
|
@ -13,3 +17,6 @@ eth2.0-spec-tests/
|
||||||
|
|
||||||
# Dynamically built from Markdown spec
|
# Dynamically built from Markdown spec
|
||||||
test_libs/pyspec/eth2spec/phase0/spec.py
|
test_libs/pyspec/eth2spec/phase0/spec.py
|
||||||
|
|
||||||
|
# vscode
|
||||||
|
.vscode/**
|
||||||
|
|
14
Makefile
14
Makefile
|
@ -2,6 +2,7 @@ SPEC_DIR = ./specs
|
||||||
SCRIPT_DIR = ./scripts
|
SCRIPT_DIR = ./scripts
|
||||||
TEST_LIBS_DIR = ./test_libs
|
TEST_LIBS_DIR = ./test_libs
|
||||||
PY_SPEC_DIR = $(TEST_LIBS_DIR)/pyspec
|
PY_SPEC_DIR = $(TEST_LIBS_DIR)/pyspec
|
||||||
|
CONFIG_HELPERS_DIR = $(TEST_LIBS_DIR)/config_helpers
|
||||||
YAML_TEST_DIR = ./eth2.0-spec-tests/tests
|
YAML_TEST_DIR = ./eth2.0-spec-tests/tests
|
||||||
GENERATOR_DIR = ./test_generators
|
GENERATOR_DIR = ./test_generators
|
||||||
CONFIGS_DIR = ./configs
|
CONFIGS_DIR = ./configs
|
||||||
|
@ -23,7 +24,8 @@ all: $(PY_SPEC_ALL_TARGETS) $(YAML_TEST_DIR) $(YAML_TEST_TARGETS)
|
||||||
clean:
|
clean:
|
||||||
rm -rf $(YAML_TEST_DIR)
|
rm -rf $(YAML_TEST_DIR)
|
||||||
rm -rf $(GENERATOR_VENVS)
|
rm -rf $(GENERATOR_VENVS)
|
||||||
rm -rf $(PY_SPEC_DIR)/venv $(PY_SPEC_DIR)/.pytest_cache
|
rm -rf $(TEST_LIBS_DIR)/venv
|
||||||
|
rm -rf $(PY_SPEC_DIR)/.pytest_cache
|
||||||
rm -rf $(PY_SPEC_ALL_TARGETS)
|
rm -rf $(PY_SPEC_ALL_TARGETS)
|
||||||
|
|
||||||
# "make gen_yaml_tests" to run generators
|
# "make gen_yaml_tests" to run generators
|
||||||
|
@ -31,13 +33,17 @@ gen_yaml_tests: $(PY_SPEC_ALL_TARGETS) $(YAML_TEST_TARGETS)
|
||||||
|
|
||||||
# installs the packages to run pyspec tests
|
# installs the packages to run pyspec tests
|
||||||
install_test:
|
install_test:
|
||||||
cd $(PY_SPEC_DIR); python3 -m venv venv; . venv/bin/activate; pip3 install -r requirements-testing.txt;
|
cd $(TEST_LIBS_DIR); python3 -m venv venv; . venv/bin/activate; \
|
||||||
|
cd ..; cd $(CONFIG_HELPERS_DIR); pip3 install -e .; \
|
||||||
|
cd ../..; cd $(PY_SPEC_DIR); pip3 install -e .[dev];
|
||||||
|
|
||||||
test: $(PY_SPEC_ALL_TARGETS)
|
test: $(PY_SPEC_ALL_TARGETS)
|
||||||
cd $(PY_SPEC_DIR); . venv/bin/activate; python -m pytest .
|
cd $(TEST_LIBS_DIR); . venv/bin/activate; \
|
||||||
|
cd ..; cd $(PY_SPEC_DIR); python -m pytest .;
|
||||||
|
|
||||||
citest: $(PY_SPEC_ALL_TARGETS)
|
citest: $(PY_SPEC_ALL_TARGETS)
|
||||||
cd $(PY_SPEC_DIR); mkdir -p test-reports/eth2spec; . venv/bin/activate; python -m pytest --junitxml=test-reports/eth2spec/test_results.xml .
|
cd $(TEST_LIBS_DIR); . venv/bin/activate; \
|
||||||
|
cd ..; cd $(PY_SPEC_DIR); mkdir -p test-reports/eth2spec; python -m pytest --junitxml=test-reports/eth2spec/test_results.xml .
|
||||||
|
|
||||||
# "make pyspec" to create the pyspec for all phases.
|
# "make pyspec" to create the pyspec for all phases.
|
||||||
pyspec: $(PY_SPEC_ALL_TARGETS)
|
pyspec: $(PY_SPEC_ALL_TARGETS)
|
||||||
|
|
|
@ -72,7 +72,7 @@ Note: make sure to run `make pyspec` from the root of the specs repository, to b
|
||||||
|
|
||||||
Install all the necessary requirements (re-run when you add more):
|
Install all the necessary requirements (re-run when you add more):
|
||||||
```bash
|
```bash
|
||||||
pip3 install -r requirements.txt
|
pip3 install -e .[pyspec]
|
||||||
```
|
```
|
||||||
|
|
||||||
And write your initial test generator, extending the base generator:
|
And write your initial test generator, extending the base generator:
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
ruamel.yaml==0.15.87
|
|
|
@ -1,9 +1,20 @@
|
||||||
from distutils.core import setup
|
from setuptools import setup, find_packages
|
||||||
|
|
||||||
|
|
||||||
|
deps = {
|
||||||
|
'preset_loader': [
|
||||||
|
"ruamel.yaml==0.15.87",
|
||||||
|
],
|
||||||
|
}
|
||||||
|
|
||||||
|
deps['dev'] = (
|
||||||
|
deps['preset_loader']
|
||||||
|
)
|
||||||
|
|
||||||
|
install_requires = deps['preset_loader']
|
||||||
|
|
||||||
setup(
|
setup(
|
||||||
name='config_helpers',
|
name='config_helpers',
|
||||||
packages=['preset_loader'],
|
packages=find_packages(exclude=["tests", "tests.*"]),
|
||||||
install_requires=[
|
install_requires=install_requires,
|
||||||
"ruamel.yaml==0.15.87"
|
|
||||||
]
|
|
||||||
)
|
)
|
||||||
|
|
|
@ -1,2 +0,0 @@
|
||||||
ruamel.yaml==0.15.87
|
|
||||||
eth-utils==1.4.1
|
|
|
@ -1,10 +1,21 @@
|
||||||
from distutils.core import setup
|
from setuptools import setup, find_packages
|
||||||
|
|
||||||
|
|
||||||
|
deps = {
|
||||||
|
'gen_base': [
|
||||||
|
"ruamel.yaml==0.15.87",
|
||||||
|
"eth-utils==1.4.1",
|
||||||
|
],
|
||||||
|
}
|
||||||
|
|
||||||
|
deps['dev'] = (
|
||||||
|
deps['gen_base']
|
||||||
|
)
|
||||||
|
|
||||||
|
install_requires = deps['gen_base']
|
||||||
|
|
||||||
setup(
|
setup(
|
||||||
name='gen_helpers',
|
name='gen_helpers',
|
||||||
packages=['gen_base'],
|
packages=find_packages(exclude=["tests", "tests.*"]),
|
||||||
install_requires=[
|
install_requires=install_requires,
|
||||||
"ruamel.yaml==0.15.87",
|
|
||||||
"eth-utils==1.4.1"
|
|
||||||
]
|
|
||||||
)
|
)
|
||||||
|
|
|
@ -38,7 +38,7 @@ Install dependencies:
|
||||||
```bash
|
```bash
|
||||||
python3 -m venv venv
|
python3 -m venv venv
|
||||||
. venv/bin/activate
|
. venv/bin/activate
|
||||||
pip3 install -r requirements-testing.txt
|
pip3 install -e .[dev]
|
||||||
```
|
```
|
||||||
Note: make sure to run `make -B pyspec` from the root of the specs repository,
|
Note: make sure to run `make -B pyspec` from the root of the specs repository,
|
||||||
to build the parts of the pyspec module derived from the markdown specs.
|
to build the parts of the pyspec module derived from the markdown specs.
|
||||||
|
|
|
@ -1,3 +0,0 @@
|
||||||
-r requirements.txt
|
|
||||||
pytest>=3.6,<3.7
|
|
||||||
../config_helpers
|
|
|
@ -1,4 +0,0 @@
|
||||||
eth-utils>=1.3.0,<2
|
|
||||||
eth-typing>=2.1.0,<3.0.0
|
|
||||||
pycryptodome==3.7.3
|
|
||||||
py_ecc>=1.6.0
|
|
|
@ -1,13 +1,28 @@
|
||||||
from setuptools import setup, find_packages
|
from setuptools import setup, find_packages
|
||||||
|
|
||||||
setup(
|
|
||||||
name='pyspec',
|
deps = {
|
||||||
packages=find_packages(),
|
'pyspec': [
|
||||||
tests_require=["pytest"],
|
|
||||||
install_requires=[
|
|
||||||
"eth-utils>=1.3.0,<2",
|
"eth-utils>=1.3.0,<2",
|
||||||
"eth-typing>=2.1.0,<3.0.0",
|
"eth-typing>=2.1.0,<3.0.0",
|
||||||
"pycryptodome==3.7.3",
|
"pycryptodome==3.7.3",
|
||||||
"py_ecc>=1.6.0",
|
"py_ecc>=1.6.0",
|
||||||
]
|
],
|
||||||
|
'test': [
|
||||||
|
"pytest>=3.6,<3.7",
|
||||||
|
],
|
||||||
|
}
|
||||||
|
|
||||||
|
deps['dev'] = (
|
||||||
|
deps['pyspec'] +
|
||||||
|
deps['test']
|
||||||
|
)
|
||||||
|
|
||||||
|
install_requires = deps['pyspec']
|
||||||
|
|
||||||
|
setup(
|
||||||
|
name='pyspec',
|
||||||
|
packages=find_packages(exclude=["tests", "tests.*"]),
|
||||||
|
install_requires=install_requires,
|
||||||
|
extras_require=deps,
|
||||||
)
|
)
|
||||||
|
|
|
@ -0,0 +1,29 @@
|
||||||
|
from setuptools import setup, find_packages
|
||||||
|
|
||||||
|
|
||||||
|
deps = {
|
||||||
|
'pyspec': [
|
||||||
|
"eth-utils>=1.3.0,<2",
|
||||||
|
"eth-typing>=2.1.0,<3.0.0",
|
||||||
|
"pycryptodome==3.7.3",
|
||||||
|
"py_ecc>=1.6.0",
|
||||||
|
],
|
||||||
|
'test': [
|
||||||
|
"pytest>=3.6,<3.7",
|
||||||
|
],
|
||||||
|
}
|
||||||
|
|
||||||
|
deps['dev'] = (
|
||||||
|
deps['pyspec'] +
|
||||||
|
deps['test']
|
||||||
|
)
|
||||||
|
|
||||||
|
install_requires = deps['pyspec']
|
||||||
|
|
||||||
|
|
||||||
|
setup(
|
||||||
|
name='pyspec',
|
||||||
|
packages=find_packages(exclude=["tests", "tests.*"]),
|
||||||
|
install_requires=install_requires,
|
||||||
|
extras_require=deps,
|
||||||
|
)
|
Loading…
Reference in New Issue