diff --git a/README.md b/README.md index f9dce3f4..58eb973c 100644 --- a/README.md +++ b/README.md @@ -147,3 +147,7 @@ docker run --pull=always -it --rm \ ``` and (usually after about 30 seconds) find the transfer file written to your current working directory. + +### Managing Dependencies +Python libraries can be added to the `requirements.in` file. After this `pip-compile` or `python -m pip-compile` will update the `requirements.txt` for you (you may have to install the libry manually first). +Warning: this might take a long time for large changes or when you run pip-compile for the first time. Running the command with the `-v` flag can help keep track of what's happening. diff --git a/requirements.in b/requirements.in new file mode 100644 index 00000000..7c3c2d4c --- /dev/null +++ b/requirements.in @@ -0,0 +1,20 @@ +certifi>=2022.6.15 +duneapi>=8.0.0 +dune-client>=1.1.1 +psycopg2-binary>=2.9.6 +python-dotenv>=0.20.0 +coinpaprika>=0.1.0 +requests>=2.28.1 +safe-eth-py>=5.5.0 +slackclient>=2.9.4 +web3<7.0.0 +SQLAlchemy<2.0.0 +sqlalchemy-stubs>=0.4 +pandas==2.0.3 +pandas-stubs==2.0.2.230605 +numpy==1.26.4 +pip-tools==7.4.1 +black +mypy +pylint +pytest diff --git a/requirements.txt b/requirements.txt index 556c56b4..c0407ffd 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,19 +1,320 @@ -certifi>=2022.6.15 -duneapi>=8.0.0 -dune-client>=1.1.1 -psycopg2-binary>=2.9.6 -python-dotenv>=0.20.0 -coinpaprika>=0.1.0 -requests>=2.28.1 -safe-eth-py>=5.5.0 -slackclient>=2.9.4 -web3<7.0.0 -SQLAlchemy<2.0.0 -sqlalchemy-stubs>=0.4 +# +# This file is autogenerated by pip-compile with Python 3.10 +# by the following command: +# +# pip-compile +# +aiohappyeyeballs==2.4.0 + # via aiohttp +aiohttp==3.10.5 + # via + # dune-client + # slackclient + # web3 +aiosignal==1.3.1 + # via aiohttp +astroid==3.2.4 + # via pylint +async-timeout==4.0.3 + # via aiohttp +attrs==24.2.0 + # via + # aiohttp + # jsonschema + # referencing +bitarray==2.9.2 + # via eth-account +black==24.8.0 + # via -r requirements.in +build==1.2.1 + # via pip-tools +cached-property==1.5.2 + # via + # py-ecc + # py-evm +certifi==2024.7.4 + # via + # -r requirements.in + # requests +charset-normalizer==3.3.2 + # via requests +ckzg==1.0.2 + # via + # eth-account + # py-evm + # web3 +click==8.1.7 + # via + # black + # pip-tools +coinpaprika==0.1.0 + # via -r requirements.in +cytoolz==0.12.3 + # via eth-utils +dataclasses-json==0.6.7 + # via dune-client +deprecated==1.2.14 + # via + # dune-client + # duneapi +dill==0.3.8 + # via pylint +dune-client==1.7.5 + # via -r requirements.in +duneapi==8.0.0 + # via -r requirements.in +eth-abi==5.1.0 + # via + # eth-account + # web3 +eth-account==0.11.3 + # via web3 +eth-bloom==3.0.1 + # via py-evm +eth-hash[pycryptodome]==0.7.0 + # via + # eth-bloom + # eth-utils + # trie + # web3 +eth-keyfile==0.8.1 + # via eth-account +eth-keys==0.5.1 + # via + # eth-account + # eth-keyfile + # py-evm +eth-rlp==1.0.1 + # via eth-account +eth-typing==4.4.0 + # via + # eth-abi + # eth-keys + # eth-utils + # py-ecc + # py-evm + # web3 +eth-utils==4.1.1 + # via + # eth-abi + # eth-account + # eth-keyfile + # eth-keys + # eth-rlp + # py-ecc + # py-evm + # rlp + # trie + # web3 +exceptiongroup==1.2.2 + # via pytest +frozenlist==1.4.1 + # via + # aiohttp + # aiosignal +greenlet==3.0.3 + # via sqlalchemy +hexbytes==0.3.1 + # via + # eth-account + # eth-rlp + # trie + # web3 +idna==3.8 + # via + # requests + # yarl +iniconfig==2.0.0 + # via pytest +isort==5.13.2 + # via pylint +jsonschema==4.23.0 + # via web3 +jsonschema-specifications==2023.12.1 + # via jsonschema +lru-dict==1.2.0 + # via + # py-evm + # web3 +marshmallow==3.22.0 + # via dataclasses-json +mccabe==0.7.0 + # via pylint +multidict==6.0.5 + # via + # aiohttp + # yarl +mypy==1.11.2 + # via + # -r requirements.in + # sqlalchemy-stubs +mypy-extensions==1.0.0 + # via + # black + # mypy + # typing-inspect +ndjson==0.3.1 + # via dune-client +numpy==1.26.4 + # via + # -r requirements.in + # pandas + # pandas-stubs +packaging==24.1 + # via + # black + # build + # marshmallow + # pytest + # safe-eth-py pandas==2.0.3 + # via -r requirements.in pandas-stubs==2.0.2.230605 -numpy==1.26.4 -black -mypy -pylint -pytest + # via -r requirements.in +parsimonious==0.10.0 + # via eth-abi +pathspec==0.12.1 + # via black +pip-tools==7.4.1 + # via -r requirements.in +platformdirs==4.2.2 + # via + # black + # pylint +pluggy==1.5.0 + # via pytest +protobuf==5.27.4 + # via web3 +psycopg2-binary==2.9.9 + # via -r requirements.in +py-ecc==7.0.1 + # via py-evm +py-evm==0.10.1b1 + # via safe-eth-py +pycryptodome==3.20.0 + # via + # eth-hash + # eth-keyfile +pylint==3.2.6 + # via -r requirements.in +pyproject-hooks==1.1.0 + # via + # build + # pip-tools +pytest==8.3.2 + # via -r requirements.in +python-dateutil==2.9.0.post0 + # via + # dune-client + # pandas +python-dotenv==1.0.1 + # via + # -r requirements.in + # duneapi +pytz==2024.1 + # via pandas +pyunormalize==15.1.0 + # via web3 +referencing==0.35.1 + # via + # jsonschema + # jsonschema-specifications +regex==2024.7.24 + # via parsimonious +requests==2.32.3 + # via + # -r requirements.in + # coinpaprika + # dune-client + # duneapi + # safe-eth-py + # web3 +rlp==4.0.1 + # via + # eth-account + # eth-rlp + # py-evm + # trie +rpds-py==0.20.0 + # via + # jsonschema + # referencing +safe-eth-py==5.8.0 + # via -r requirements.in +safe-pysha3==1.0.4 + # via safe-eth-py +six==1.16.0 + # via python-dateutil +slackclient==2.9.4 + # via -r requirements.in +sortedcontainers==2.4.0 + # via trie +sqlalchemy==1.4.53 + # via -r requirements.in +sqlalchemy-stubs==0.4 + # via -r requirements.in +tomli==2.0.1 + # via + # black + # build + # mypy + # pip-tools + # pylint + # pytest +tomlkit==0.13.2 + # via pylint +toolz==0.12.1 + # via cytoolz +trie==3.0.1 + # via py-evm +types-deprecated==1.2.9.20240311 + # via + # dune-client + # duneapi +types-python-dateutil==2.9.0.20240821 + # via dune-client +types-pytz==2024.1.0.20240417 + # via pandas-stubs +types-pyyaml==6.0.12.20240808 + # via dune-client +types-requests==2.32.0.20240712 + # via + # dune-client + # duneapi +types-setuptools==73.0.0.20240822 + # via dune-client +typing-extensions==4.12.2 + # via + # astroid + # black + # eth-rlp + # eth-typing + # mypy + # sqlalchemy-stubs + # typing-inspect + # web3 +typing-inspect==0.9.0 + # via dataclasses-json +tzdata==2024.1 + # via pandas +urllib3==2.2.2 + # via + # requests + # types-requests +web3==6.20.3 + # via + # -r requirements.in + # duneapi + # safe-eth-py +websockets==13.0 + # via web3 +wheel==0.44.0 + # via pip-tools +wrapt==1.16.0 + # via deprecated +yarl==1.9.4 + # via aiohttp + +# The following packages are considered to be unsafe in a requirements file: +# pip +# setuptools