diff --git a/CHANGELOG.md b/CHANGELOG.md index 970012674d..f81b923d99 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [0.21.3](https://github.com/feast-dev/feast/compare/v0.21.2...v0.21.3) (2022-06-13) + + +### Bug Fixes + +* Change online UI schema field to be optional ([#2766](https://github.com/feast-dev/feast/issues/2766)) ([e6edb58](https://github.com/feast-dev/feast/commit/e6edb5840354ea2a5233144a171344b3430b34c1)), closes [#2719](https://github.com/feast-dev/feast/issues/2719) +* Made URL to registry relative, fixes [#2731](https://github.com/feast-dev/feast/issues/2731) ([#2753](https://github.com/feast-dev/feast/issues/2753)) ([a66aea8](https://github.com/feast-dev/feast/commit/a66aea86cac5a8157134c389947b24d70765adb5)) + ## [0.21.2](https://github.com/feast-dev/feast/compare/v0.21.1...v0.21.2) (2022-05-17) diff --git a/docs/SUMMARY.md b/docs/SUMMARY.md index f6f12e04d0..7ea80a4e6b 100644 --- a/docs/SUMMARY.md +++ b/docs/SUMMARY.md @@ -23,6 +23,7 @@ * [Offline store](getting-started/architecture-and-components/offline-store.md) * [Online store](getting-started/architecture-and-components/online-store.md) * [Provider](getting-started/architecture-and-components/provider.md) +* [Learning by example](getting-started/feast-workshop.md) * [Third party integrations](getting-started/third-party-integrations.md) * [FAQ](getting-started/faq.md) diff --git a/docs/getting-started/feast-workshop.md b/docs/getting-started/feast-workshop.md new file mode 100644 index 0000000000..c883625dac --- /dev/null +++ b/docs/getting-started/feast-workshop.md @@ -0,0 +1,42 @@ +# Learning by example + +This workshop aims to teach users about Feast. + +We explain concepts & best practices by example, and also showcase how to address common use cases. + +### Pre-requisites + +This workshop assumes you have the following installed: + +* A local development environment that supports running Jupyter notebooks (e.g. VSCode with Jupyter plugin) +* Python 3.7+ +* Java 11 (for Spark, e.g. `brew install java11`) +* pip +* Docker & Docker Compose (e.g. `brew install docker docker-compose`) +* Terraform ([docs](https://learn.hashicorp.com/tutorials/terraform/install-cli#install-terraform)) +* AWS CLI +* An AWS account setup with credentials via `aws configure` (e.g see [AWS credentials quickstart](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html#cli-configure-quickstart-creds)) + +Since we'll be learning how to leverage Feast in CI/CD, you'll also need to fork this workshop repository. + +#### **Caveats** + +* M1 Macbook development is untested with this flow. See also [How to run / develop for Feast on M1 Macs](https://github.com/feast-dev/feast/issues/2105). +* Windows development has only been tested with WSL. You will need to follow this [guide](https://docs.docker.com/desktop/windows/wsl/) to have Docker play nicely. + +### Modules + +_See also:_ [_Feast quickstart_](https://docs.feast.dev/getting-started/quickstart)_,_ [_Feast x Great Expectations tutorial_](https://docs.feast.dev/tutorials/validating-historical-features) + +These are meant mostly to be done in order, with examples building on previous concepts. + +| Time (min) | Description | Module | +| :--------: | ----------------------------------------------------------------------- | --------------------------------------------------------------------------- | +| 30-45 | Setting up Feast projects & CI/CD + powering batch predictions | [Module 0](https://github.com/feast-dev/feast-workshop/tree/main/module\_0) | +| 15-20 | Streaming ingestion & online feature retrieval with Kafka, Spark, Redis | [Module 1](https://github.com/feast-dev/feast-workshop/tree/main/module\_1) | +| 10-15 | Real-time feature engineering with on demand transformations | [Module 2](https://github.com/feast-dev/feast-workshop/tree/main/module\_2) | +| TBD | Feature server deployment (embed, as a service, AWS Lambda) | TBD | +| TBD | Versioning features / models in Feast | TBD | +| TBD | Data quality monitoring in Feast | TBD | +| TBD | Batch transformations | TBD | +| TBD | Stream transformations | TBD | diff --git a/docs/getting-started/quickstart.md b/docs/getting-started/quickstart.md index 1684c72063..1b926eeca5 100644 --- a/docs/getting-started/quickstart.md +++ b/docs/getting-started/quickstart.md @@ -125,8 +125,6 @@ driver_stats_fs = FeatureService( {% endtab %} {% endtabs %} -![Demo parquet data: data/driver\_stats.parquet](../.gitbook/assets/screen-shot-2021-08-23-at-2.35.18-pm.png) - The key line defining the overall architecture of the feature store is the **provider**. This defines where the raw data exists (for generating training data & feature values for serving), and where to materialize feature values to in the online store (for serving). Valid values for `provider` in `feature_store.yaml` are: @@ -139,6 +137,16 @@ Note that there are many other sources Feast works with, including Azure, Hive, A custom setup can also be made by following [adding a custom provider](../how-to-guides/creating-a-custom-provider.md). +### Inspecting the raw data + +The raw feature data we have in this demo is stored in a local parquet file. The dataset captures hourly stats of a driver in a ride-sharing app. + +```python +import pandas as pd +pd.read_parquet("data/driver_stats.parquet") +``` + +![Demo parquet data: data/driver\_stats.parquet](../.gitbook/assets/screen-shot-2021-08-23-at-2.35.18-pm.png) ## Step 3: Register feature definitions and deploy your feature store diff --git a/infra/charts/feast-python-server/Chart.yaml b/infra/charts/feast-python-server/Chart.yaml index 05b5cf07a8..43a1e34bd1 100644 --- a/infra/charts/feast-python-server/Chart.yaml +++ b/infra/charts/feast-python-server/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: feast-python-server description: Feast Feature Server in Python type: application -version: 0.21.2 +version: 0.21.3 keywords: - machine learning - big data diff --git a/infra/charts/feast-python-server/README.md b/infra/charts/feast-python-server/README.md index 5e0cedd3d2..c41a0fb483 100644 --- a/infra/charts/feast-python-server/README.md +++ b/infra/charts/feast-python-server/README.md @@ -1,6 +1,6 @@ # feast-python-server -![Version: 0.21.2](https://img.shields.io/badge/Version-0.21.2-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) +![Version: 0.21.3](https://img.shields.io/badge/Version-0.21.3-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) Feast Feature Server in Python diff --git a/infra/charts/feast/Chart.yaml b/infra/charts/feast/Chart.yaml index 0bfde70941..96aea2793a 100644 --- a/infra/charts/feast/Chart.yaml +++ b/infra/charts/feast/Chart.yaml @@ -1,7 +1,7 @@ apiVersion: v1 description: Feature store for machine learning name: feast -version: 0.21.2 +version: 0.21.3 keywords: - machine learning - big data diff --git a/infra/charts/feast/README.md b/infra/charts/feast/README.md index 5d5acffdaf..37eac39c90 100644 --- a/infra/charts/feast/README.md +++ b/infra/charts/feast/README.md @@ -8,7 +8,7 @@ This repo contains Helm charts for Feast components that are being installed on ## Chart: Feast -Feature store for machine learning Current chart version is `0.21.2` +Feature store for machine learning Current chart version is `0.21.3` ## Installation @@ -55,8 +55,8 @@ For more details, please see: https://docs.feast.dev/how-to-guides/running-feast | Repository | Name | Version | |------------|------|---------| | https://charts.helm.sh/stable | redis | 10.5.6 | -| https://feast-helm-charts.storage.googleapis.com | feature-server(feature-server) | 0.21.2 | -| https://feast-helm-charts.storage.googleapis.com | transformation-service(transformation-service) | 0.21.2 | +| https://feast-helm-charts.storage.googleapis.com | feature-server(feature-server) | 0.21.3 | +| https://feast-helm-charts.storage.googleapis.com | transformation-service(transformation-service) | 0.21.3 | ## Values diff --git a/infra/charts/feast/charts/feature-server/Chart.yaml b/infra/charts/feast/charts/feature-server/Chart.yaml index 067f8c6eeb..1ae19234f7 100644 --- a/infra/charts/feast/charts/feature-server/Chart.yaml +++ b/infra/charts/feast/charts/feature-server/Chart.yaml @@ -1,8 +1,8 @@ apiVersion: v1 description: "Feast Feature Server: Online feature serving service for Feast" name: feature-server -version: 0.21.2 -appVersion: v0.21.2 +version: 0.21.3 +appVersion: v0.21.3 keywords: - machine learning - big data diff --git a/infra/charts/feast/charts/feature-server/README.md b/infra/charts/feast/charts/feature-server/README.md index 9c070facdd..0b65ce5d3a 100644 --- a/infra/charts/feast/charts/feature-server/README.md +++ b/infra/charts/feast/charts/feature-server/README.md @@ -1,6 +1,6 @@ # feature-server -![Version: 0.21.2](https://img.shields.io/badge/Version-0.21.2-informational?style=flat-square) ![AppVersion: v0.21.2](https://img.shields.io/badge/AppVersion-v0.21.2-informational?style=flat-square) +![Version: 0.21.3](https://img.shields.io/badge/Version-0.21.3-informational?style=flat-square) ![AppVersion: v0.21.3](https://img.shields.io/badge/AppVersion-v0.21.3-informational?style=flat-square) Feast Feature Server: Online feature serving service for Feast @@ -17,7 +17,7 @@ Feast Feature Server: Online feature serving service for Feast | envOverrides | object | `{}` | Extra environment variables to set | | image.pullPolicy | string | `"IfNotPresent"` | Image pull policy | | image.repository | string | `"feastdev/feature-server-java"` | Docker image for Feature Server repository | -| image.tag | string | `"0.21.2"` | Image tag | +| image.tag | string | `"0.21.3"` | Image tag | | ingress.grpc.annotations | object | `{}` | Extra annotations for the ingress | | ingress.grpc.auth.enabled | bool | `false` | Flag to enable auth | | ingress.grpc.class | string | `"nginx"` | Which ingress controller to use | diff --git a/infra/charts/feast/charts/feature-server/values.yaml b/infra/charts/feast/charts/feature-server/values.yaml index 5d524cab7c..e7a1ac6eec 100644 --- a/infra/charts/feast/charts/feature-server/values.yaml +++ b/infra/charts/feast/charts/feature-server/values.yaml @@ -5,7 +5,7 @@ image: # image.repository -- Docker image for Feature Server repository repository: feastdev/feature-server-java # image.tag -- Image tag - tag: 0.21.2 + tag: 0.21.3 # image.pullPolicy -- Image pull policy pullPolicy: IfNotPresent diff --git a/infra/charts/feast/charts/transformation-service/Chart.yaml b/infra/charts/feast/charts/transformation-service/Chart.yaml index ec59767f4d..69939773ee 100644 --- a/infra/charts/feast/charts/transformation-service/Chart.yaml +++ b/infra/charts/feast/charts/transformation-service/Chart.yaml @@ -1,8 +1,8 @@ apiVersion: v1 description: "Transformation service: to compute on-demand features" name: transformation-service -version: 0.21.2 -appVersion: v0.21.2 +version: 0.21.3 +appVersion: v0.21.3 keywords: - machine learning - big data diff --git a/infra/charts/feast/charts/transformation-service/README.md b/infra/charts/feast/charts/transformation-service/README.md index 8b7c1e4a77..875cd03763 100644 --- a/infra/charts/feast/charts/transformation-service/README.md +++ b/infra/charts/feast/charts/transformation-service/README.md @@ -1,6 +1,6 @@ # transformation-service -![Version: 0.21.2](https://img.shields.io/badge/Version-0.21.2-informational?style=flat-square) ![AppVersion: v0.21.2](https://img.shields.io/badge/AppVersion-v0.21.2-informational?style=flat-square) +![Version: 0.21.3](https://img.shields.io/badge/Version-0.21.3-informational?style=flat-square) ![AppVersion: v0.21.3](https://img.shields.io/badge/AppVersion-v0.21.3-informational?style=flat-square) Transformation service: to compute on-demand features @@ -13,7 +13,7 @@ Transformation service: to compute on-demand features | envOverrides | object | `{}` | Extra environment variables to set | | image.pullPolicy | string | `"IfNotPresent"` | Image pull policy | | image.repository | string | `"feastdev/feature-transformation-server"` | Docker image for Transformation Server repository | -| image.tag | string | `"0.21.2"` | Image tag | +| image.tag | string | `"0.21.3"` | Image tag | | nodeSelector | object | `{}` | Node labels for pod assignment | | podLabels | object | `{}` | Labels to be added to Feast Serving pods | | replicaCount | int | `1` | Number of pods that will be created | diff --git a/infra/charts/feast/charts/transformation-service/values.yaml b/infra/charts/feast/charts/transformation-service/values.yaml index 5ec4e217dc..af7dc92a0b 100644 --- a/infra/charts/feast/charts/transformation-service/values.yaml +++ b/infra/charts/feast/charts/transformation-service/values.yaml @@ -5,7 +5,7 @@ image: # image.repository -- Docker image for Transformation Server repository repository: feastdev/feature-transformation-server # image.tag -- Image tag - tag: 0.21.2 + tag: 0.21.3 # image.pullPolicy -- Image pull policy pullPolicy: IfNotPresent diff --git a/infra/charts/feast/requirements.yaml b/infra/charts/feast/requirements.yaml index b293436e3e..1405a330d4 100644 --- a/infra/charts/feast/requirements.yaml +++ b/infra/charts/feast/requirements.yaml @@ -1,12 +1,12 @@ dependencies: - name: feature-server alias: feature-server - version: 0.21.2 + version: 0.21.3 condition: feature-server.enabled repository: https://feast-helm-charts.storage.googleapis.com - name: transformation-service alias: transformation-service - version: 0.21.2 + version: 0.21.3 condition: transformation-service.enabled repository: https://feast-helm-charts.storage.googleapis.com - name: redis diff --git a/java/pom.xml b/java/pom.xml index 4f64c7f421..a1bb70c898 100644 --- a/java/pom.xml +++ b/java/pom.xml @@ -38,7 +38,7 @@ - 0.21.2 + 0.21.3 https://github.com/feast-dev/feast UTF-8 @@ -58,7 +58,7 @@ 2.17.1 2.9.9 2.0.2 - 1.18.12 + 1.18.24 1.8.4 2.8.6 1.5.24 diff --git a/sdk/python/feast/data_source.py b/sdk/python/feast/data_source.py index 6a2b9a0d14..33bbd04e9a 100644 --- a/sdk/python/feast/data_source.py +++ b/sdk/python/feast/data_source.py @@ -159,7 +159,7 @@ class DataSource(ABC): Args: name: Name of data source, which should be unique within a project - timestamp_field (optional): (Deprecated) Event timestamp column used for point in time + event_timestamp_column (optional): (Deprecated) Event timestamp column used for point in time joins of feature values. created_timestamp_column (optional): Timestamp column indicating when the row was created, used for deduplicating rows. diff --git a/sdk/python/feast/infra/online_stores/redis.py b/sdk/python/feast/infra/online_stores/redis.py index 9ceceff0ac..847fa79547 100644 --- a/sdk/python/feast/infra/online_stores/redis.py +++ b/sdk/python/feast/infra/online_stores/redis.py @@ -132,7 +132,7 @@ def _parse_connection_string(connection_string: str): """ Reads Redis connections string using format for RedisCluster: - redis1:6379,redis2:6379,decode_responses=true,skip_full_coverage_check=true,ssl=true,password=... + redis1:6379,redis2:6379,skip_full_coverage_check=true,ssl=true,password=... for Redis: redis_master:6379,db=0,ssl=true,password=... """ diff --git a/sdk/python/feast/ui_server.py b/sdk/python/feast/ui_server.py index 5206dd5161..cb275c8f91 100644 --- a/sdk/python/feast/ui_server.py +++ b/sdk/python/feast/ui_server.py @@ -62,7 +62,7 @@ def shutdown_event(): "name": "Project", "description": "Test project", "id": project_id, - "registryPath": f"http://{host}:{port}/registry", + "registryPath": "/registry", } ] } diff --git a/sdk/python/requirements/py3.10-ci-requirements.txt b/sdk/python/requirements/py3.10-ci-requirements.txt index 120f0d1158..31a5beb035 100644 --- a/sdk/python/requirements/py3.10-ci-requirements.txt +++ b/sdk/python/requirements/py3.10-ci-requirements.txt @@ -4,7 +4,7 @@ # # pip-compile --extra=ci --output-file=sdk/python/requirements/py3.10-ci-requirements.txt # -absl-py==1.0.0 +absl-py==1.1.0 # via tensorflow-metadata adal==1.2.7 # via @@ -36,7 +36,7 @@ appdirs==1.4.4 # via black appnope==0.1.3 # via ipython -asgiref==3.5.1 +asgiref==3.5.2 # via uvicorn asn1crypto==1.5.1 # via @@ -58,7 +58,7 @@ attrs==21.4.0 # pytest avro==1.10.0 # via feast (setup.py) -azure-core==1.24.0 +azure-core==1.24.1 # via # adlfs # azure-identity @@ -85,13 +85,13 @@ botocore==1.23.24 # boto3 # moto # s3transfer -build==0.7.0 +build==0.8.0 # via feast (setup.py) cachecontrol==0.12.11 # via firebase-admin cachetools==4.2.4 # via google-auth -certifi==2021.10.8 +certifi==2022.5.18.1 # via # minio # msrest @@ -116,15 +116,15 @@ click==8.0.1 # great-expectations # pip-tools # uvicorn -cloudpickle==2.0.0 +cloudpickle==2.1.0 # via dask colorama==0.4.4 # via # feast (setup.py) # great-expectations -coverage[toml]==6.3.3 +coverage[toml]==6.4 # via pytest-cov -cryptography==3.4.8 +cryptography==35.0.0 # via # adal # azure-identity @@ -147,7 +147,7 @@ deprecated==1.2.13 # via redis deprecation==2.1.0 # via testcontainers -dill==0.3.4 +dill==0.3.5.1 # via feast (setup.py) distlib==0.3.4 # via virtualenv @@ -167,13 +167,13 @@ executing==0.8.3 # via stack-data fastapi==0.78.0 # via feast (setup.py) -fastavro==1.4.11 +fastavro==1.4.12 # via # feast (setup.py) # pandavro fastjsonschema==2.15.3 # via nbformat -filelock==3.7.0 +filelock==3.7.1 # via virtualenv firebase-admin==4.5.2 # via feast (setup.py) @@ -189,9 +189,9 @@ fsspec==2022.1.0 # dask # gcsfs # s3fs -gcsfs==0.8.0 +gcsfs==2022.1.0 # via feast (setup.py) -google-api-core[grpc]==1.31.5 +google-api-core[grpc]==1.31.6 # via # feast (setup.py) # firebase-admin @@ -201,7 +201,7 @@ google-api-core[grpc]==1.31.5 # google-cloud-core # google-cloud-datastore # google-cloud-firestore -google-api-python-client==2.47.0 +google-api-python-client==2.49.0 # via firebase-admin google-auth==1.35.0 # via @@ -227,28 +227,29 @@ google-cloud-core==1.7.2 # google-cloud-datastore # google-cloud-firestore # google-cloud-storage -google-cloud-datastore==2.5.1 +google-cloud-datastore==2.6.1 # via feast (setup.py) -google-cloud-firestore==2.4.0 +google-cloud-firestore==2.5.2 # 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 +googleapis-common-protos==1.56.2 # via # feast (setup.py) # google-api-core # tensorflow-metadata great-expectations==0.14.13 # via feast (setup.py) -grpcio==1.46.1 +grpcio==1.46.3 # via # feast (setup.py) # google-api-core @@ -256,7 +257,7 @@ grpcio==1.46.1 # grpcio-reflection # grpcio-testing # grpcio-tools -grpcio-reflection==1.46.1 +grpcio-reflection==1.46.3 # via feast (setup.py) grpcio-testing==1.44.0 # via feast (setup.py) @@ -274,7 +275,7 @@ httplib2==0.20.4 # google-auth-httplib2 httptools==0.4.0 # via uvicorn -identify==2.5.0 +identify==2.5.1 # via pre-commit idna==3.3 # via @@ -284,11 +285,11 @@ idna==3.3 # yarl imagesize==1.3.0 # via sphinx -importlib-metadata==4.11.3 +importlib-metadata==4.11.4 # via great-expectations iniconfig==1.1.1 # via pytest -ipython==8.3.0 +ipython==8.4.0 # via great-expectations isodate==0.6.1 # via msrest @@ -311,7 +312,7 @@ jsonpatch==1.32 # via great-expectations jsonpointer==2.3 # via jsonpatch -jsonschema==4.5.1 +jsonschema==4.6.0 # via # altair # feast (setup.py) @@ -337,9 +338,9 @@ mmh3==3.0.0 # via feast (setup.py) mock==2.0.0 # via feast (setup.py) -moto==3.1.9 +moto==3.1.11 # via feast (setup.py) -msal==1.17.0 +msal==1.18.0 # via # azure-identity # msal-extensions @@ -416,7 +417,7 @@ pexpect==4.8.0 # via ipython pickleshare==0.7.5 # via ipython -pip-tools==6.6.1 +pip-tools==6.6.2 # via feast (setup.py) platformdirs==2.5.2 # via virtualenv @@ -430,7 +431,7 @@ pre-commit==2.19.0 # via feast (setup.py) prompt-toolkit==3.0.29 # via ipython -proto-plus==1.19.6 +proto-plus==1.20.5 # via # feast (setup.py) # google-cloud-bigquery @@ -442,6 +443,7 @@ protobuf==3.19.4 # feast (setup.py) # google-api-core # google-cloud-bigquery + # google-cloud-firestore # googleapis-common-protos # grpcio-reflection # grpcio-testing @@ -483,7 +485,7 @@ pycparser==2.21 # via cffi pycryptodomex==3.14.1 # via snowflake-connector-python -pydantic==1.9.0 +pydantic==1.9.1 # via # fastapi # feast (setup.py) @@ -498,7 +500,7 @@ pyjwt[crypto]==2.4.0 # adal # msal # snowflake-connector-python -pyopenssl==21.0.0 +pyopenssl==22.0.0 # via snowflake-connector-python pyparsing==2.4.7 # via @@ -592,7 +594,7 @@ requests-oauthlib==1.3.1 # via # google-auth-oauthlib # msrest -responses==0.20.0 +responses==0.21.0 # via moto rsa==4.8 # via google-auth @@ -602,11 +604,10 @@ s3fs==2022.1.0 # via feast (setup.py) s3transfer==0.5.2 # via boto3 -scipy==1.8.0 +scipy==1.8.1 # via great-expectations six==1.16.0 # via - # absl-py # azure-core # azure-identity # google-api-core @@ -619,14 +620,13 @@ six==1.16.0 # mock # msrestazure # pandavro - # pyopenssl # python-dateutil # virtualenv sniffio==1.2.0 # via anyio snowballstemmer==2.2.0 # via sphinx -snowflake-connector-python[pandas]==2.7.7 +snowflake-connector-python[pandas]==2.7.8 # via feast (setup.py) sphinx==4.3.2 # via @@ -683,7 +683,7 @@ tqdm==4.64.0 # via # feast (setup.py) # great-expectations -traitlets==5.2.1.post0 +traitlets==5.2.2.post1 # via # ipython # jupyter-core @@ -691,27 +691,27 @@ traitlets==5.2.1.post0 # nbformat trino==0.313.0 # via feast (setup.py) -typed-ast==1.5.3 +typed-ast==1.5.4 # via black -types-protobuf==3.19.20 +types-protobuf==3.19.21 # via # feast (setup.py) # mypy-protobuf -types-python-dateutil==2.8.15 +types-python-dateutil==2.8.17 # via feast (setup.py) types-pytz==2021.3.8 # via feast (setup.py) -types-pyyaml==6.0.7 +types-pyyaml==6.0.8 # via feast (setup.py) -types-redis==4.2.3 +types-redis==4.2.6 # via feast (setup.py) -types-requests==2.27.25 +types-requests==2.27.30 # via feast (setup.py) -types-setuptools==57.4.14 +types-setuptools==57.4.17 # via feast (setup.py) types-tabulate==0.8.9 # via feast (setup.py) -types-urllib3==1.26.14 +types-urllib3==1.26.15 # via types-requests typing-extensions==4.2.0 # via @@ -723,13 +723,12 @@ tzdata==2022.1 # via pytz-deprecation-shim tzlocal==4.2 # via great-expectations -ujson==5.2.0 - # via gcsfs uritemplate==4.1.1 # via google-api-python-client urllib3==1.26.9 # via # botocore + # feast (setup.py) # great-expectations # minio # requests diff --git a/sdk/python/requirements/py3.10-requirements.txt b/sdk/python/requirements/py3.10-requirements.txt index 725b17f8ca..2c6bb2701c 100644 --- a/sdk/python/requirements/py3.10-requirements.txt +++ b/sdk/python/requirements/py3.10-requirements.txt @@ -4,19 +4,19 @@ # # pip-compile --output-file=sdk/python/requirements/py3.10-requirements.txt # -absl-py==1.0.0 +absl-py==1.1.0 # via tensorflow-metadata anyio==3.6.1 # via # starlette # watchgod -asgiref==3.5.1 +asgiref==3.5.2 # via uvicorn attrs==21.4.0 # via jsonschema -cachetools==5.1.0 +cachetools==5.2.0 # via google-auth -certifi==2021.10.8 +certifi==2022.5.18.1 # via requests charset-normalizer==2.0.12 # via requests @@ -24,36 +24,36 @@ click==8.0.1 # via # feast (setup.py) # uvicorn -cloudpickle==2.0.0 +cloudpickle==2.1.0 # via dask colorama==0.4.4 # via feast (setup.py) dask==2022.1.1 # via feast (setup.py) -dill==0.3.4 +dill==0.3.5.1 # via feast (setup.py) fastapi==0.78.0 # via feast (setup.py) -fastavro==1.4.11 +fastavro==1.4.12 # via # feast (setup.py) # pandavro -fsspec==2022.3.0 +fsspec==2022.5.0 # via dask -google-api-core==2.7.3 +google-api-core==2.8.1 # via feast (setup.py) google-auth==2.6.6 # via google-api-core -googleapis-common-protos==1.52.0 +googleapis-common-protos==1.56.2 # via # feast (setup.py) # google-api-core # tensorflow-metadata -grpcio==1.46.1 +grpcio==1.46.3 # via # feast (setup.py) # grpcio-reflection -grpcio-reflection==1.46.1 +grpcio-reflection==1.46.3 # via feast (setup.py) h11==0.13.0 # via uvicorn @@ -65,7 +65,7 @@ idna==3.3 # requests jinja2==3.1.2 # via feast (setup.py) -jsonschema==4.5.1 +jsonschema==4.6.0 # via feast (setup.py) locket==1.0.0 # via partd @@ -89,7 +89,7 @@ pandavro==1.5.2 # via feast (setup.py) partd==1.2.0 # via dask -proto-plus==1.19.6 +proto-plus==1.20.5 # via feast (setup.py) protobuf==3.19.4 # via @@ -107,7 +107,7 @@ pyasn1==0.4.8 # rsa pyasn1-modules==0.2.8 # via google-auth -pydantic==1.9.0 +pydantic==1.9.1 # via # fastapi # feast (setup.py) @@ -132,7 +132,6 @@ rsa==4.8 # via google-auth six==1.16.0 # via - # absl-py # google-auth # grpcio # pandavro diff --git a/sdk/python/requirements/py3.7-ci-requirements.txt b/sdk/python/requirements/py3.7-ci-requirements.txt index b445f86ea0..0fb01d05fa 100644 --- a/sdk/python/requirements/py3.7-ci-requirements.txt +++ b/sdk/python/requirements/py3.7-ci-requirements.txt @@ -36,7 +36,7 @@ appdirs==1.4.4 # via black appnope==0.1.3 # via ipython -asgiref==3.5.1 +asgiref==3.5.2 # via uvicorn asn1crypto==1.5.1 # via @@ -89,13 +89,13 @@ botocore==1.23.24 # boto3 # moto # s3transfer -build==0.7.0 +build==0.8.0 # via feast (setup.py) cachecontrol==0.12.11 # via firebase-admin cachetools==4.2.4 # via google-auth -certifi==2021.10.8 +certifi==2022.5.18.1 # via # minio # msrest @@ -120,15 +120,15 @@ click==8.0.1 # great-expectations # pip-tools # uvicorn -cloudpickle==2.0.0 +cloudpickle==2.1.0 # via dask colorama==0.4.4 # via # feast (setup.py) # great-expectations -coverage[toml]==6.3.3 +coverage[toml]==6.4 # via pytest-cov -cryptography==3.4.8 +cryptography==35.0.0 # via # adal # azure-identity @@ -151,7 +151,7 @@ deprecated==1.2.13 # via redis deprecation==2.1.0 # via testcontainers -dill==0.3.4 +dill==0.3.5.1 # via feast (setup.py) distlib==0.3.4 # via virtualenv @@ -169,13 +169,13 @@ execnet==1.9.0 # via pytest-xdist fastapi==0.78.0 # via feast (setup.py) -fastavro==1.4.11 +fastavro==1.4.12 # via # feast (setup.py) # pandavro fastjsonschema==2.15.3 # via nbformat -filelock==3.7.0 +filelock==3.7.1 # via virtualenv firebase-admin==4.5.2 # via feast (setup.py) @@ -191,9 +191,9 @@ fsspec==2022.1.0 # dask # gcsfs # s3fs -gcsfs==0.8.0 +gcsfs==2022.1.0 # via feast (setup.py) -google-api-core[grpc]==1.31.5 +google-api-core[grpc]==1.31.6 # via # feast (setup.py) # firebase-admin @@ -203,7 +203,7 @@ google-api-core[grpc]==1.31.5 # google-cloud-core # google-cloud-datastore # google-cloud-firestore -google-api-python-client==2.47.0 +google-api-python-client==2.49.0 # via firebase-admin google-auth==1.35.0 # via @@ -229,28 +229,29 @@ google-cloud-core==1.7.2 # google-cloud-datastore # google-cloud-firestore # google-cloud-storage -google-cloud-datastore==2.5.1 +google-cloud-datastore==2.6.1 # via feast (setup.py) -google-cloud-firestore==2.4.0 +google-cloud-firestore==2.5.1 # 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 +googleapis-common-protos==1.56.2 # via # feast (setup.py) # google-api-core # tensorflow-metadata great-expectations==0.14.13 # via feast (setup.py) -grpcio==1.46.1 +grpcio==1.46.3 # via # feast (setup.py) # google-api-core @@ -258,7 +259,7 @@ grpcio==1.46.1 # grpcio-reflection # grpcio-testing # grpcio-tools -grpcio-reflection==1.46.1 +grpcio-reflection==1.46.3 # via feast (setup.py) grpcio-testing==1.44.0 # via feast (setup.py) @@ -276,7 +277,7 @@ httplib2==0.20.4 # google-auth-httplib2 httptools==0.4.0 # via uvicorn -identify==2.5.0 +identify==2.5.1 # via pre-commit idna==3.3 # via @@ -304,7 +305,7 @@ importlib-resources==5.7.1 # via jsonschema iniconfig==1.1.1 # via pytest -ipython==7.33.0 +ipython==7.34.0 # via great-expectations isodate==0.6.1 # via msrest @@ -353,9 +354,9 @@ mmh3==3.0.0 # via feast (setup.py) mock==2.0.0 # via feast (setup.py) -moto==3.1.9 +moto==3.1.11 # via feast (setup.py) -msal==1.17.0 +msal==1.18.0 # via # azure-identity # msal-extensions @@ -432,7 +433,7 @@ pexpect==4.8.0 # via ipython pickleshare==0.7.5 # via ipython -pip-tools==6.6.1 +pip-tools==6.6.2 # via feast (setup.py) platformdirs==2.5.2 # via virtualenv @@ -446,7 +447,7 @@ pre-commit==2.19.0 # via feast (setup.py) prompt-toolkit==3.0.29 # via ipython -proto-plus==1.19.6 +proto-plus==1.20.5 # via # feast (setup.py) # google-cloud-bigquery @@ -497,7 +498,7 @@ pycparser==2.21 # via cffi pycryptodomex==3.14.1 # via snowflake-connector-python -pydantic==1.9.0 +pydantic==1.9.1 # via # fastapi # feast (setup.py) @@ -512,7 +513,7 @@ pyjwt[crypto]==2.4.0 # adal # msal # snowflake-connector-python -pyopenssl==21.0.0 +pyopenssl==22.0.0 # via snowflake-connector-python pyparsing==2.4.7 # via @@ -606,7 +607,7 @@ requests-oauthlib==1.3.1 # via # google-auth-oauthlib # msrest -responses==0.20.0 +responses==0.21.0 # via moto rsa==4.8 # via google-auth @@ -635,14 +636,13 @@ six==1.16.0 # mock # msrestazure # pandavro - # pyopenssl # python-dateutil # virtualenv sniffio==1.2.0 # via anyio snowballstemmer==2.2.0 # via sphinx -snowflake-connector-python[pandas]==2.7.7 +snowflake-connector-python[pandas]==2.7.8 # via feast (setup.py) sphinx==4.3.2 # via @@ -697,7 +697,7 @@ tqdm==4.64.0 # via # feast (setup.py) # great-expectations -traitlets==5.2.1.post0 +traitlets==5.2.2.post1 # via # ipython # jupyter-core @@ -705,29 +705,29 @@ traitlets==5.2.1.post0 # nbformat trino==0.313.0 # via feast (setup.py) -typed-ast==1.5.3 +typed-ast==1.5.4 # via # black # mypy -types-protobuf==3.19.20 +types-protobuf==3.19.21 # via # feast (setup.py) # mypy-protobuf -types-python-dateutil==2.8.15 +types-python-dateutil==2.8.17 # via feast (setup.py) types-pytz==2021.3.8 # via feast (setup.py) types-pyyaml==6.0.7 # via feast (setup.py) -types-redis==4.2.3 +types-redis==4.2.6 # via feast (setup.py) -types-requests==2.27.25 +types-requests==2.27.29 # via feast (setup.py) -types-setuptools==57.4.14 +types-setuptools==57.4.17 # via feast (setup.py) types-tabulate==0.8.9 # via feast (setup.py) -types-urllib3==1.26.14 +types-urllib3==1.26.15 # via types-requests typing-extensions==4.2.0 # via @@ -744,6 +744,7 @@ typing-extensions==4.2.0 # mypy # pydantic # redis + # responses # starlette # uvicorn # yarl @@ -751,13 +752,12 @@ tzdata==2022.1 # via pytz-deprecation-shim tzlocal==4.2 # via great-expectations -ujson==5.2.0 - # via gcsfs uritemplate==4.1.1 # via google-api-python-client urllib3==1.26.9 # via # botocore + # feast (setup.py) # great-expectations # minio # requests diff --git a/sdk/python/requirements/py3.7-requirements.txt b/sdk/python/requirements/py3.7-requirements.txt index b0e1511d9c..b7056db0f5 100644 --- a/sdk/python/requirements/py3.7-requirements.txt +++ b/sdk/python/requirements/py3.7-requirements.txt @@ -10,13 +10,13 @@ anyio==3.6.1 # via # starlette # watchgod -asgiref==3.5.1 +asgiref==3.5.2 # via uvicorn attrs==21.4.0 # via jsonschema -cachetools==5.1.0 +cachetools==5.2.0 # via google-auth -certifi==2021.10.8 +certifi==2022.5.18.1 # via requests charset-normalizer==2.0.12 # via requests @@ -24,36 +24,36 @@ click==8.0.1 # via # feast (setup.py) # uvicorn -cloudpickle==2.0.0 +cloudpickle==2.1.0 # via dask colorama==0.4.4 # via feast (setup.py) dask==2022.1.1 # via feast (setup.py) -dill==0.3.4 +dill==0.3.5.1 # via feast (setup.py) fastapi==0.78.0 # via feast (setup.py) -fastavro==1.4.11 +fastavro==1.4.12 # via # feast (setup.py) # pandavro -fsspec==2022.3.0 +fsspec==2022.5.0 # via dask -google-api-core==2.7.3 +google-api-core==2.8.1 # via feast (setup.py) google-auth==2.6.6 # via google-api-core -googleapis-common-protos==1.52.0 +googleapis-common-protos==1.56.2 # via # feast (setup.py) # google-api-core # tensorflow-metadata -grpcio==1.46.1 +grpcio==1.46.3 # via # feast (setup.py) # grpcio-reflection -grpcio-reflection==1.46.1 +grpcio-reflection==1.46.3 # via feast (setup.py) h11==0.13.0 # via uvicorn @@ -63,7 +63,7 @@ idna==3.3 # via # anyio # requests -importlib-metadata==4.11.3 +importlib-metadata==4.11.4 # via # click # jsonschema @@ -95,7 +95,7 @@ pandavro==1.5.2 # via feast (setup.py) partd==1.2.0 # via dask -proto-plus==1.19.6 +proto-plus==1.20.5 # via feast (setup.py) protobuf==3.19.4 # via @@ -113,7 +113,7 @@ pyasn1==0.4.8 # rsa pyasn1-modules==0.2.8 # via google-auth -pydantic==1.9.0 +pydantic==1.9.1 # via # fastapi # feast (setup.py) diff --git a/sdk/python/requirements/py3.8-ci-requirements.txt b/sdk/python/requirements/py3.8-ci-requirements.txt index 202f3ac2c7..2ebec78c6b 100644 --- a/sdk/python/requirements/py3.8-ci-requirements.txt +++ b/sdk/python/requirements/py3.8-ci-requirements.txt @@ -36,7 +36,7 @@ appdirs==1.4.4 # via black appnope==0.1.3 # via ipython -asgiref==3.5.1 +asgiref==3.5.2 # via uvicorn asn1crypto==1.5.1 # via @@ -89,13 +89,13 @@ botocore==1.23.24 # boto3 # moto # s3transfer -build==0.7.0 +build==0.8.0 # via feast (setup.py) cachecontrol==0.12.11 # via firebase-admin cachetools==4.2.4 # via google-auth -certifi==2021.10.8 +certifi==2022.5.18.1 # via # minio # msrest @@ -120,15 +120,15 @@ click==8.0.1 # great-expectations # pip-tools # uvicorn -cloudpickle==2.0.0 +cloudpickle==2.1.0 # via dask colorama==0.4.4 # via # feast (setup.py) # great-expectations -coverage[toml]==6.3.3 +coverage[toml]==6.4 # via pytest-cov -cryptography==3.4.8 +cryptography==35.0.0 # via # adal # azure-identity @@ -151,7 +151,7 @@ deprecated==1.2.13 # via redis deprecation==2.1.0 # via testcontainers -dill==0.3.4 +dill==0.3.5.1 # via feast (setup.py) distlib==0.3.4 # via virtualenv @@ -171,13 +171,13 @@ executing==0.8.3 # via stack-data fastapi==0.78.0 # via feast (setup.py) -fastavro==1.4.11 +fastavro==1.4.12 # via # feast (setup.py) # pandavro fastjsonschema==2.15.3 # via nbformat -filelock==3.7.0 +filelock==3.7.1 # via virtualenv firebase-admin==4.5.2 # via feast (setup.py) @@ -193,9 +193,9 @@ fsspec==2022.1.0 # dask # gcsfs # s3fs -gcsfs==0.8.0 +gcsfs==2022.1.0 # via feast (setup.py) -google-api-core[grpc]==1.31.5 +google-api-core[grpc]==1.31.6 # via # feast (setup.py) # firebase-admin @@ -205,7 +205,7 @@ google-api-core[grpc]==1.31.5 # google-cloud-core # google-cloud-datastore # google-cloud-firestore -google-api-python-client==2.47.0 +google-api-python-client==2.49.0 # via firebase-admin google-auth==1.35.0 # via @@ -231,28 +231,29 @@ google-cloud-core==1.7.2 # google-cloud-datastore # google-cloud-firestore # google-cloud-storage -google-cloud-datastore==2.5.1 +google-cloud-datastore==2.6.1 # via feast (setup.py) -google-cloud-firestore==2.4.0 +google-cloud-firestore==2.5.1 # 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 +googleapis-common-protos==1.56.2 # via # feast (setup.py) # google-api-core # tensorflow-metadata great-expectations==0.14.13 # via feast (setup.py) -grpcio==1.46.1 +grpcio==1.46.3 # via # feast (setup.py) # google-api-core @@ -260,7 +261,7 @@ grpcio==1.46.1 # grpcio-reflection # grpcio-testing # grpcio-tools -grpcio-reflection==1.46.1 +grpcio-reflection==1.46.3 # via feast (setup.py) grpcio-testing==1.44.0 # via feast (setup.py) @@ -278,7 +279,7 @@ httplib2==0.20.4 # google-auth-httplib2 httptools==0.4.0 # via uvicorn -identify==2.5.0 +identify==2.5.1 # via pre-commit idna==3.3 # via @@ -288,13 +289,13 @@ idna==3.3 # yarl imagesize==1.3.0 # via sphinx -importlib-metadata==4.11.3 +importlib-metadata==4.11.4 # via great-expectations importlib-resources==5.7.1 # via jsonschema iniconfig==1.1.1 # via pytest -ipython==8.3.0 +ipython==8.4.0 # via great-expectations isodate==0.6.1 # via msrest @@ -343,9 +344,9 @@ mmh3==3.0.0 # via feast (setup.py) mock==2.0.0 # via feast (setup.py) -moto==3.1.9 +moto==3.1.11 # via feast (setup.py) -msal==1.17.0 +msal==1.18.0 # via # azure-identity # msal-extensions @@ -422,7 +423,7 @@ pexpect==4.8.0 # via ipython pickleshare==0.7.5 # via ipython -pip-tools==6.6.1 +pip-tools==6.6.2 # via feast (setup.py) platformdirs==2.5.2 # via virtualenv @@ -436,7 +437,7 @@ pre-commit==2.19.0 # via feast (setup.py) prompt-toolkit==3.0.29 # via ipython -proto-plus==1.19.6 +proto-plus==1.20.5 # via # feast (setup.py) # google-cloud-bigquery @@ -489,7 +490,7 @@ pycparser==2.21 # via cffi pycryptodomex==3.14.1 # via snowflake-connector-python -pydantic==1.9.0 +pydantic==1.9.1 # via # fastapi # feast (setup.py) @@ -504,7 +505,7 @@ pyjwt[crypto]==2.4.0 # adal # msal # snowflake-connector-python -pyopenssl==21.0.0 +pyopenssl==22.0.0 # via snowflake-connector-python pyparsing==2.4.7 # via @@ -598,7 +599,7 @@ requests-oauthlib==1.3.1 # via # google-auth-oauthlib # msrest -responses==0.20.0 +responses==0.21.0 # via moto rsa==4.8 # via google-auth @@ -610,7 +611,7 @@ s3fs==2022.1.0 # via feast (setup.py) s3transfer==0.5.2 # via boto3 -scipy==1.8.0 +scipy==1.8.1 # via great-expectations six==1.16.0 # via @@ -627,14 +628,13 @@ six==1.16.0 # mock # msrestazure # pandavro - # pyopenssl # python-dateutil # virtualenv sniffio==1.2.0 # via anyio snowballstemmer==2.2.0 # via sphinx -snowflake-connector-python[pandas]==2.7.7 +snowflake-connector-python[pandas]==2.7.8 # via feast (setup.py) sphinx==4.3.2 # via @@ -691,7 +691,7 @@ tqdm==4.64.0 # via # feast (setup.py) # great-expectations -traitlets==5.2.1.post0 +traitlets==5.2.2.post1 # via # ipython # jupyter-core @@ -699,27 +699,27 @@ traitlets==5.2.1.post0 # nbformat trino==0.313.0 # via feast (setup.py) -typed-ast==1.5.3 +typed-ast==1.5.4 # via black -types-protobuf==3.19.20 +types-protobuf==3.19.21 # via # feast (setup.py) # mypy-protobuf -types-python-dateutil==2.8.15 +types-python-dateutil==2.8.17 # via feast (setup.py) types-pytz==2021.3.8 # via feast (setup.py) types-pyyaml==6.0.7 # via feast (setup.py) -types-redis==4.2.3 +types-redis==4.2.6 # via feast (setup.py) -types-requests==2.27.25 +types-requests==2.27.29 # via feast (setup.py) -types-setuptools==57.4.14 +types-setuptools==57.4.17 # via feast (setup.py) types-tabulate==0.8.9 # via feast (setup.py) -types-urllib3==1.26.14 +types-urllib3==1.26.15 # via types-requests typing-extensions==4.2.0 # via @@ -733,13 +733,12 @@ tzdata==2022.1 # via pytz-deprecation-shim tzlocal==4.2 # via great-expectations -ujson==5.2.0 - # via gcsfs uritemplate==4.1.1 # via google-api-python-client urllib3==1.26.9 # via # botocore + # feast (setup.py) # great-expectations # minio # requests diff --git a/sdk/python/requirements/py3.8-requirements.txt b/sdk/python/requirements/py3.8-requirements.txt index 98e1c6a76a..377821387a 100644 --- a/sdk/python/requirements/py3.8-requirements.txt +++ b/sdk/python/requirements/py3.8-requirements.txt @@ -10,13 +10,13 @@ anyio==3.6.1 # via # starlette # watchgod -asgiref==3.5.1 +asgiref==3.5.2 # via uvicorn attrs==21.4.0 # via jsonschema -cachetools==5.1.0 +cachetools==5.2.0 # via google-auth -certifi==2021.10.8 +certifi==2022.5.18.1 # via requests charset-normalizer==2.0.12 # via requests @@ -24,36 +24,36 @@ click==8.0.1 # via # feast (setup.py) # uvicorn -cloudpickle==2.0.0 +cloudpickle==2.1.0 # via dask colorama==0.4.4 # via feast (setup.py) dask==2022.1.1 # via feast (setup.py) -dill==0.3.4 +dill==0.3.5.1 # via feast (setup.py) fastapi==0.78.0 # via feast (setup.py) -fastavro==1.4.11 +fastavro==1.4.12 # via # feast (setup.py) # pandavro -fsspec==2022.3.0 +fsspec==2022.5.0 # via dask -google-api-core==2.7.3 +google-api-core==2.8.1 # via feast (setup.py) google-auth==2.6.6 # via google-api-core -googleapis-common-protos==1.52.0 +googleapis-common-protos==1.56.2 # via # feast (setup.py) # google-api-core # tensorflow-metadata -grpcio==1.46.1 +grpcio==1.46.3 # via # feast (setup.py) # grpcio-reflection -grpcio-reflection==1.46.1 +grpcio-reflection==1.46.3 # via feast (setup.py) h11==0.13.0 # via uvicorn @@ -91,7 +91,7 @@ pandavro==1.5.2 # via feast (setup.py) partd==1.2.0 # via dask -proto-plus==1.19.6 +proto-plus==1.20.5 # via feast (setup.py) protobuf==3.19.4 # via @@ -109,7 +109,7 @@ pyasn1==0.4.8 # rsa pyasn1-modules==0.2.8 # via google-auth -pydantic==1.9.0 +pydantic==1.9.1 # via # fastapi # feast (setup.py) diff --git a/sdk/python/requirements/py3.9-ci-requirements.txt b/sdk/python/requirements/py3.9-ci-requirements.txt index d3ecdc34bf..d4163fd73d 100644 --- a/sdk/python/requirements/py3.9-ci-requirements.txt +++ b/sdk/python/requirements/py3.9-ci-requirements.txt @@ -1,10 +1,10 @@ # -# This file is autogenerated by pip-compile with python 3.9 +# This file is autogenerated by pip-compile with python 3.8 # To update, run: # # pip-compile --extra=ci --output-file=sdk/python/requirements/py3.9-ci-requirements.txt # -absl-py==1.0.0 +absl-py==1.1.0 # via tensorflow-metadata adal==1.2.7 # via @@ -36,7 +36,7 @@ appdirs==1.4.4 # via black appnope==0.1.3 # via ipython -asgiref==3.5.1 +asgiref==3.5.2 # via uvicorn asn1crypto==1.5.1 # via @@ -58,7 +58,7 @@ attrs==21.4.0 # pytest avro==1.10.0 # via feast (setup.py) -azure-core==1.24.0 +azure-core==1.24.1 # via # adlfs # azure-identity @@ -73,6 +73,10 @@ babel==2.10.1 # via sphinx backcall==0.2.0 # via ipython +backports-zoneinfo==0.2.1 + # via + # pytz-deprecation-shim + # tzlocal black==19.10b0 # via feast (setup.py) boto3==1.20.23 @@ -85,13 +89,13 @@ botocore==1.23.24 # boto3 # moto # s3transfer -build==0.7.0 +build==0.8.0 # via feast (setup.py) cachecontrol==0.12.11 # via firebase-admin cachetools==4.2.4 # via google-auth -certifi==2021.10.8 +certifi==2022.5.18.1 # via # minio # msrest @@ -116,15 +120,15 @@ click==8.0.1 # great-expectations # pip-tools # uvicorn -cloudpickle==2.0.0 +cloudpickle==2.1.0 # via dask colorama==0.4.4 # via # feast (setup.py) # great-expectations -coverage[toml]==6.3.3 +coverage[toml]==6.4 # via pytest-cov -cryptography==3.4.8 +cryptography==35.0.0 # via # adal # azure-identity @@ -147,7 +151,7 @@ deprecated==1.2.13 # via redis deprecation==2.1.0 # via testcontainers -dill==0.3.4 +dill==0.3.5.1 # via feast (setup.py) distlib==0.3.4 # via virtualenv @@ -167,13 +171,13 @@ executing==0.8.3 # via stack-data fastapi==0.78.0 # via feast (setup.py) -fastavro==1.4.11 +fastavro==1.4.12 # via # feast (setup.py) # pandavro fastjsonschema==2.15.3 # via nbformat -filelock==3.7.0 +filelock==3.7.1 # via virtualenv firebase-admin==4.5.2 # via feast (setup.py) @@ -189,9 +193,9 @@ fsspec==2022.1.0 # dask # gcsfs # s3fs -gcsfs==0.8.0 +gcsfs==2022.1.0 # via feast (setup.py) -google-api-core[grpc]==1.31.5 +google-api-core[grpc]==1.31.6 # via # feast (setup.py) # firebase-admin @@ -201,7 +205,7 @@ google-api-core[grpc]==1.31.5 # google-cloud-core # google-cloud-datastore # google-cloud-firestore -google-api-python-client==2.47.0 +google-api-python-client==2.49.0 # via firebase-admin google-auth==1.35.0 # via @@ -227,28 +231,29 @@ google-cloud-core==1.7.2 # google-cloud-datastore # google-cloud-firestore # google-cloud-storage -google-cloud-datastore==2.5.1 +google-cloud-datastore==2.6.1 # via feast (setup.py) -google-cloud-firestore==2.4.0 +google-cloud-firestore==2.5.2 # 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 +googleapis-common-protos==1.56.2 # via # feast (setup.py) # google-api-core # tensorflow-metadata great-expectations==0.14.13 # via feast (setup.py) -grpcio==1.46.1 +grpcio==1.46.3 # via # feast (setup.py) # google-api-core @@ -256,7 +261,7 @@ grpcio==1.46.1 # grpcio-reflection # grpcio-testing # grpcio-tools -grpcio-reflection==1.46.1 +grpcio-reflection==1.46.3 # via feast (setup.py) grpcio-testing==1.44.0 # via feast (setup.py) @@ -274,7 +279,7 @@ httplib2==0.20.4 # google-auth-httplib2 httptools==0.4.0 # via uvicorn -identify==2.5.0 +identify==2.5.1 # via pre-commit idna==3.3 # via @@ -284,11 +289,13 @@ idna==3.3 # yarl imagesize==1.3.0 # via sphinx -importlib-metadata==4.11.3 +importlib-metadata==4.11.4 # via great-expectations +importlib-resources==5.7.1 + # via jsonschema iniconfig==1.1.1 # via pytest -ipython==8.3.0 +ipython==8.4.0 # via great-expectations isodate==0.6.1 # via msrest @@ -311,7 +318,7 @@ jsonpatch==1.32 # via great-expectations jsonpointer==2.3 # via jsonpatch -jsonschema==4.5.1 +jsonschema==4.6.0 # via # altair # feast (setup.py) @@ -337,9 +344,9 @@ mmh3==3.0.0 # via feast (setup.py) mock==2.0.0 # via feast (setup.py) -moto==3.1.9 +moto==3.1.11 # via feast (setup.py) -msal==1.17.0 +msal==1.18.0 # via # azure-identity # msal-extensions @@ -416,7 +423,7 @@ pexpect==4.8.0 # via ipython pickleshare==0.7.5 # via ipython -pip-tools==6.6.1 +pip-tools==6.6.2 # via feast (setup.py) platformdirs==2.5.2 # via virtualenv @@ -430,7 +437,7 @@ pre-commit==2.19.0 # via feast (setup.py) prompt-toolkit==3.0.29 # via ipython -proto-plus==1.19.6 +proto-plus==1.20.5 # via # feast (setup.py) # google-cloud-bigquery @@ -442,6 +449,7 @@ protobuf==3.19.4 # feast (setup.py) # google-api-core # google-cloud-bigquery + # google-cloud-firestore # googleapis-common-protos # grpcio-reflection # grpcio-testing @@ -483,7 +491,7 @@ pycparser==2.21 # via cffi pycryptodomex==3.14.1 # via snowflake-connector-python -pydantic==1.9.0 +pydantic==1.9.1 # via # fastapi # feast (setup.py) @@ -498,7 +506,7 @@ pyjwt[crypto]==2.4.0 # adal # msal # snowflake-connector-python -pyopenssl==21.0.0 +pyopenssl==22.0.0 # via snowflake-connector-python pyparsing==2.4.7 # via @@ -592,23 +600,22 @@ requests-oauthlib==1.3.1 # via # google-auth-oauthlib # msrest -responses==0.20.0 +responses==0.21.0 # via moto rsa==4.8 # via google-auth -ruamel.yaml==0.17.17 +ruamel-yaml==0.17.17 # via great-expectations -ruamel.yaml.clib==0.2.6 - # via ruamel.yaml +ruamel-yaml-clib==0.2.6 + # via ruamel-yaml s3fs==2022.1.0 # via feast (setup.py) s3transfer==0.5.2 # via boto3 -scipy==1.8.0 +scipy==1.8.1 # via great-expectations six==1.16.0 # via - # absl-py # azure-core # azure-identity # google-api-core @@ -621,14 +628,13 @@ six==1.16.0 # mock # msrestazure # pandavro - # pyopenssl # python-dateutil # virtualenv sniffio==1.2.0 # via anyio snowballstemmer==2.2.0 # via sphinx -snowflake-connector-python[pandas]==2.7.7 +snowflake-connector-python[pandas]==2.7.8 # via feast (setup.py) sphinx==4.3.2 # via @@ -685,7 +691,7 @@ tqdm==4.64.0 # via # feast (setup.py) # great-expectations -traitlets==5.2.1.post0 +traitlets==5.2.2.post1 # via # ipython # jupyter-core @@ -693,27 +699,27 @@ traitlets==5.2.1.post0 # nbformat trino==0.313.0 # via feast (setup.py) -typed-ast==1.5.3 +typed-ast==1.5.4 # via black -types-protobuf==3.19.20 +types-protobuf==3.19.21 # via # feast (setup.py) # mypy-protobuf -types-python-dateutil==2.8.15 +types-python-dateutil==2.8.17 # via feast (setup.py) types-pytz==2021.3.8 # via feast (setup.py) -types-pyyaml==6.0.7 +types-pyyaml==6.0.8 # via feast (setup.py) -types-redis==4.2.3 +types-redis==4.2.6 # via feast (setup.py) -types-requests==2.27.25 +types-requests==2.27.30 # via feast (setup.py) -types-setuptools==57.4.14 +types-setuptools==57.4.17 # via feast (setup.py) types-tabulate==0.8.9 # via feast (setup.py) -types-urllib3==1.26.14 +types-urllib3==1.26.15 # via types-requests typing-extensions==4.2.0 # via @@ -727,13 +733,12 @@ tzdata==2022.1 # via pytz-deprecation-shim tzlocal==4.2 # via great-expectations -ujson==5.2.0 - # via gcsfs uritemplate==4.1.1 # via google-api-python-client urllib3==1.26.9 # via # botocore + # feast (setup.py) # great-expectations # minio # requests @@ -766,7 +771,9 @@ xmltodict==0.13.0 yarl==1.7.2 # via aiohttp zipp==3.8.0 - # via importlib-metadata + # via + # importlib-metadata + # importlib-resources # The following packages are considered to be unsafe in a requirements file: # pip diff --git a/sdk/python/requirements/py3.9-requirements.txt b/sdk/python/requirements/py3.9-requirements.txt index 3eded689a5..2537c39bfa 100644 --- a/sdk/python/requirements/py3.9-requirements.txt +++ b/sdk/python/requirements/py3.9-requirements.txt @@ -10,13 +10,13 @@ anyio==3.6.1 # via # starlette # watchgod -asgiref==3.5.1 +asgiref==3.5.2 # via uvicorn attrs==21.4.0 # via jsonschema -cachetools==5.1.0 +cachetools==5.2.0 # via google-auth -certifi==2021.10.8 +certifi==2022.5.18.1 # via requests charset-normalizer==2.0.12 # via requests @@ -24,36 +24,36 @@ click==8.0.1 # via # feast (setup.py) # uvicorn -cloudpickle==2.0.0 +cloudpickle==2.1.0 # via dask colorama==0.4.4 # via feast (setup.py) dask==2022.1.1 # via feast (setup.py) -dill==0.3.4 +dill==0.3.5.1 # via feast (setup.py) fastapi==0.78.0 # via feast (setup.py) -fastavro==1.4.11 +fastavro==1.4.12 # via # feast (setup.py) # pandavro -fsspec==2022.3.0 +fsspec==2022.5.0 # via dask -google-api-core==2.7.3 +google-api-core==2.8.1 # via feast (setup.py) google-auth==2.6.6 # via google-api-core -googleapis-common-protos==1.52.0 +googleapis-common-protos==1.56.2 # via # feast (setup.py) # google-api-core # tensorflow-metadata -grpcio==1.46.1 +grpcio==1.46.3 # via # feast (setup.py) # grpcio-reflection -grpcio-reflection==1.46.1 +grpcio-reflection==1.46.3 # via feast (setup.py) h11==0.13.0 # via uvicorn @@ -89,7 +89,7 @@ pandavro==1.5.2 # via feast (setup.py) partd==1.2.0 # via dask -proto-plus==1.19.6 +proto-plus==1.20.5 # via feast (setup.py) protobuf==3.19.4 # via @@ -107,7 +107,7 @@ pyasn1==0.4.8 # rsa pyasn1-modules==0.2.8 # via google-auth -pydantic==1.9.0 +pydantic==1.9.1 # via # fastapi # feast (setup.py) diff --git a/setup.py b/setup.py index f5f092e3f5..b1172cb8b8 100644 --- a/setup.py +++ b/setup.py @@ -51,7 +51,7 @@ "dill==0.3.*", "fastavro>=1.1.0,<2", "google-api-core>=1.23.0,<3", - "googleapis-common-protos==1.52.*,<2", + "googleapis-common-protos>=1.52.*,<2", "grpcio>=1.34.0,<2", "grpcio-reflection>=1.34.0,<2", "Jinja2>=2,<4", @@ -61,7 +61,7 @@ "pandas>=1,<2", "pandavro==1.5.*", "protobuf>=3.10,<3.20", - "proto-plus<1.19.7", + "proto-plus==1.20.*", "pyarrow>=4,<7", "pydantic>=1,<2", "PyYAML>=5.4.*,<7", @@ -71,7 +71,6 @@ "tqdm==4.*", "fastapi>=0.68.0,<1", "uvicorn[standard]>=0.14.0,<1", - "proto-plus<1.19.7", "tensorflow-metadata>=1.0.0,<2.0.0", "dask>=2021.*,<2022.02.0", ] @@ -89,14 +88,10 @@ "hiredis>=2.0.0,<3", ] -AWS_REQUIRED = [ - "boto3>=1.17.0,<=1.20.23", - "docker>=5.0.2", - "s3fs>=0.4.0,<=2022.01.0" -] +AWS_REQUIRED = ["boto3>=1.17.0,<=1.20.23", "docker>=5.0.2", "s3fs>=0.4.0,<=2022.01.0"] SNOWFLAKE_REQUIRED = [ - "snowflake-connector-python[pandas]>=2.7.3,<3", + "snowflake-connector-python[pandas]>=2.7.3,<=2.7.8", ] SPARK_REQUIRED = [ @@ -124,7 +119,7 @@ CI_REQUIRED = ( [ "build", - "cryptography==3.4.8", + "cryptography==35.0", "flake8", "black==19.10b0", "isort>=5,<6", @@ -136,7 +131,7 @@ "mypy==0.931", "mypy-protobuf==3.1", "avro==1.10.0", - "gcsfs>=0.4.0,<=2022.01.0" + "gcsfs>=0.4.0,<=2022.01.0", "urllib3>=1.25.4,<2", "psutil==5.9.0", "pytest>=6.0.0,<8", @@ -247,7 +242,7 @@ def _generate_python_protos(self, path: str): "--mypy_out", self.python_folder, ] - + proto_files, + + proto_files ) def run(self): @@ -333,6 +328,8 @@ def _generate_go_protos(self, path: str): proto_files = glob.glob(os.path.join(self.proto_folder, path)) try: + e = os.environ.copy() + e["PATH"] = self.path_val subprocess.check_call( self.go_protoc + [ @@ -346,7 +343,7 @@ def _generate_go_protos(self, path: str): "--go-grpc_opt=module=github.com/feast-dev/feast/go/protos", ] + proto_files, - env={"PATH": self.path_val}, + env=e, ) except CalledProcessError as e: print(f"Stderr: {e.stderr}") diff --git a/ui/src/parsers/feastFeatureViews.ts b/ui/src/parsers/feastFeatureViews.ts index 3e63b5afd0..cbf15d280e 100644 --- a/ui/src/parsers/feastFeatureViews.ts +++ b/ui/src/parsers/feastFeatureViews.ts @@ -39,7 +39,7 @@ const FeastFeatureViewSchema = z.object({ features: z.array(FeastFeatureColumnSchema), ttl: z.string().transform((val) => parseInt(val)), batchSource: FeastBatchSourceSchema, - online: z.boolean(), + online: z.boolean().optional(), owner: z.string().optional(), tags: z.record(z.string()).optional(), }),