From 56751eee48f45e21673983912e019012572204ec Mon Sep 17 00:00:00 2001 From: Yusuke Nishioka Date: Mon, 6 Dec 2021 19:48:30 +0900 Subject: [PATCH] Use pip-tools to lock dependencies Signed-off-by: Yusuke Nishioka --- .github/workflows/integration_tests.yml | 4 +- .github/workflows/linter.yml | 6 +- .github/workflows/pr_integration_tests.yml | 4 +- .github/workflows/release.yml | 2 + .github/workflows/unit_tests.yml | 8 +- Makefile | 12 +- infra/scripts/test-end-to-end.sh | 2 +- infra/scripts/test-integration.sh | 2 +- .../requirements/py3.7-ci-requirements.txt | 607 ++++++++++++++++++ .../requirements/py3.7-requirements.txt | 164 +++++ .../requirements/py3.8-ci-requirements.txt | 584 +++++++++++++++++ .../requirements/py3.8-requirements.txt | 154 +++++ .../requirements/py3.9-ci-requirements.txt | 580 +++++++++++++++++ .../requirements/py3.9-requirements.txt | 150 +++++ 14 files changed, 2268 insertions(+), 11 deletions(-) create mode 100644 sdk/python/requirements/py3.7-ci-requirements.txt create mode 100644 sdk/python/requirements/py3.7-requirements.txt create mode 100644 sdk/python/requirements/py3.8-ci-requirements.txt create mode 100644 sdk/python/requirements/py3.8-requirements.txt create mode 100644 sdk/python/requirements/py3.9-ci-requirements.txt create mode 100644 sdk/python/requirements/py3.9-requirements.txt diff --git a/.github/workflows/integration_tests.yml b/.github/workflows/integration_tests.yml index 1741218940..bbe5c23edb 100644 --- a/.github/workflows/integration_tests.yml +++ b/.github/workflows/integration_tests.yml @@ -104,9 +104,11 @@ jobs: ${{ steps.pip-cache.outputs.dir }} /opt/hostedtoolcache/Python /Users/runner/hostedtoolcache/Python - key: ${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-pip-${{ hashFiles('**/setup.py') }} + key: ${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-pip-${{ hashFiles(format('**/py{0}-ci-requirements.txt', env.PYTHON)) }} restore-keys: | ${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-pip- + - name: Install pip-tools + run: pip install pip-tools - name: Install dependencies run: make install-python-ci-dependencies - name: Test python diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index e2763bf2ae..c1808bf03a 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -5,6 +5,8 @@ on: [push, pull_request] jobs: lint-python: runs-on: [ubuntu-latest] + env: + PYTHON: 3.7 steps: - uses: actions/checkout@v2 - name: Setup Python @@ -27,9 +29,11 @@ jobs: ${{ steps.pip-cache.outputs.dir }} /opt/hostedtoolcache/Python /Users/runner/hostedtoolcache/Python - key: ${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-pip-${{ hashFiles('**/setup.py') }} + key: ${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-pip-${{ hashFiles(format('**/py{0}-ci-requirements.txt', env.PYTHON)) }} restore-keys: | ${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-pip- + - name: Install pip-tools + run: pip install pip-tools - name: Install dependencies run: make install-python-ci-dependencies - name: Lint python diff --git a/.github/workflows/pr_integration_tests.yml b/.github/workflows/pr_integration_tests.yml index 13f9b9aa2e..ef6fd36c83 100644 --- a/.github/workflows/pr_integration_tests.yml +++ b/.github/workflows/pr_integration_tests.yml @@ -128,9 +128,11 @@ jobs: ${{ steps.pip-cache.outputs.dir }} /opt/hostedtoolcache/Python /Users/runner/hostedtoolcache/Python - key: ${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-pip-${{ hashFiles('**/setup.py') }} + key: ${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-pip-${{ hashFiles(format('**/py{0}-ci-requirements.txt', env.PYTHON)) }} restore-keys: | ${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-pip- + - name: Install pip-tools + run: pip install pip-tools - name: Install dependencies run: make install-python-ci-dependencies - name: Test python diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index a563b80a75..7ca7ed1c60 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -130,6 +130,8 @@ jobs: container: python:3.7 steps: - uses: actions/checkout@v2 + - name: Install pip-tools + run: pip install pip-tools - name: Install dependencies run: make install-python-ci-dependencies - name: Publish Python Package diff --git a/.github/workflows/unit_tests.yml b/.github/workflows/unit_tests.yml index 9a842a1675..5de5971703 100644 --- a/.github/workflows/unit_tests.yml +++ b/.github/workflows/unit_tests.yml @@ -34,15 +34,15 @@ jobs: ${{ steps.pip-cache.outputs.dir }} /opt/hostedtoolcache/Python /Users/runner/hostedtoolcache/Python - key: ${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-pip-${{ hashFiles('**/setup.py') }} + key: ${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-pip-${{ hashFiles(format('**/py{0}-ci-requirements.txt', env.PYTHON)) }} restore-keys: | ${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-pip- + - name: Install pip-tools + run: pip install pip-tools - name: Install dependencies run: make install-python-ci-dependencies - name: Test Python run: FEAST_USAGE=False pytest -n 8 --cov=./ --cov-report=xml --verbose --color=yes sdk/python/tests - - name: Ensure conflict-free dependencies - run: FEAST_USAGE=False pip-compile --dry-run sdk/python/setup.py --extra ci - name: Upload coverage to Codecov uses: codecov/codecov-action@v1 with: @@ -63,4 +63,4 @@ jobs: - name: Compile protos run: make compile-protos-go - name: Test - run: make test-go \ No newline at end of file + run: make test-go diff --git a/Makefile b/Makefile index 12e4597c0d..0e97ef4d9c 100644 --- a/Makefile +++ b/Makefile @@ -40,7 +40,11 @@ install-ci-dependencies: install-python-ci-dependencies install-java-ci-dependen # Python SDK install-python-ci-dependencies: - pip install -e "sdk/python[ci]" + cd sdk/python && python -m piptools sync requirements/py$(PYTHON)-ci-requirements.txt + cd sdk/python && python setup.py develop + +lock-python-ci-dependencies: + cd sdk/python && python -m piptools compile -U --extra ci --output-file requirements/py$(PYTHON)-ci-requirements.txt package-protos: cp -r ${ROOT_DIR}/protos ${ROOT_DIR}/sdk/python/feast/protos @@ -50,7 +54,11 @@ compile-protos-python: @$(foreach dir,$(PROTO_TYPE_SUBDIRS),grep -rli 'from feast.$(dir)' sdk/python/feast/protos | xargs -I@ sed -i.bak 's/from feast.$(dir)/from feast.protos.feast.$(dir)/g' @;) install-python: - python -m pip install -e sdk/python -U --use-deprecated=legacy-resolver + cd sdk/python && python -m piptools sync requirements/py$(PYTHON)-requirements.txt + cd sdk/python && python setup.py develop + +lock-python-dependencies: + cd sdk/python && python -m piptools compile -U --output-file requirements/py$(PYTHON)-requirements.txt benchmark-python: FEAST_USAGE=False IS_TEST=True python -m pytest --integration --benchmark --benchmark-autosave --benchmark-save-data sdk/python/tests diff --git a/infra/scripts/test-end-to-end.sh b/infra/scripts/test-end-to-end.sh index 1c94f9c02d..9f086d0d8c 100755 --- a/infra/scripts/test-end-to-end.sh +++ b/infra/scripts/test-end-to-end.sh @@ -7,7 +7,7 @@ infra/scripts/download-maven-cache.sh --archive-uri ${MAVEN_CACHE} --output-dir apt-get update && apt-get install -y redis-server postgresql libpq-dev make build-java-no-tests REVISION=develop -python -m pip install --upgrade pip setuptools wheel +python -m pip install --upgrade pip setuptools wheel pip-tools make install-python python -m pip install -qr tests/requirements.txt export FEAST_USAGE="False" diff --git a/infra/scripts/test-integration.sh b/infra/scripts/test-integration.sh index 5e88e0281b..6f50dd1450 100755 --- a/infra/scripts/test-integration.sh +++ b/infra/scripts/test-integration.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash -python -m pip install --upgrade pip setuptools wheel +python -m pip install --upgrade pip setuptools wheel pip-tools make install-python python -m pip install -qr tests/requirements.txt diff --git a/sdk/python/requirements/py3.7-ci-requirements.txt b/sdk/python/requirements/py3.7-ci-requirements.txt new file mode 100644 index 0000000000..017652873a --- /dev/null +++ b/sdk/python/requirements/py3.7-ci-requirements.txt @@ -0,0 +1,607 @@ +# +# This file is autogenerated by pip-compile with python 3.7 +# To update, run: +# +# pip-compile --extra=ci --output-file=requirements/py3.7-ci-requirements.txt +# +absl-py==0.12.0 + # via tensorflow-metadata +adal==1.2.7 + # via + # azure-datalake-store + # msrestazure +adlfs==0.5.9 + # via feast (setup.py) +aiohttp==3.8.1 + # via + # adlfs + # gcsfs +aiosignal==1.2.0 + # via aiohttp +alabaster==0.7.12 + # via sphinx +anyio==3.4.0 + # via starlette +appdirs==1.4.4 + # via black +asgiref==3.4.1 + # via uvicorn +assertpy==1.1 + # via feast (setup.py) +async-timeout==4.0.1 + # via aiohttp +asynctest==0.13.0 + # via aiohttp +attrs==21.2.0 + # via + # aiohttp + # black + # jsonschema + # pytest +avro==1.10.0 + # via feast (setup.py) +azure-core==1.21.0 + # via + # adlfs + # azure-identity + # azure-storage-blob +azure-datalake-store==0.0.52 + # via adlfs +azure-identity==1.7.1 + # via adlfs +azure-storage-blob==12.9.0 + # via adlfs +babel==2.9.1 + # via sphinx +backports.entry-points-selectable==1.1.1 + # via virtualenv +black==19.10b0 + # via feast (setup.py) +boto3==1.17.112 + # via + # feast (setup.py) + # moto +botocore==1.20.112 + # via + # boto3 + # moto + # s3transfer +cachecontrol==0.12.10 + # via firebase-admin +cachetools==4.2.4 + # via google-auth +certifi==2021.10.8 + # via + # minio + # msrest + # requests +cffi==1.15.0 + # via + # azure-datalake-store + # cryptography +cfgv==3.3.1 + # via pre-commit +charset-normalizer==2.0.8 + # via + # aiohttp + # requests +click==7.1.2 + # via + # black + # feast (setup.py) + # pip-tools + # uvicorn +colorama==0.4.4 + # via feast (setup.py) +coverage[toml]==6.2 + # via pytest-cov +cryptography==3.3.2 + # via + # adal + # azure-identity + # azure-storage-blob + # feast (setup.py) + # moto + # msal +decorator==5.1.0 + # via gcsfs +deprecation==2.1.0 + # via testcontainers +dill==0.3.4 + # via feast (setup.py) +distlib==0.3.3 + # via virtualenv +docker==5.0.3 + # via + # feast (setup.py) + # testcontainers +docutils==0.17.1 + # via + # sphinx + # sphinx-rtd-theme +execnet==1.9.0 + # via pytest-xdist +fastapi==0.70.0 + # via feast (setup.py) +fastavro==1.4.7 + # via + # feast (setup.py) + # pandavro +filelock==3.4.0 + # via virtualenv +firebase-admin==4.5.2 + # via feast (setup.py) +flake8==4.0.1 + # via feast (setup.py) +frozenlist==1.2.0 + # via + # aiohttp + # aiosignal +fsspec==2021.11.1 + # via + # adlfs + # gcsfs +gcsfs==2021.11.1 + # via feast (setup.py) +google-api-core[grpc]==1.31.4 + # via + # feast (setup.py) + # firebase-admin + # google-api-python-client + # google-cloud-bigquery + # google-cloud-bigquery-storage + # google-cloud-core + # google-cloud-datastore + # google-cloud-firestore +google-api-python-client==2.32.0 + # via firebase-admin +google-auth==1.35.0 + # via + # gcsfs + # google-api-core + # google-api-python-client + # google-auth-httplib2 + # google-auth-oauthlib + # google-cloud-storage +google-auth-httplib2==0.1.0 + # via google-api-python-client +google-auth-oauthlib==0.4.6 + # via gcsfs +google-cloud-bigquery==2.31.0 + # via feast (setup.py) +google-cloud-bigquery-storage==2.10.1 + # via feast (setup.py) +google-cloud-core==1.4.4 + # via + # feast (setup.py) + # google-cloud-bigquery + # google-cloud-datastore + # google-cloud-firestore + # google-cloud-storage +google-cloud-datastore==2.4.0 + # via feast (setup.py) +google-cloud-firestore==2.3.4 + # via firebase-admin +google-cloud-storage==1.40.0 + # via + # feast (setup.py) + # firebase-admin + # gcsfs +google-crc32c==1.3.0 + # via google-resumable-media +google-resumable-media==1.3.3 + # via + # google-cloud-bigquery + # google-cloud-storage +googleapis-common-protos==1.52.0 + # via + # feast (setup.py) + # google-api-core + # tensorflow-metadata +grpcio==1.42.0 + # via + # feast (setup.py) + # google-api-core + # google-cloud-bigquery + # grpcio-reflection + # grpcio-testing + # grpcio-tools +grpcio-reflection==1.42.0 + # via feast (setup.py) +grpcio-testing==1.34.0 + # via feast (setup.py) +grpcio-tools==1.34.0 + # via feast (setup.py) +h11==0.12.0 + # via uvicorn +hiredis==2.0.0 + # via feast (setup.py) +httplib2==0.20.2 + # via + # google-api-python-client + # google-auth-httplib2 +httptools==0.2.0 + # via uvicorn +identify==2.4.0 + # via pre-commit +idna==3.3 + # via + # anyio + # requests + # yarl +imagesize==1.3.0 + # via sphinx +importlib-metadata==4.2.0 + # via + # backports.entry-points-selectable + # flake8 + # jsonschema + # moto + # pep517 + # pluggy + # pre-commit + # pytest + # virtualenv +importlib-resources==5.4.0 + # via jsonschema +iniconfig==1.1.1 + # via pytest +isodate==0.6.0 + # via msrest +isort==5.10.1 + # via feast (setup.py) +jinja2==3.0.3 + # via + # feast (setup.py) + # moto + # sphinx +jmespath==0.10.0 + # via + # boto3 + # botocore +jsonschema==4.2.1 + # via feast (setup.py) +libcst==0.3.23 + # via + # google-cloud-bigquery-storage + # google-cloud-datastore +markupsafe==2.0.1 + # via + # jinja2 + # moto +mccabe==0.6.1 + # via flake8 +minio==7.1.0 + # via feast (setup.py) +mmh3==3.0.0 + # via feast (setup.py) +mock==2.0.0 + # via feast (setup.py) +more-itertools==8.12.0 + # via pytest +moto==2.2.17 + # via feast (setup.py) +msal==1.16.0 + # via + # azure-identity + # msal-extensions +msal-extensions==0.3.0 + # via azure-identity +msgpack==1.0.3 + # via cachecontrol +msrest==0.6.21 + # via + # azure-storage-blob + # msrestazure +msrestazure==0.6.4 + # via adlfs +multidict==5.2.0 + # via + # aiohttp + # yarl +mypy==0.790 + # via feast (setup.py) +mypy-extensions==0.4.3 + # via + # mypy + # typing-inspect +mypy-protobuf==1.24 + # via feast (setup.py) +nodeenv==1.6.0 + # via pre-commit +numpy==1.21.4 + # via + # pandas + # pandavro + # pyarrow +oauthlib==3.1.1 + # via requests-oauthlib +packaging==21.3 + # via + # deprecation + # google-api-core + # google-cloud-bigquery + # google-cloud-firestore + # pytest + # sphinx +pandas==1.3.4 + # via + # feast (setup.py) + # pandavro +pandavro==1.5.2 + # via feast (setup.py) +pathspec==0.9.0 + # via black +pbr==5.8.0 + # via mock +pep517==0.12.0 + # via pip-tools +pip-tools==6.4.0 + # via feast (setup.py) +platformdirs==2.4.0 + # via virtualenv +pluggy==0.13.1 + # via pytest +portalocker==1.7.1 + # via msal-extensions +pre-commit==2.16.0 + # via feast (setup.py) +proto-plus==1.19.6 + # via + # feast (setup.py) + # google-cloud-bigquery + # google-cloud-bigquery-storage + # google-cloud-datastore + # google-cloud-firestore +protobuf==3.19.1 + # via + # feast (setup.py) + # google-api-core + # google-cloud-bigquery + # googleapis-common-protos + # grpcio-reflection + # grpcio-testing + # grpcio-tools + # mypy-protobuf + # proto-plus + # tensorflow-metadata +py==1.11.0 + # via + # pytest + # pytest-forked +py-cpuinfo==8.0.0 + # via pytest-benchmark +pyarrow==6.0.1 + # via feast (setup.py) +pyasn1==0.4.8 + # via + # pyasn1-modules + # rsa +pyasn1-modules==0.2.8 + # via google-auth +pycodestyle==2.8.0 + # via flake8 +pycparser==2.21 + # via cffi +pydantic==1.8.2 + # via + # fastapi + # feast (setup.py) +pyflakes==2.4.0 + # via flake8 +pygments==2.10.0 + # via sphinx +pyjwt[crypto]==2.3.0 + # via + # adal + # msal +pyparsing==3.0.6 + # via + # httplib2 + # packaging +pyrsistent==0.18.0 + # via jsonschema +pytest==6.0.0 + # via + # feast (setup.py) + # pytest-benchmark + # pytest-cov + # pytest-forked + # pytest-lazy-fixture + # pytest-mock + # pytest-ordering + # pytest-timeout + # pytest-xdist +pytest-benchmark==3.4.1 + # via feast (setup.py) +pytest-cov==3.0.0 + # via feast (setup.py) +pytest-forked==1.3.0 + # via pytest-xdist +pytest-lazy-fixture==0.6.3 + # via feast (setup.py) +pytest-mock==1.10.4 + # via feast (setup.py) +pytest-ordering==0.6 + # via feast (setup.py) +pytest-timeout==1.4.2 + # via feast (setup.py) +pytest-xdist==2.4.0 + # via feast (setup.py) +python-dateutil==2.8.2 + # via + # adal + # botocore + # google-cloud-bigquery + # moto + # pandas +python-dotenv==0.19.2 + # via uvicorn +pytz==2021.3 + # via + # babel + # google-api-core + # moto + # pandas +pyyaml==6.0 + # via + # feast (setup.py) + # libcst + # pre-commit + # uvicorn +redis==3.5.3 + # via redis-py-cluster +redis-py-cluster==2.1.2 + # via feast (setup.py) +regex==2021.11.10 + # via black +requests==2.26.0 + # via + # adal + # adlfs + # azure-core + # azure-datalake-store + # cachecontrol + # docker + # gcsfs + # google-api-core + # google-cloud-bigquery + # google-cloud-storage + # moto + # msal + # msrest + # requests-oauthlib + # responses + # sphinx +requests-oauthlib==1.3.0 + # via + # google-auth-oauthlib + # msrest +responses==0.16.0 + # via moto +rsa==4.8 + # via google-auth +s3transfer==0.4.2 + # via boto3 +six==1.16.0 + # via + # absl-py + # azure-core + # azure-identity + # cryptography + # google-api-core + # google-auth + # google-auth-httplib2 + # google-cloud-core + # google-resumable-media + # grpcio + # mock + # msrestazure + # pandavro + # python-dateutil + # responses + # virtualenv +sniffio==1.2.0 + # via anyio +snowballstemmer==2.2.0 + # via sphinx +sphinx==4.3.1 + # via + # feast (setup.py) + # sphinx-rtd-theme +sphinx-rtd-theme==1.0.0 + # via feast (setup.py) +sphinxcontrib-applehelp==1.0.2 + # via sphinx +sphinxcontrib-devhelp==1.0.2 + # via sphinx +sphinxcontrib-htmlhelp==2.0.0 + # via sphinx +sphinxcontrib-jsmath==1.0.1 + # via sphinx +sphinxcontrib-qthelp==1.0.3 + # via sphinx +sphinxcontrib-serializinghtml==1.1.5 + # via sphinx +starlette==0.16.0 + # via fastapi +tabulate==0.8.9 + # via feast (setup.py) +tenacity==8.0.1 + # via feast (setup.py) +tensorflow-metadata==1.5.0 + # via feast (setup.py) +testcontainers==3.4.2 + # via feast (setup.py) +toml==0.10.2 + # via + # black + # feast (setup.py) + # pre-commit + # pytest +tomli==1.2.2 + # via + # coverage + # pep517 +tqdm==4.62.3 + # via feast (setup.py) +typed-ast==1.4.3 + # via + # black + # mypy +typing-extensions==4.0.1 + # via + # aiohttp + # anyio + # asgiref + # async-timeout + # importlib-metadata + # libcst + # mypy + # pydantic + # starlette + # typing-inspect + # uvicorn + # yarl +typing-inspect==0.7.1 + # via libcst +uritemplate==4.1.1 + # via google-api-python-client +urllib3==1.26.7 + # via + # botocore + # feast (setup.py) + # minio + # requests + # responses +uvicorn[standard]==0.15.0 + # via feast (setup.py) +uvloop==0.16.0 + # via uvicorn +virtualenv==20.10.0 + # via pre-commit +watchgod==0.7 + # via uvicorn +websocket-client==1.2.1 + # via docker +websockets==10.1 + # via uvicorn +werkzeug==2.0.2 + # via moto +wheel==0.37.0 + # via pip-tools +wrapt==1.13.3 + # via testcontainers +xmltodict==0.12.0 + # via moto +yarl==1.7.2 + # via aiohttp +zipp==3.6.0 + # via + # importlib-metadata + # importlib-resources + # pep517 + +# The following packages are considered to be unsafe in a requirements file: +# pip +# setuptools diff --git a/sdk/python/requirements/py3.7-requirements.txt b/sdk/python/requirements/py3.7-requirements.txt new file mode 100644 index 0000000000..b2473f1c70 --- /dev/null +++ b/sdk/python/requirements/py3.7-requirements.txt @@ -0,0 +1,164 @@ +# +# This file is autogenerated by pip-compile with python 3.7 +# To update, run: +# +# pip-compile --output-file=requirements/py3.7-requirements.txt +# +absl-py==0.12.0 + # via tensorflow-metadata +anyio==3.4.0 + # via starlette +asgiref==3.4.1 + # via uvicorn +attrs==21.2.0 + # via jsonschema +cachetools==4.2.4 + # via google-auth +certifi==2021.10.8 + # via requests +charset-normalizer==2.0.8 + # via requests +click==7.1.2 + # via + # feast (setup.py) + # uvicorn +colorama==0.4.4 + # via feast (setup.py) +dill==0.3.4 + # via feast (setup.py) +fastapi==0.70.0 + # via feast (setup.py) +fastavro==1.4.7 + # via + # feast (setup.py) + # pandavro +google-api-core==2.2.2 + # via feast (setup.py) +google-auth==2.3.3 + # via google-api-core +googleapis-common-protos==1.52.0 + # via + # feast (setup.py) + # google-api-core + # tensorflow-metadata +grpcio==1.42.0 + # via + # feast (setup.py) + # grpcio-reflection +grpcio-reflection==1.42.0 + # via feast (setup.py) +h11==0.12.0 + # via uvicorn +httptools==0.2.0 + # via uvicorn +idna==3.3 + # via + # anyio + # requests +importlib-metadata==4.8.2 + # via jsonschema +importlib-resources==5.4.0 + # via jsonschema +jinja2==3.0.3 + # via feast (setup.py) +jsonschema==4.2.1 + # via feast (setup.py) +markupsafe==2.0.1 + # via jinja2 +mmh3==3.0.0 + # via feast (setup.py) +numpy==1.21.4 + # via + # pandas + # pandavro + # pyarrow +pandas==1.3.4 + # via + # feast (setup.py) + # pandavro +pandavro==1.5.2 + # via feast (setup.py) +proto-plus==1.19.6 + # via feast (setup.py) +protobuf==3.19.1 + # via + # feast (setup.py) + # google-api-core + # googleapis-common-protos + # grpcio-reflection + # proto-plus + # tensorflow-metadata +pyarrow==6.0.1 + # via feast (setup.py) +pyasn1==0.4.8 + # via + # pyasn1-modules + # rsa +pyasn1-modules==0.2.8 + # via google-auth +pydantic==1.8.2 + # via + # fastapi + # feast (setup.py) +pyrsistent==0.18.0 + # via jsonschema +python-dateutil==2.8.2 + # via pandas +python-dotenv==0.19.2 + # via uvicorn +pytz==2021.3 + # via pandas +pyyaml==6.0 + # via + # feast (setup.py) + # uvicorn +requests==2.26.0 + # via google-api-core +rsa==4.8 + # via google-auth +six==1.16.0 + # via + # absl-py + # google-auth + # grpcio + # pandavro + # python-dateutil +sniffio==1.2.0 + # via anyio +starlette==0.16.0 + # via fastapi +tabulate==0.8.9 + # via feast (setup.py) +tenacity==8.0.1 + # via feast (setup.py) +tensorflow-metadata==1.5.0 + # via feast (setup.py) +toml==0.10.2 + # via feast (setup.py) +tqdm==4.62.3 + # via feast (setup.py) +typing-extensions==4.0.1 + # via + # anyio + # asgiref + # importlib-metadata + # pydantic + # starlette + # uvicorn +urllib3==1.26.7 + # via requests +uvicorn[standard]==0.15.0 + # via feast (setup.py) +uvloop==0.16.0 + # via uvicorn +watchgod==0.7 + # via uvicorn +websockets==10.1 + # via uvicorn +zipp==3.6.0 + # via + # importlib-metadata + # importlib-resources + +# The following packages are considered to be unsafe in a requirements file: +# setuptools diff --git a/sdk/python/requirements/py3.8-ci-requirements.txt b/sdk/python/requirements/py3.8-ci-requirements.txt new file mode 100644 index 0000000000..a2df153c01 --- /dev/null +++ b/sdk/python/requirements/py3.8-ci-requirements.txt @@ -0,0 +1,584 @@ +# +# This file is autogenerated by pip-compile with python 3.8 +# To update, run: +# +# pip-compile --extra=ci --output-file=requirements/py3.8-ci-requirements.txt +# +absl-py==0.12.0 + # via tensorflow-metadata +adal==1.2.7 + # via + # azure-datalake-store + # msrestazure +adlfs==0.5.9 + # via feast (setup.py) +aiohttp==3.8.1 + # via + # adlfs + # gcsfs +aiosignal==1.2.0 + # via aiohttp +alabaster==0.7.12 + # via sphinx +anyio==3.4.0 + # via starlette +appdirs==1.4.4 + # via black +asgiref==3.4.1 + # via uvicorn +assertpy==1.1 + # via feast (setup.py) +async-timeout==4.0.1 + # via aiohttp +attrs==21.2.0 + # via + # aiohttp + # black + # jsonschema + # pytest +avro==1.10.0 + # via feast (setup.py) +azure-core==1.21.0 + # via + # adlfs + # azure-identity + # azure-storage-blob +azure-datalake-store==0.0.52 + # via adlfs +azure-identity==1.7.1 + # via adlfs +azure-storage-blob==12.9.0 + # via adlfs +babel==2.9.1 + # via sphinx +backports.entry-points-selectable==1.1.1 + # via virtualenv +black==19.10b0 + # via feast (setup.py) +boto3==1.17.112 + # via + # feast (setup.py) + # moto +botocore==1.20.112 + # via + # boto3 + # moto + # s3transfer +cachecontrol==0.12.10 + # via firebase-admin +cachetools==4.2.4 + # via google-auth +certifi==2021.10.8 + # via + # minio + # msrest + # requests +cffi==1.15.0 + # via + # azure-datalake-store + # cryptography +cfgv==3.3.1 + # via pre-commit +charset-normalizer==2.0.8 + # via + # aiohttp + # requests +click==7.1.2 + # via + # black + # feast (setup.py) + # pip-tools + # uvicorn +colorama==0.4.4 + # via feast (setup.py) +coverage[toml]==6.2 + # via pytest-cov +cryptography==3.3.2 + # via + # adal + # azure-identity + # azure-storage-blob + # feast (setup.py) + # moto + # msal +decorator==5.1.0 + # via gcsfs +deprecation==2.1.0 + # via testcontainers +dill==0.3.4 + # via feast (setup.py) +distlib==0.3.3 + # via virtualenv +docker==5.0.3 + # via + # feast (setup.py) + # testcontainers +docutils==0.17.1 + # via + # sphinx + # sphinx-rtd-theme +execnet==1.9.0 + # via pytest-xdist +fastapi==0.70.0 + # via feast (setup.py) +fastavro==1.4.7 + # via + # feast (setup.py) + # pandavro +filelock==3.4.0 + # via virtualenv +firebase-admin==4.5.2 + # via feast (setup.py) +flake8==4.0.1 + # via feast (setup.py) +frozenlist==1.2.0 + # via + # aiohttp + # aiosignal +fsspec==2021.11.1 + # via + # adlfs + # gcsfs +gcsfs==2021.11.1 + # via feast (setup.py) +google-api-core[grpc]==1.31.4 + # via + # feast (setup.py) + # firebase-admin + # google-api-python-client + # google-cloud-bigquery + # google-cloud-bigquery-storage + # google-cloud-core + # google-cloud-datastore + # google-cloud-firestore +google-api-python-client==2.32.0 + # via firebase-admin +google-auth==1.35.0 + # via + # gcsfs + # google-api-core + # google-api-python-client + # google-auth-httplib2 + # google-auth-oauthlib + # google-cloud-storage +google-auth-httplib2==0.1.0 + # via google-api-python-client +google-auth-oauthlib==0.4.6 + # via gcsfs +google-cloud-bigquery==2.31.0 + # via feast (setup.py) +google-cloud-bigquery-storage==2.10.1 + # via feast (setup.py) +google-cloud-core==1.4.4 + # via + # feast (setup.py) + # google-cloud-bigquery + # google-cloud-datastore + # google-cloud-firestore + # google-cloud-storage +google-cloud-datastore==2.4.0 + # via feast (setup.py) +google-cloud-firestore==2.3.4 + # via firebase-admin +google-cloud-storage==1.40.0 + # via + # feast (setup.py) + # firebase-admin + # gcsfs +google-crc32c==1.3.0 + # via google-resumable-media +google-resumable-media==1.3.3 + # via + # google-cloud-bigquery + # google-cloud-storage +googleapis-common-protos==1.52.0 + # via + # feast (setup.py) + # google-api-core + # tensorflow-metadata +grpcio==1.42.0 + # via + # feast (setup.py) + # google-api-core + # google-cloud-bigquery + # grpcio-reflection + # grpcio-testing + # grpcio-tools +grpcio-reflection==1.42.0 + # via feast (setup.py) +grpcio-testing==1.34.0 + # via feast (setup.py) +grpcio-tools==1.34.0 + # via feast (setup.py) +h11==0.12.0 + # via uvicorn +hiredis==2.0.0 + # via feast (setup.py) +httplib2==0.20.2 + # via + # google-api-python-client + # google-auth-httplib2 +httptools==0.2.0 + # via uvicorn +identify==2.4.0 + # via pre-commit +idna==3.3 + # via + # anyio + # requests + # yarl +imagesize==1.3.0 + # via sphinx +importlib-resources==5.4.0 + # via jsonschema +iniconfig==1.1.1 + # via pytest +isodate==0.6.0 + # via msrest +isort==5.10.1 + # via feast (setup.py) +jinja2==3.0.3 + # via + # feast (setup.py) + # moto + # sphinx +jmespath==0.10.0 + # via + # boto3 + # botocore +jsonschema==4.2.1 + # via feast (setup.py) +libcst==0.3.23 + # via + # google-cloud-bigquery-storage + # google-cloud-datastore +markupsafe==2.0.1 + # via + # jinja2 + # moto +mccabe==0.6.1 + # via flake8 +minio==7.1.0 + # via feast (setup.py) +mmh3==3.0.0 + # via feast (setup.py) +mock==2.0.0 + # via feast (setup.py) +more-itertools==8.12.0 + # via pytest +moto==2.2.17 + # via feast (setup.py) +msal==1.16.0 + # via + # azure-identity + # msal-extensions +msal-extensions==0.3.0 + # via azure-identity +msgpack==1.0.3 + # via cachecontrol +msrest==0.6.21 + # via + # azure-storage-blob + # msrestazure +msrestazure==0.6.4 + # via adlfs +multidict==5.2.0 + # via + # aiohttp + # yarl +mypy==0.790 + # via feast (setup.py) +mypy-extensions==0.4.3 + # via + # mypy + # typing-inspect +mypy-protobuf==1.24 + # via feast (setup.py) +nodeenv==1.6.0 + # via pre-commit +numpy==1.21.4 + # via + # pandas + # pandavro + # pyarrow +oauthlib==3.1.1 + # via requests-oauthlib +packaging==21.3 + # via + # deprecation + # google-api-core + # google-cloud-bigquery + # google-cloud-firestore + # pytest + # sphinx +pandas==1.3.4 + # via + # feast (setup.py) + # pandavro +pandavro==1.5.2 + # via feast (setup.py) +pathspec==0.9.0 + # via black +pbr==5.8.0 + # via mock +pep517==0.12.0 + # via pip-tools +pip-tools==6.4.0 + # via feast (setup.py) +platformdirs==2.4.0 + # via virtualenv +pluggy==0.13.1 + # via pytest +portalocker==1.7.1 + # via msal-extensions +pre-commit==2.16.0 + # via feast (setup.py) +proto-plus==1.19.6 + # via + # feast (setup.py) + # google-cloud-bigquery + # google-cloud-bigquery-storage + # google-cloud-datastore + # google-cloud-firestore +protobuf==3.19.1 + # via + # feast (setup.py) + # google-api-core + # google-cloud-bigquery + # googleapis-common-protos + # grpcio-reflection + # grpcio-testing + # grpcio-tools + # mypy-protobuf + # proto-plus + # tensorflow-metadata +py==1.11.0 + # via + # pytest + # pytest-forked +py-cpuinfo==8.0.0 + # via pytest-benchmark +pyarrow==6.0.1 + # via feast (setup.py) +pyasn1==0.4.8 + # via + # pyasn1-modules + # rsa +pyasn1-modules==0.2.8 + # via google-auth +pycodestyle==2.8.0 + # via flake8 +pycparser==2.21 + # via cffi +pydantic==1.8.2 + # via + # fastapi + # feast (setup.py) +pyflakes==2.4.0 + # via flake8 +pygments==2.10.0 + # via sphinx +pyjwt[crypto]==2.3.0 + # via + # adal + # msal +pyparsing==3.0.6 + # via + # httplib2 + # packaging +pyrsistent==0.18.0 + # via jsonschema +pytest==6.0.0 + # via + # feast (setup.py) + # pytest-benchmark + # pytest-cov + # pytest-forked + # pytest-lazy-fixture + # pytest-mock + # pytest-ordering + # pytest-timeout + # pytest-xdist +pytest-benchmark==3.4.1 + # via feast (setup.py) +pytest-cov==3.0.0 + # via feast (setup.py) +pytest-forked==1.3.0 + # via pytest-xdist +pytest-lazy-fixture==0.6.3 + # via feast (setup.py) +pytest-mock==1.10.4 + # via feast (setup.py) +pytest-ordering==0.6 + # via feast (setup.py) +pytest-timeout==1.4.2 + # via feast (setup.py) +pytest-xdist==2.4.0 + # via feast (setup.py) +python-dateutil==2.8.2 + # via + # adal + # botocore + # google-cloud-bigquery + # moto + # pandas +python-dotenv==0.19.2 + # via uvicorn +pytz==2021.3 + # via + # babel + # google-api-core + # moto + # pandas +pyyaml==6.0 + # via + # feast (setup.py) + # libcst + # pre-commit + # uvicorn +redis==3.5.3 + # via redis-py-cluster +redis-py-cluster==2.1.2 + # via feast (setup.py) +regex==2021.11.10 + # via black +requests==2.26.0 + # via + # adal + # adlfs + # azure-core + # azure-datalake-store + # cachecontrol + # docker + # gcsfs + # google-api-core + # google-cloud-bigquery + # google-cloud-storage + # moto + # msal + # msrest + # requests-oauthlib + # responses + # sphinx +requests-oauthlib==1.3.0 + # via + # google-auth-oauthlib + # msrest +responses==0.16.0 + # via moto +rsa==4.8 + # via google-auth +s3transfer==0.4.2 + # via boto3 +six==1.16.0 + # via + # absl-py + # azure-core + # azure-identity + # cryptography + # google-api-core + # google-auth + # google-auth-httplib2 + # google-cloud-core + # google-resumable-media + # grpcio + # mock + # msrestazure + # pandavro + # python-dateutil + # responses + # virtualenv +sniffio==1.2.0 + # via anyio +snowballstemmer==2.2.0 + # via sphinx +sphinx==4.3.1 + # via + # feast (setup.py) + # sphinx-rtd-theme +sphinx-rtd-theme==1.0.0 + # via feast (setup.py) +sphinxcontrib-applehelp==1.0.2 + # via sphinx +sphinxcontrib-devhelp==1.0.2 + # via sphinx +sphinxcontrib-htmlhelp==2.0.0 + # via sphinx +sphinxcontrib-jsmath==1.0.1 + # via sphinx +sphinxcontrib-qthelp==1.0.3 + # via sphinx +sphinxcontrib-serializinghtml==1.1.5 + # via sphinx +starlette==0.16.0 + # via fastapi +tabulate==0.8.9 + # via feast (setup.py) +tenacity==8.0.1 + # via feast (setup.py) +tensorflow-metadata==1.5.0 + # via feast (setup.py) +testcontainers==3.4.2 + # via feast (setup.py) +toml==0.10.2 + # via + # black + # feast (setup.py) + # pre-commit + # pytest +tomli==1.2.2 + # via + # coverage + # pep517 +tqdm==4.62.3 + # via feast (setup.py) +typed-ast==1.4.3 + # via + # black + # mypy +typing-extensions==4.0.1 + # via + # async-timeout + # libcst + # mypy + # pydantic + # typing-inspect +typing-inspect==0.7.1 + # via libcst +uritemplate==4.1.1 + # via google-api-python-client +urllib3==1.26.7 + # via + # botocore + # feast (setup.py) + # minio + # requests + # responses +uvicorn[standard]==0.15.0 + # via feast (setup.py) +uvloop==0.16.0 + # via uvicorn +virtualenv==20.10.0 + # via pre-commit +watchgod==0.7 + # via uvicorn +websocket-client==1.2.1 + # via docker +websockets==10.1 + # via uvicorn +werkzeug==2.0.2 + # via moto +wheel==0.37.0 + # via pip-tools +wrapt==1.13.3 + # via testcontainers +xmltodict==0.12.0 + # via moto +yarl==1.7.2 + # via aiohttp +zipp==3.6.0 + # via importlib-resources + +# The following packages are considered to be unsafe in a requirements file: +# pip +# setuptools diff --git a/sdk/python/requirements/py3.8-requirements.txt b/sdk/python/requirements/py3.8-requirements.txt new file mode 100644 index 0000000000..e6887dea55 --- /dev/null +++ b/sdk/python/requirements/py3.8-requirements.txt @@ -0,0 +1,154 @@ +# +# This file is autogenerated by pip-compile with python 3.8 +# To update, run: +# +# pip-compile --output-file=requirements/py3.8-requirements.txt +# +absl-py==0.12.0 + # via tensorflow-metadata +anyio==3.4.0 + # via starlette +asgiref==3.4.1 + # via uvicorn +attrs==21.2.0 + # via jsonschema +cachetools==4.2.4 + # via google-auth +certifi==2021.10.8 + # via requests +charset-normalizer==2.0.8 + # via requests +click==7.1.2 + # via + # feast (setup.py) + # uvicorn +colorama==0.4.4 + # via feast (setup.py) +dill==0.3.4 + # via feast (setup.py) +fastapi==0.70.0 + # via feast (setup.py) +fastavro==1.4.7 + # via + # feast (setup.py) + # pandavro +google-api-core==2.2.2 + # via feast (setup.py) +google-auth==2.3.3 + # via google-api-core +googleapis-common-protos==1.52.0 + # via + # feast (setup.py) + # google-api-core + # tensorflow-metadata +grpcio==1.42.0 + # via + # feast (setup.py) + # grpcio-reflection +grpcio-reflection==1.42.0 + # via feast (setup.py) +h11==0.12.0 + # via uvicorn +httptools==0.2.0 + # via uvicorn +idna==3.3 + # via + # anyio + # requests +importlib-resources==5.4.0 + # via jsonschema +jinja2==3.0.3 + # via feast (setup.py) +jsonschema==4.2.1 + # via feast (setup.py) +markupsafe==2.0.1 + # via jinja2 +mmh3==3.0.0 + # via feast (setup.py) +numpy==1.21.4 + # via + # pandas + # pandavro + # pyarrow +pandas==1.3.4 + # via + # feast (setup.py) + # pandavro +pandavro==1.5.2 + # via feast (setup.py) +proto-plus==1.19.6 + # via feast (setup.py) +protobuf==3.19.1 + # via + # feast (setup.py) + # google-api-core + # googleapis-common-protos + # grpcio-reflection + # proto-plus + # tensorflow-metadata +pyarrow==6.0.1 + # via feast (setup.py) +pyasn1==0.4.8 + # via + # pyasn1-modules + # rsa +pyasn1-modules==0.2.8 + # via google-auth +pydantic==1.8.2 + # via + # fastapi + # feast (setup.py) +pyrsistent==0.18.0 + # via jsonschema +python-dateutil==2.8.2 + # via pandas +python-dotenv==0.19.2 + # via uvicorn +pytz==2021.3 + # via pandas +pyyaml==6.0 + # via + # feast (setup.py) + # uvicorn +requests==2.26.0 + # via google-api-core +rsa==4.8 + # via google-auth +six==1.16.0 + # via + # absl-py + # google-auth + # grpcio + # pandavro + # python-dateutil +sniffio==1.2.0 + # via anyio +starlette==0.16.0 + # via fastapi +tabulate==0.8.9 + # via feast (setup.py) +tenacity==8.0.1 + # via feast (setup.py) +tensorflow-metadata==1.5.0 + # via feast (setup.py) +toml==0.10.2 + # via feast (setup.py) +tqdm==4.62.3 + # via feast (setup.py) +typing-extensions==4.0.1 + # via pydantic +urllib3==1.26.7 + # via requests +uvicorn[standard]==0.15.0 + # via feast (setup.py) +uvloop==0.16.0 + # via uvicorn +watchgod==0.7 + # via uvicorn +websockets==10.1 + # via uvicorn +zipp==3.6.0 + # via importlib-resources + +# The following packages are considered to be unsafe in a requirements file: +# setuptools diff --git a/sdk/python/requirements/py3.9-ci-requirements.txt b/sdk/python/requirements/py3.9-ci-requirements.txt new file mode 100644 index 0000000000..aa4cee54e4 --- /dev/null +++ b/sdk/python/requirements/py3.9-ci-requirements.txt @@ -0,0 +1,580 @@ +# +# This file is autogenerated by pip-compile with python 3.9 +# To update, run: +# +# pip-compile --extra=ci --output-file=requirements/py3.9-ci-requirements.txt +# +absl-py==0.12.0 + # via tensorflow-metadata +adal==1.2.7 + # via + # azure-datalake-store + # msrestazure +adlfs==0.5.9 + # via feast (setup.py) +aiohttp==3.8.1 + # via + # adlfs + # gcsfs +aiosignal==1.2.0 + # via aiohttp +alabaster==0.7.12 + # via sphinx +anyio==3.4.0 + # via starlette +appdirs==1.4.4 + # via black +asgiref==3.4.1 + # via uvicorn +assertpy==1.1 + # via feast (setup.py) +async-timeout==4.0.1 + # via aiohttp +attrs==21.2.0 + # via + # aiohttp + # black + # jsonschema + # pytest +avro==1.10.0 + # via feast (setup.py) +azure-core==1.21.0 + # via + # adlfs + # azure-identity + # azure-storage-blob +azure-datalake-store==0.0.52 + # via adlfs +azure-identity==1.7.1 + # via adlfs +azure-storage-blob==12.9.0 + # via adlfs +babel==2.9.1 + # via sphinx +backports.entry-points-selectable==1.1.1 + # via virtualenv +black==19.10b0 + # via feast (setup.py) +boto3==1.17.112 + # via + # feast (setup.py) + # moto +botocore==1.20.112 + # via + # boto3 + # moto + # s3transfer +cachecontrol==0.12.10 + # via firebase-admin +cachetools==4.2.4 + # via google-auth +certifi==2021.10.8 + # via + # minio + # msrest + # requests +cffi==1.15.0 + # via + # azure-datalake-store + # cryptography +cfgv==3.3.1 + # via pre-commit +charset-normalizer==2.0.8 + # via + # aiohttp + # requests +click==7.1.2 + # via + # black + # feast (setup.py) + # pip-tools + # uvicorn +colorama==0.4.4 + # via feast (setup.py) +coverage[toml]==6.2 + # via pytest-cov +cryptography==3.3.2 + # via + # adal + # azure-identity + # azure-storage-blob + # feast (setup.py) + # moto + # msal +decorator==5.1.0 + # via gcsfs +deprecation==2.1.0 + # via testcontainers +dill==0.3.4 + # via feast (setup.py) +distlib==0.3.3 + # via virtualenv +docker==5.0.3 + # via + # feast (setup.py) + # testcontainers +docutils==0.17.1 + # via + # sphinx + # sphinx-rtd-theme +execnet==1.9.0 + # via pytest-xdist +fastapi==0.70.0 + # via feast (setup.py) +fastavro==1.4.7 + # via + # feast (setup.py) + # pandavro +filelock==3.4.0 + # via virtualenv +firebase-admin==4.5.2 + # via feast (setup.py) +flake8==4.0.1 + # via feast (setup.py) +frozenlist==1.2.0 + # via + # aiohttp + # aiosignal +fsspec==2021.11.1 + # via + # adlfs + # gcsfs +gcsfs==2021.11.1 + # via feast (setup.py) +google-api-core[grpc]==1.31.4 + # via + # feast (setup.py) + # firebase-admin + # google-api-python-client + # google-cloud-bigquery + # google-cloud-bigquery-storage + # google-cloud-core + # google-cloud-datastore + # google-cloud-firestore +google-api-python-client==2.32.0 + # via firebase-admin +google-auth==1.35.0 + # via + # gcsfs + # google-api-core + # google-api-python-client + # google-auth-httplib2 + # google-auth-oauthlib + # google-cloud-storage +google-auth-httplib2==0.1.0 + # via google-api-python-client +google-auth-oauthlib==0.4.6 + # via gcsfs +google-cloud-bigquery==2.31.0 + # via feast (setup.py) +google-cloud-bigquery-storage==2.10.1 + # via feast (setup.py) +google-cloud-core==1.4.4 + # via + # feast (setup.py) + # google-cloud-bigquery + # google-cloud-datastore + # google-cloud-firestore + # google-cloud-storage +google-cloud-datastore==2.4.0 + # via feast (setup.py) +google-cloud-firestore==2.3.4 + # via firebase-admin +google-cloud-storage==1.40.0 + # via + # feast (setup.py) + # firebase-admin + # gcsfs +google-crc32c==1.3.0 + # via google-resumable-media +google-resumable-media==1.3.3 + # via + # google-cloud-bigquery + # google-cloud-storage +googleapis-common-protos==1.52.0 + # via + # feast (setup.py) + # google-api-core + # tensorflow-metadata +grpcio==1.42.0 + # via + # feast (setup.py) + # google-api-core + # google-cloud-bigquery + # grpcio-reflection + # grpcio-testing + # grpcio-tools +grpcio-reflection==1.42.0 + # via feast (setup.py) +grpcio-testing==1.34.0 + # via feast (setup.py) +grpcio-tools==1.34.0 + # via feast (setup.py) +h11==0.12.0 + # via uvicorn +hiredis==2.0.0 + # via feast (setup.py) +httplib2==0.20.2 + # via + # google-api-python-client + # google-auth-httplib2 +httptools==0.2.0 + # via uvicorn +identify==2.4.0 + # via pre-commit +idna==3.3 + # via + # anyio + # requests + # yarl +imagesize==1.3.0 + # via sphinx +iniconfig==1.1.1 + # via pytest +isodate==0.6.0 + # via msrest +isort==5.10.1 + # via feast (setup.py) +jinja2==3.0.3 + # via + # feast (setup.py) + # moto + # sphinx +jmespath==0.10.0 + # via + # boto3 + # botocore +jsonschema==4.2.1 + # via feast (setup.py) +libcst==0.3.23 + # via + # google-cloud-bigquery-storage + # google-cloud-datastore +markupsafe==2.0.1 + # via + # jinja2 + # moto +mccabe==0.6.1 + # via flake8 +minio==7.1.0 + # via feast (setup.py) +mmh3==3.0.0 + # via feast (setup.py) +mock==2.0.0 + # via feast (setup.py) +more-itertools==8.12.0 + # via pytest +moto==2.2.17 + # via feast (setup.py) +msal==1.16.0 + # via + # azure-identity + # msal-extensions +msal-extensions==0.3.0 + # via azure-identity +msgpack==1.0.3 + # via cachecontrol +msrest==0.6.21 + # via + # azure-storage-blob + # msrestazure +msrestazure==0.6.4 + # via adlfs +multidict==5.2.0 + # via + # aiohttp + # yarl +mypy==0.790 + # via feast (setup.py) +mypy-extensions==0.4.3 + # via + # mypy + # typing-inspect +mypy-protobuf==1.24 + # via feast (setup.py) +nodeenv==1.6.0 + # via pre-commit +numpy==1.21.4 + # via + # pandas + # pandavro + # pyarrow +oauthlib==3.1.1 + # via requests-oauthlib +packaging==21.3 + # via + # deprecation + # google-api-core + # google-cloud-bigquery + # google-cloud-firestore + # pytest + # sphinx +pandas==1.3.4 + # via + # feast (setup.py) + # pandavro +pandavro==1.5.2 + # via feast (setup.py) +pathspec==0.9.0 + # via black +pbr==5.8.0 + # via mock +pep517==0.12.0 + # via pip-tools +pip-tools==6.4.0 + # via feast (setup.py) +platformdirs==2.4.0 + # via virtualenv +pluggy==0.13.1 + # via pytest +portalocker==1.7.1 + # via msal-extensions +pre-commit==2.16.0 + # via feast (setup.py) +proto-plus==1.19.6 + # via + # feast (setup.py) + # google-cloud-bigquery + # google-cloud-bigquery-storage + # google-cloud-datastore + # google-cloud-firestore +protobuf==3.19.1 + # via + # feast (setup.py) + # google-api-core + # google-cloud-bigquery + # googleapis-common-protos + # grpcio-reflection + # grpcio-testing + # grpcio-tools + # mypy-protobuf + # proto-plus + # tensorflow-metadata +py==1.11.0 + # via + # pytest + # pytest-forked +py-cpuinfo==8.0.0 + # via pytest-benchmark +pyarrow==6.0.1 + # via feast (setup.py) +pyasn1==0.4.8 + # via + # pyasn1-modules + # rsa +pyasn1-modules==0.2.8 + # via google-auth +pycodestyle==2.8.0 + # via flake8 +pycparser==2.21 + # via cffi +pydantic==1.8.2 + # via + # fastapi + # feast (setup.py) +pyflakes==2.4.0 + # via flake8 +pygments==2.10.0 + # via sphinx +pyjwt[crypto]==2.3.0 + # via + # adal + # msal +pyparsing==3.0.6 + # via + # httplib2 + # packaging +pyrsistent==0.18.0 + # via jsonschema +pytest==6.0.0 + # via + # feast (setup.py) + # pytest-benchmark + # pytest-cov + # pytest-forked + # pytest-lazy-fixture + # pytest-mock + # pytest-ordering + # pytest-timeout + # pytest-xdist +pytest-benchmark==3.4.1 + # via feast (setup.py) +pytest-cov==3.0.0 + # via feast (setup.py) +pytest-forked==1.3.0 + # via pytest-xdist +pytest-lazy-fixture==0.6.3 + # via feast (setup.py) +pytest-mock==1.10.4 + # via feast (setup.py) +pytest-ordering==0.6 + # via feast (setup.py) +pytest-timeout==1.4.2 + # via feast (setup.py) +pytest-xdist==2.4.0 + # via feast (setup.py) +python-dateutil==2.8.2 + # via + # adal + # botocore + # google-cloud-bigquery + # moto + # pandas +python-dotenv==0.19.2 + # via uvicorn +pytz==2021.3 + # via + # babel + # google-api-core + # moto + # pandas +pyyaml==6.0 + # via + # feast (setup.py) + # libcst + # pre-commit + # uvicorn +redis==3.5.3 + # via redis-py-cluster +redis-py-cluster==2.1.2 + # via feast (setup.py) +regex==2021.11.10 + # via black +requests==2.26.0 + # via + # adal + # adlfs + # azure-core + # azure-datalake-store + # cachecontrol + # docker + # gcsfs + # google-api-core + # google-cloud-bigquery + # google-cloud-storage + # moto + # msal + # msrest + # requests-oauthlib + # responses + # sphinx +requests-oauthlib==1.3.0 + # via + # google-auth-oauthlib + # msrest +responses==0.16.0 + # via moto +rsa==4.8 + # via google-auth +s3transfer==0.4.2 + # via boto3 +six==1.16.0 + # via + # absl-py + # azure-core + # azure-identity + # cryptography + # google-api-core + # google-auth + # google-auth-httplib2 + # google-cloud-core + # google-resumable-media + # grpcio + # mock + # msrestazure + # pandavro + # python-dateutil + # responses + # virtualenv +sniffio==1.2.0 + # via anyio +snowballstemmer==2.2.0 + # via sphinx +sphinx==4.3.1 + # via + # feast (setup.py) + # sphinx-rtd-theme +sphinx-rtd-theme==1.0.0 + # via feast (setup.py) +sphinxcontrib-applehelp==1.0.2 + # via sphinx +sphinxcontrib-devhelp==1.0.2 + # via sphinx +sphinxcontrib-htmlhelp==2.0.0 + # via sphinx +sphinxcontrib-jsmath==1.0.1 + # via sphinx +sphinxcontrib-qthelp==1.0.3 + # via sphinx +sphinxcontrib-serializinghtml==1.1.5 + # via sphinx +starlette==0.16.0 + # via fastapi +tabulate==0.8.9 + # via feast (setup.py) +tenacity==8.0.1 + # via feast (setup.py) +tensorflow-metadata==1.5.0 + # via feast (setup.py) +testcontainers==3.4.2 + # via feast (setup.py) +toml==0.10.2 + # via + # black + # feast (setup.py) + # pre-commit + # pytest +tomli==1.2.2 + # via + # coverage + # pep517 +tqdm==4.62.3 + # via feast (setup.py) +typed-ast==1.4.3 + # via + # black + # mypy +typing-extensions==4.0.1 + # via + # async-timeout + # libcst + # mypy + # pydantic + # typing-inspect +typing-inspect==0.7.1 + # via libcst +uritemplate==4.1.1 + # via google-api-python-client +urllib3==1.26.7 + # via + # botocore + # feast (setup.py) + # minio + # requests + # responses +uvicorn[standard]==0.15.0 + # via feast (setup.py) +uvloop==0.16.0 + # via uvicorn +virtualenv==20.10.0 + # via pre-commit +watchgod==0.7 + # via uvicorn +websocket-client==1.2.1 + # via docker +websockets==10.1 + # via uvicorn +werkzeug==2.0.2 + # via moto +wheel==0.37.0 + # via pip-tools +wrapt==1.13.3 + # via testcontainers +xmltodict==0.12.0 + # via moto +yarl==1.7.2 + # via aiohttp + +# The following packages are considered to be unsafe in a requirements file: +# pip +# setuptools diff --git a/sdk/python/requirements/py3.9-requirements.txt b/sdk/python/requirements/py3.9-requirements.txt new file mode 100644 index 0000000000..4cb45fd809 --- /dev/null +++ b/sdk/python/requirements/py3.9-requirements.txt @@ -0,0 +1,150 @@ +# +# This file is autogenerated by pip-compile with python 3.9 +# To update, run: +# +# pip-compile --output-file=requirements/py3.9-requirements.txt +# +absl-py==0.12.0 + # via tensorflow-metadata +anyio==3.4.0 + # via starlette +asgiref==3.4.1 + # via uvicorn +attrs==21.2.0 + # via jsonschema +cachetools==4.2.4 + # via google-auth +certifi==2021.10.8 + # via requests +charset-normalizer==2.0.8 + # via requests +click==7.1.2 + # via + # feast (setup.py) + # uvicorn +colorama==0.4.4 + # via feast (setup.py) +dill==0.3.4 + # via feast (setup.py) +fastapi==0.70.0 + # via feast (setup.py) +fastavro==1.4.7 + # via + # feast (setup.py) + # pandavro +google-api-core==2.2.2 + # via feast (setup.py) +google-auth==2.3.3 + # via google-api-core +googleapis-common-protos==1.52.0 + # via + # feast (setup.py) + # google-api-core + # tensorflow-metadata +grpcio==1.42.0 + # via + # feast (setup.py) + # grpcio-reflection +grpcio-reflection==1.42.0 + # via feast (setup.py) +h11==0.12.0 + # via uvicorn +httptools==0.2.0 + # via uvicorn +idna==3.3 + # via + # anyio + # requests +jinja2==3.0.3 + # via feast (setup.py) +jsonschema==4.2.1 + # via feast (setup.py) +markupsafe==2.0.1 + # via jinja2 +mmh3==3.0.0 + # via feast (setup.py) +numpy==1.21.4 + # via + # pandas + # pandavro + # pyarrow +pandas==1.3.4 + # via + # feast (setup.py) + # pandavro +pandavro==1.5.2 + # via feast (setup.py) +proto-plus==1.19.6 + # via feast (setup.py) +protobuf==3.19.1 + # via + # feast (setup.py) + # google-api-core + # googleapis-common-protos + # grpcio-reflection + # proto-plus + # tensorflow-metadata +pyarrow==6.0.1 + # via feast (setup.py) +pyasn1==0.4.8 + # via + # pyasn1-modules + # rsa +pyasn1-modules==0.2.8 + # via google-auth +pydantic==1.8.2 + # via + # fastapi + # feast (setup.py) +pyrsistent==0.18.0 + # via jsonschema +python-dateutil==2.8.2 + # via pandas +python-dotenv==0.19.2 + # via uvicorn +pytz==2021.3 + # via pandas +pyyaml==6.0 + # via + # feast (setup.py) + # uvicorn +requests==2.26.0 + # via google-api-core +rsa==4.8 + # via google-auth +six==1.16.0 + # via + # absl-py + # google-auth + # grpcio + # pandavro + # python-dateutil +sniffio==1.2.0 + # via anyio +starlette==0.16.0 + # via fastapi +tabulate==0.8.9 + # via feast (setup.py) +tenacity==8.0.1 + # via feast (setup.py) +tensorflow-metadata==1.5.0 + # via feast (setup.py) +toml==0.10.2 + # via feast (setup.py) +tqdm==4.62.3 + # via feast (setup.py) +typing-extensions==4.0.1 + # via pydantic +urllib3==1.26.7 + # via requests +uvicorn[standard]==0.15.0 + # via feast (setup.py) +uvloop==0.16.0 + # via uvicorn +watchgod==0.7 + # via uvicorn +websockets==10.1 + # via uvicorn + +# The following packages are considered to be unsafe in a requirements file: +# setuptools