Releases: feast-dev/feast
Feast v0.8.2
Implemented enhancements:
Fixed bugs:
- Fix tag order for release workflow #1205 (terryyylim)
- Fix Feature Table not updated on new feature addition #1197 (khorshuheng)
Merged pull requests:
Feast v0.8.1
Implemented enhancements:
- Expires Redis Keys based on Feature Table Max Age #1161 (khorshuheng)
- Jobservice control loop (based on #1140) #1156 (oavdeev)
Fixed bugs:
- Lazy metrics initialization (to correct pick up in executor) #1195 (pyalex)
- Add missing third_party folder #1185 (terryyylim)
- Fix missing name variable instantiation #1166 (terryyylim)
Merged pull requests:
- Bump ssh-agent version #1175 (terryyylim)
- Refactor configurable options and add sphinx docs #1174 (terryyylim)
- Stabilize flaky e2e tests #1173 (pyalex)
- Fix connection resets in CI for Maven #1164 (woop)
- Add dataproc executor resource config #1160 (terryyylim)
- Fix github workflow deprecating env variable #1158 (terryyylim)
- Ensure consistency of github workflow #1157 (terryyylim)
Feast v0.8.0
Implemented enhancements:
- Implement JobService API calls & connect it to SDK #1129 (tsotnet)
- Allow user to specify custom secrets to be mounted on Feast Serving and Feast Core pods #1127 (khorshuheng)
- Allow spark expressions in field mapping during Ingestion #1122 (pyalex)
- Update rest endpoints #1121 (terryyylim)
- Add feature table deletion #1114 (terryyylim)
- Add historical retrieval via job service #1107 (oavdeev)
- Implement list job and get job methods for Dataproc launcher #1106 (khorshuheng)
- Allow entities and features to be updated #1105 (terryyylim)
- Add get_by_id and list_jobs interface to the launcher interface and implement it for EMR #1095 (oavdeev)
- Support redis ssl in feast-serving #1092 (oavdeev)
- Add helm charts for feast jobservice #1081 (tsotnet)
- Terraform cleanup: tags, formatting, better defaults #1080 (oavdeev)
- Update docker-compose for Feast 0.8 #1078 (khorshuheng)
- Configure jupyter env on AWS via terraform #1077 (oavdeev)
- Implement EMR job cancelling #1075 (oavdeev)
- Streaming Ingestion Job supports AVRO format as input #1072 (pyalex)
- Accept Pandas dataframe as input for historical feature retrieval #1071 (khorshuheng)
- Add EMR streaming job launcher #1065 (oavdeev)
- EMR launcher #1061 (oavdeev)
- Add AWS managed kafka config to the example terraform #1058 (oavdeev)
- Feast SDK integration for historical feature retrieval using Spark #1054 (khorshuheng)
- Update GetOnlineFeatures method in sdks #1052 (terryyylim)
- "Start Offline-to-online ingestion" method in Python SDK #1051 (pyalex)
- Adding support for custom grpc dial options in Go SDK #1043 (ankurs)
- CLI command to start/stop/list streaming ingestion job on emr #1040 (oavdeev)
- Update serving service to handle new redis encoding #1038 (terryyylim)
- terraform config for aws #1033 (oavdeev)
- Streaming Ingestion Pipeline with Spark #1027 (pyalex)
- Run offline-to-online ingestion job on EMR #1026 (oavdeev)
- Add redis SSL support to the offline-to-online ingestion job #1025 (oavdeev)
- Dataproc and Standalone Cluster Spark Job launcher #1022 (khorshuheng)
- Pyspark job for feature batch retrieval #1021 (khorshuheng)
- Batch Ingestion Job rewritten on Spark #1020 (pyalex)
- Add Feature Tables API to Core & Python SDK #1019 (mrzzy)
- Introduce Entity as higher-level concept #1014 (terryyylim)
Fixed bugs:
- Fix stencil client serialization issue #1147 (pyalex)
- Deadletter path is being incorrectly joined #1144 (pyalex)
- In Historical Retrieval (SDK) use project from client context #1138 (pyalex)
- Pass project from context to get entities #1137 (pyalex)
- JobService is in crashloop after installing helm chart #1135 (pyalex)
- Fix env var names for jupyter terraform config #1085 (oavdeev)
- Fix java class name validation #1084 (oavdeev)
- Multiple tiny AWS related fixes #1083 (oavdeev)
Merged pull requests:
- Make created_timestamp property optional in KafkaSource #1146 (pyalex)
- In Streaming E2E Test filter kafka consumers by group id prefix #1145 (pyalex)
- Limit concurrency on e2e test runs to 1 #1142 (oavdeev)
- Update prow trigger for AWS #1139 (oavdeev)
- e2e test fixes to make them work on AWS #1132 (oavdeev)
- Add feature table name & job id to deadletter destination #1143 (pyalex)
- Drop hardcoded FEAST_CORE_URL env from JobService helm chart #1136 (pyalex)
- Add Prow to AWS codebuild trigger #1133 (oavdeev)
- Optional IngestionJob parameters passed by Spark Launcher #1130 (pyalex)
- Wait for job to be ready before cancelling #1126 (khorshuheng)
- Ability to run e2e tests in non-default project #1125 (pyalex)
- Ensure job is completed when ingesting to BQ #1123 (terryyylim)
- Add end-to-end Prow Job launcher for AWS tests #1118 (woop)
- Add confluent kafka installation to minimal notebook #1116 (woop)
- Scaffolding for integration tests #1113 (khorshuheng)
- Add serving integration test for updated feature type #1112 (terryyylim)
- In Historical Retrieval from BQ join between source & entities is performed inside BQ #1110 (pyalex)
- Make created timestamp column optional #1108 (khorshuheng)
- Add validation when feature type is changed #1102 (terryyylim)
- E2E flow in prow is working #1101 (pyalex)
- Return e2e back to prow runner #1100 (pyalex)
- Add gh workflow for dockerhub #1098 (terryyylim)
- Make demo notebook work on AWS #1097 (oavdeev)
- Update Kubernetes setup for Feast 0.8 #1096 (khorshuheng)
- Refactored end-to-end tests fully orchestrated by pytest #1094 (pyalex)
- D...
Feast v0.7.1
Feast v0.7.0
Breaking changes:
- Add request response logging via fluentd #961 (terryyylim)
- Run JobCoontroller as separate application #951 (pyalex)
- Output Subject Claim as Identity in Logging interceptor #946 (mrzzy)
- Use JobManager's backend as persistent storage and source of truth #903 (pyalex)
- Fix invalid characters for project, featureset, entity and features creation #976 (terryyylim)
Implemented enhancements:
- Add redis key prefix as an option to Redis cluster #975 (khorshuheng)
- Authentication Support for Java & Go SDKs #971 (mrzzy)
- Add configurable prefix to Consumer Group in IngestionJob's Kafka reader #969 (terryyylim)
- Configurable kafka consumer in IngestionJob #959 (pyalex)
- Restart Ingestion Job on code version update #949 (pyalex)
- Add REST endpoints for Feast UI #878 (SwampertX)
- Upgrade Feast dependencies #876 (pyalex)
Fixed bugs:
- Fix Java & Go SDK TLS support #986 (mrzzy)
- Fix Python SDK setuptools not supporting tags required for Go SDK to be versioned. #983 (mrzzy)
- Fix Python native types multiple entities online retrieval #977 (terryyylim)
- Prevent historical retrieval from failing on dash in project / featureSet name #970 (pyalex)
- Fetch Job's labels from dataflow #968 (pyalex)
- Fetch Job's Created Datetime from Dataflow #966 (pyalex)
- Fix flaky tests #953 (pyalex)
- Prevent field duplications on schema merge in BigQuery sink #945 (pyalex)
- Fix Audit Message Logging Interceptor Race Condition #938 (mrzzy)
- Bypass authentication for metric endpoints on Serving. #936 (mrzzy)
- Fix grpc security variables name and missing exec qualifier in docker.dev #935 (jmelinav)
- Remove extra line that duplicates statistics list #934 (terryyylim)
- Fix empty array when retrieving stats data #930 (terryyylim)
- Allow unauthenticated access when Authorization is disabled and to Health Probe #927 (mrzzy)
- Impute default project if empty before authorization is called #926 (jmelinav)
- Fix Github Actions CI load-test job failing due inability to install Feast Python SDK. #914 (mrzzy)
- Fix Online Serving unable to retrieve feature data after Feature Set update. #908 (mrzzy)
- Fix unit tests not running in feast.core package. #883 (mrzzy)
- Exclude dependencies signatures from IngestionJob package #879 (pyalex)
- Prevent race condition in BQ sink jobId generation #877 (pyalex)
- Add IngestionId & EventTimestamp to FeatureRowBatch to calculate lag metric correctly #874 (pyalex)
- Fix typo for fluentd request response map key #989 (terryyylim)
- Reduce polling interval for docker-compose test and fix flaky e2e test #982 (terryyylim)
- Fix rate-limiting issue on github actions for master branch #974 (terryyylim)
- Fix docker-compose test #973 (terryyylim)
- Fix Helm chart requirements lock and version linting #925 (woop)
- Fix Github Actions failures due to possible rate limiting. #972 (mrzzy)
- Fix docker image building for PR commits #907 (woop)
- Fix Github Actions versioned image push #994(mrzzy)
- Fix Go SDK extra colon in metadata header for Authentication #1001(mrzzy)
- Fix lint version not pulling tags. #999(mrzzy)
- Call fallback only when theres missing keys #1009 (pyalex)
Merged pull requests:
- Add cryptography to python ci-requirements #988 (pyalex)
- Allow maps in environment variables in helm charts #987 (pyalex)
- Speed up Github Actions Docker builds #980 (mrzzy)
- Use setup.py develop instead of pip install -e #967 (pyalex)
- Peg black version #963 (terryyylim)
- Remove FeatureRow compaction in BQ sink #960 (pyalex)
- Get job controller deployment for docker compose back #958 (pyalex)
- Revert job controller deployment for docker compose #957 (woop)
- JobCoordinator use public API to communicate with Core #943 (pyalex)
- Allow Logging Interceptor to be toggled by Message Logging Enabled Flag #940 (mrzzy)
- Clean up Feast CI, docker compose, and notebooks #916 (woop)
- Allow use of Kubernetes for Github Actions #910 (woop)
- Wait for docker images to be ready for e2e dataflow test #909 (woop)
- Add docker image building to GitHub Actions and consolidate workflows #898 (woop)
- Add load test GitHub Action #897 (woop)
- Typo in feature sets example. #894 (ashwinath)
- Add auth integration tests #892 (woop)
- Integration Test for Job Coordinator #886 (pyalex)
- BQ sink produces sample of successful inserts #875 (pyalex)
- Add Branch and RC Awareness to Version Lint & Fix Semver Regex #998 (mrzzy)
Feast v0.6.2
Implemented enhancements:
- Redis sink flushes only rows that have more recent eventTimestamp #913 (pyalex)
- Dataflow runner options: disk type & streaming engine #906 (pyalex)
- Add Structured Audit Logging #891 (mrzzy)
- Add Authentication and Authorization for feast serving #865 (jmelinav)
- Throw more informative exception when write_triggering_frequency_seconds is missing #917 (pyalex)
- Add caching to authorization #884 (jmelinav)
- Add Auth header #885 (AnujaVane)
Fixed bugs:
- Fix Online Serving unable to retrieve feature data after Feature Set update. #908 (mrzzy)
- Fix Python SDK ingestion for featureset name that exist in multiple projects #868 (terryyylim)
- Backport delay in Redis acknowledgement of spec #915 (woop)
- Allow unauthenticated access when Authorization is disabled and to Health Probe #927 (mrzzy)
Merged pull requests:
Feast v0.3.8
Feast v0.5.1
Implemented enhancements:
- Add support for version method in Feast SDK and Core #759 (woop)
- Refactor runner configuration, add labels to dataflow options #718 (zhilingc)
Fixed bugs:
- Fix pipeline options toArgs() returning empty list #765 (zhilingc)
- Fix project argument for feature set describe in CLI #731 (terryyylim)
- Fix Go and Java SDK Regressions #729 (mrzzy)
- Remove usage of parallel stream for feature value map generation #751 (khorshuheng)
- Restore Feast Java SDK and Ingestion compatibility with Java 8 runtimes #722 (ches)
- Python sdk bug fixes #723 (zhilingc)
Merged pull requests:
Feast v0.5.0
v0.5.0 (2020-05-19)
Summary:
Feast v0.5 is a technical release. We have removed the concept of feature set versions, and now allow feature sets to be updated. We've also modularized the storage APIs, added support for Redis Cluster, added job management APIs, and cleared other smaller technical debts.
Breaking changes:
- Add .proto to packages of Protobuf generated Java classes #700 (woop)
- Add support for feature set updates and remove versions #676 (zhilingc)
- Feast configuration files refactored #611 (woop)
- HTTP
/healthz
endpoint of Feast Core removed, replaced with a gRPC health probe implementation
#680 (zhilingc)
See Feast 0.5 Release Issue for more details.
Implemented enhancements:
- Add general storage API and refactor existing store implementations #567 (zhilingc)
- Add support for feature set updates and remove versions #676 (zhilingc)
- Add unique ingestion id for all batch ingestions #656 (zhilingc)
- Add storage interfaces #529 (zhilingc)
- Add BigQuery storage implementation #546 (zhilingc)
- Add Redis storage implementation #547 (zhilingc)
- Add Support for Redis Cluster #502 (lavkesh)
- Add Ingestion Job management API for Feast Core #548 (mrzzy)
- Add feature and feature set labels for metadata #536 (imjuanleonard)
- Update Python SDK so FeatureSet can import Schema from Tensorflow metadata #450 (davidheryanto)
Fixed bugs:
- Add feature set status JOB_STARTING to denote feature sets waiting for job to get to RUNNING state #714 (zhilingc)
- Remove feature set status check for job update requirement #708 (khorshuheng)
- Fix Feast Core docker image #703 (khorshuheng)
- Include server port config on the generated application.yml #696 (khorshuheng)
- Fix typo in all types parquet yml file (e2e test) #683 (khorshuheng)
- Add grpc health probe implementation to core #680 (zhilingc)
- Ensure that generated python code are considered as module #679 (khorshuheng)
- Fix DataflowJobManager to update existing job instance instead of creating new one #678 (zhilingc)
- Fix config validation for feast.jobs.metrics.host #662 (davidheryanto)
- Docker compose bug fix #661 (woop)
- Swap join columns #647 (zhilingc)
- Fix Feast Serving not registering its store in Feast Core #641 (mrzzy)
- Kafka producer should raise an exception when it fails to connect to broker #636 (junhui096)
Merged pull requests:
- Change organization from gojek to feast-dev #712 (woop)
- Extract feature set update tests so CI doesn't run it #709 (zhilingc)
- Ensure that batch retrieval tests clean up after themselves #704 (zhilingc)
- Apply default project to rows without project during ingestion #701 (zhilingc)
- Update tests to correct compute region #699 (terryyylim)
- Make Projects optional & Update Feature References #693 (mrzzy)
- Add Java code coverage reporting #686 (ches)
- Update e2e tests to allow non-SNAPSHOT testing #672 (woop)
- Move TFDV stats to higher-numbered protobuf fields #669 (ches)
- Clean up Docker Compose and add test #668 (woop)
- Enable Prow e2e tests by default #666 (woop)
- Add label checking to Prow #665 (woop)
- Upgrade Github Checkout action to v2 #660 (khorshuheng)
- Fix Redis cluster e2e #659 (terryyylim)
- Split Field model into distinct Feature and Entity objects #655 (zhilingc)
- Use Runner enum type instead of string for Job model #651 (ches)
- JobUpdateTask cleanups #650 (ches)
- Update approvers list #648 (khorshuheng)
- Update end-to-end test config #645 (zhilingc)
- Fix bigquery config for serving store #644 (zhilingc)
- Fix Dataflow translator bug #643 (zhilingc)
- Fix subscription config and doctests #634 (woop)
- Correct links to why-feast and concepts doc site #627 (anderseriksson)
- Make error on retrieval of nonexistent feature humanly readable #625 (mrzzy)
- Generate golang code for non-serving protos #618 (zhilingc)
- Regenerate golang code, fix proto comparisons #616 (zhilingc)
- Fix doc building #603 (woop)
- Pin Jupyter Notebook version #597 (imjuanleonard)
- Create project if not exists on applyFeatureSet #596 (Joostrothweiler)
- Apply a fixed window before writing row metrics #590 (davidheryanto)
- Allow tests to run on non-master branches #588 (woop)
Feast v0.3.7
v0.3.7 (2020-05-01)
Implemented enhancements:
- Add Cassandra Store #360 (smadarasmi)
- Introduce
datatypes-java
module, making compiled protobuf types and their source.proto
definitions available in a Maven artifact separate fromfeast-sdk
#407 (ches)
Fixed bugs:
Merged pull requests:
- Moved end-to-end test scripts from .prow to infra #657 (khorshuheng)