Skip to content

Commit

Permalink
Merge pull request #991 from ethereum/revert-981-only_setup_py
Browse files Browse the repository at this point in the history
Revert "Only use `setup.py`"
  • Loading branch information
djrtwo committed Apr 24, 2019
2 parents 98e6a24 + 451c283 commit 16d6014
Show file tree
Hide file tree
Showing 13 changed files with 40 additions and 109 deletions.
14 changes: 7 additions & 7 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -60,15 +60,15 @@ jobs:
- restore_cache:
key: v1-specs-repo-{{ .Branch }}-{{ .Revision }}
- restore_cached_venv:
venv_name: v1-test_libs
reqs_checksum: '{{ checksum "test_libs/pyspec/setup.py" }}'
venv_name: v1-pyspec
reqs_checksum: '{{ checksum "test_libs/pyspec/requirements.txt" }}-{{ checksum "test_libs/pyspec/requirements-testing.txt" }}'
- run:
name: Install pyspec requirements
command: make install_test
- save_cached_venv:
venv_name: v1-test_libs
reqs_checksum: '{{ checksum "test_libs/pyspec/setup.py" }}'
venv_path: ./test_libs/venv
venv_name: v1-pyspec
reqs_checksum: '{{ checksum "test_libs/pyspec/requirements.txt" }}-{{ checksum "test_libs/pyspec/requirements-testing.txt" }}'
venv_path: ./test_libs/pyspec/venv
test:
docker:
- image: circleci/python:3.6
Expand All @@ -77,8 +77,8 @@ jobs:
- restore_cache:
key: v1-specs-repo-{{ .Branch }}-{{ .Revision }}
- restore_cached_venv:
venv_name: v1-test_libs
reqs_checksum: '{{ checksum "test_libs/pyspec/setup.py" }}'
venv_name: v1-pyspec
reqs_checksum: '{{ checksum "test_libs/pyspec/requirements.txt" }}-{{ checksum "test_libs/pyspec/requirements-testing.txt" }}'
- run:
name: Run py-tests
command: make citest
Expand Down
7 changes: 0 additions & 7 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,6 @@ venv
.venvs
.venv
/.pytest_cache
*.egg
*.egg-info
eggs
.eggs

build/
output/
Expand All @@ -17,6 +13,3 @@ eth2.0-spec-tests/

# Dynamically built from Markdown spec
test_libs/pyspec/eth2spec/phase0/spec.py

# vscode
.vscode/**
14 changes: 4 additions & 10 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ SPEC_DIR = ./specs
SCRIPT_DIR = ./scripts
TEST_LIBS_DIR = ./test_libs
PY_SPEC_DIR = $(TEST_LIBS_DIR)/pyspec
CONFIG_HELPERS_DIR = $(TEST_LIBS_DIR)/config_helpers
YAML_TEST_DIR = ./eth2.0-spec-tests/tests
GENERATOR_DIR = ./test_generators
CONFIGS_DIR = ./configs
Expand All @@ -24,26 +23,21 @@ all: $(PY_SPEC_ALL_TARGETS) $(YAML_TEST_DIR) $(YAML_TEST_TARGETS)
clean:
rm -rf $(YAML_TEST_DIR)
rm -rf $(GENERATOR_VENVS)
rm -rf $(TEST_LIBS_DIR)/venv
rm -rf $(PY_SPEC_DIR)/.pytest_cache
rm -rf $(PY_SPEC_DIR)/venv $(PY_SPEC_DIR)/.pytest_cache
rm -rf $(PY_SPEC_ALL_TARGETS)

# "make gen_yaml_tests" to run generators
gen_yaml_tests: $(PY_SPEC_ALL_TARGETS) $(YAML_TEST_TARGETS)

# installs the packages to run pyspec tests
install_test:
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];
cd $(PY_SPEC_DIR); python3 -m venv venv; . venv/bin/activate; pip3 install -r requirements-testing.txt;

test: $(PY_SPEC_ALL_TARGETS)
cd $(TEST_LIBS_DIR); . venv/bin/activate; \
cd ..; cd $(PY_SPEC_DIR); python -m pytest .;
cd $(PY_SPEC_DIR); . venv/bin/activate; python -m pytest .

citest: $(PY_SPEC_ALL_TARGETS)
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 .
cd $(PY_SPEC_DIR); mkdir -p test-reports/eth2spec; . venv/bin/activate; python -m pytest --junitxml=test-reports/eth2spec/test_results.xml .

# "make pyspec" to create the pyspec for all phases.
pyspec: $(PY_SPEC_ALL_TARGETS)
Expand Down
2 changes: 1 addition & 1 deletion test_generators/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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):
```bash
pip3 install -e .[pyspec]
pip3 install -r requirements.txt
```

And write your initial test generator, extending the base generator:
Expand Down
1 change: 1 addition & 0 deletions test_libs/config_helpers/requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
ruamel.yaml==0.15.87
21 changes: 5 additions & 16 deletions test_libs/config_helpers/setup.py
Original file line number Diff line number Diff line change
@@ -1,20 +1,9 @@
from setuptools import setup, find_packages


deps = {
'preset_loader': [
"ruamel.yaml==0.15.87",
],
}

deps['dev'] = (
deps['preset_loader']
)

install_requires = deps['preset_loader']
from distutils.core import setup

setup(
name='config_helpers',
packages=find_packages(exclude=["tests", "tests.*"]),
install_requires=install_requires,
packages=['preset_loader'],
install_requires=[
"ruamel.yaml==0.15.87"
]
)
2 changes: 2 additions & 0 deletions test_libs/gen_helpers/requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
ruamel.yaml==0.15.87
eth-utils==1.4.1
23 changes: 6 additions & 17 deletions test_libs/gen_helpers/setup.py
Original file line number Diff line number Diff line change
@@ -1,21 +1,10 @@
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']
from distutils.core import setup

setup(
name='gen_helpers',
packages=find_packages(exclude=["tests", "tests.*"]),
install_requires=install_requires,
packages=['gen_base'],
install_requires=[
"ruamel.yaml==0.15.87",
"eth-utils==1.4.1"
]
)
2 changes: 1 addition & 1 deletion test_libs/pyspec/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ Install dependencies:
```bash
python3 -m venv venv
. venv/bin/activate
pip3 install -e .[dev]
pip3 install -r requirements-testing.txt
```
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.
Expand Down
3 changes: 3 additions & 0 deletions test_libs/pyspec/requirements-testing.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
-r requirements.txt
pytest>=3.6,<3.7
../config_helpers
4 changes: 4 additions & 0 deletions test_libs/pyspec/requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
eth-utils>=1.3.0,<2
eth-typing>=2.1.0,<3.0.0
pycryptodome==3.7.3
py_ecc>=1.6.0
27 changes: 6 additions & 21 deletions test_libs/pyspec/setup.py
Original file line number Diff line number Diff line change
@@ -1,28 +1,13 @@
from setuptools import setup, find_packages


deps = {
'pyspec': [
setup(
name='pyspec',
packages=find_packages(),
tests_require=["pytest"],
install_requires=[
"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,
]
)
29 changes: 0 additions & 29 deletions test_libs/setup.py

This file was deleted.

0 comments on commit 16d6014

Please sign in to comment.