Skip to content

Releases: feast-dev/feast

Feast v0.18.1

15 Feb 16:22
Compare
Choose a tag to compare

Full Changelog: v0.18.0...v0.18.1

Fixed bugs:

  • ODFVs raise a PerformanceWarning for very large sets of features #2293
  • Don't require snowflake to always be installed #2309 (judahrand)
  • podAnnotations Values in the feature-server chart #2304 (tpvasconcelos)
  • Fixing the Java helm charts and adding a demo tutorial on how to use them #2298 (adchia)
  • avoid using transactions on OSS Redis #2296 (DvirDukhan)
  • Include infra objects in registry dump and fix Infra's from_proto #2295 (adchia)
  • Expose snowflake credentials for unit testing #2288 (sfc-gh-madkins)
  • Fix flaky tests (test_online_store_cleanup & test_feature_get_online_features_types_match) #2276 (pyalex)

Merged pull requests:

Feast v0.18.0

05 Feb 18:51
886f07a
Compare
Choose a tag to compare

Overview

Today, we released Feast 0.18, with some major developments:

  • Snowflake offline store support has been merged into the main repo
  • Introduced saved datasets, which allows persisting data frames retrieved from offline stores
  • The first milestone of Data Quality Monitoring project has been implemented. This enables defining expectation suites (using Great Expectations) and running them against training datasets
  • Python feature server graduated from the alpha status
  • A significant performance improvements have been achieved in both Python & Java feature servers

✨ New Features:

🔴 Fixed bugs:

🔨 Merged pull requests:

Read more

Feast v0.17.0

04 Jan 13:14
e435d92
Compare
Choose a tag to compare

Overview

Today, we released Feast 0.17, which includes:

  • an initial cut at feast plan (See RFC-030)
  • many optimizations for materialization / feature serving in both python + java feature servers, especially with Redis as an online store.
  • a simplified Java server (without Spring Boot boilerplate)
  • a helm chart for deploying the python feature server (as an alternative to deploying in AWS Lambda)
  • other bug fixes, including type conversion bugs and log4j patches

✨ New Features:

  • Add feast-python-server helm chart #2177 (michelle-rascati-sp)
  • Add a feast plan command, and have CLI output differentiates between created, deleted and unchanged objects #2147 (achals)
  • Refactor tag methods to infer created, deleted, and kept repo objects #2142 (achals)
  • Pre compute the timestamp range for feature views #2103 (judahrand)

🔴 Fixed bugs:

🔨 Merged pull requests:

Feast v0.16.1

11 Dec 16:18
Compare
Choose a tag to compare

Changelog

v0.16.1 (2021-12-10)

Full Changelog

This was a quick patch fix to patch in the log4j vulnerability fixes.

Fixed bugs:

Merged pull requests:

  • Updating lambda docker image to feature-server-python-aws #2130 (adchia)
  • Fix README to reflect new integration test suites #2124 (adchia)
  • Remove argument feature_refs #2115 (judahrand)

Feast v0.16.0

08 Dec 02:13
65c41bd
Compare
Choose a tag to compare

Overview

Today we are releasing Feast 0.16, which includes many bug fixes and optimizations.

👥 Contributors

Thanks to @achals, @adchia, @ArrichM, @aurobindoc, @casassg, @danilopeixoto, @felixwang9817, @judahrand, @mavysavydav, @olivierlabreche, @nossrannug, @ptoman-pa, @pyalex, @tsotnet, @ysk24ok for the contributions!

✨ New Features:

  • Install redis extra in AWS Lambda feature server & add hiredis depend… #2057 (tsotnet)
  • Support of GC and S3 storages for registry in Java Feature Server #2043 (pyalex)
  • Adding stream ingestion alpha documentation #2005 (adchia)

🔴 Fixed bugs:

  • requested_features are not passed to online_read() from passthrough_provider #2106
  • feast apply broken with 0.15.* if the registry already exists #2086
  • Inconsistent logic with on_demand_feature_views #2072
  • requested_features is passed to online_read from passthrough_provider #2107 (aurobindoc)
  • Don't materialize FeatureViews where online is False #2101 (judahrand)
  • Have apply_total use the repo_config that's passed in as a parameter (makes it more compatible with custom wrapper code) #2099 (mavysavydav)
  • Do not attempt to compute ODFVs when there are no ODFVs #2090 (felixwang9817)
  • Duplicate feast apply bug #2087 (felixwang9817)
  • Add --host as an option for feast serve #2078 (nossrannug)
  • Fix feature server docker image tag generation in pr integration tests #2077 (tsotnet)
  • Fix ECR Image build on master branch #2076 (tsotnet)
  • Optimize memory usage during materialization #2073 (judahrand)
  • Fix unexpected feature view deletion when applying edited odfv #2054 (ArrichM)
  • Properly exclude entities from feature inference #2048 (mavysavydav)
  • Don't allow FeatureStore.apply with commit=False #2047 (nossrannug)
  • Fix bug causing OnDemandFeatureView.infer_features() to fail when the… #2046 (ArrichM)
  • Add missing comma in setup.py #2031 (achals)
  • Correct cleanup after usage e2e tests #2015 (pyalex)
  • Change Environment timestamps to be in UTC #2007 (felixwang9817)
  • get_online_features on demand transform bug fixes + local integration test mode #2004 (adchia)
  • Always pass full and partial feature names to ODFV #2003 (judahrand)
  • ODFV UDFs should handle list types #2002 (Agent007)
  • Update bq_to_feast_value_type with BOOLEAN type as a legacy sql data type #1996 (mavysavydav)
  • Fix bug where using some Pandas dtypes in the output of an ODFV fails #1994 (judahrand)
  • Fix duplicate update infra #1990 (felixwang9817)
  • Improve performance of _convert_arrow_to_proto #1984 (nossrannug)

🔨 Merged pull requests:

Read more

Feast v0.15.1

13 Nov 01:27
Compare
Choose a tag to compare

Fixed bugs:

Merged pull requests:

  • Remove unsupported java parts #2029 (pyalex)
  • Fix checked out branch for PR docker image build workflow #2018 (tsotnet)
  • Remove duplicates in setup.py and run rudimentary verifications #2016 (achals)
  • Upload feature server docker image to ECR on approved PRs #2014 (tsotnet)
  • Add integration tests for AWS Lambda feature server #2001 (tsotnet)
  • Moving Feast Java back into main repo under java/ package #1997 (adchia)

Feast v0.15.0

08 Nov 17:20
Compare
Choose a tag to compare

Overview

Today we are releasing Feast 0.15, which includes performance improvements, bug fixes, and several features:

  1. [Experimental] Push based stream ingestion (docs): Feast now allows users to push features previously registered in a feature view to the online store. This most commonly would be done from a stream processing job (e.g. a Beam or Spark Streaming job).
  2. Entity aliasing (docs): This allows for use cases where the same entity has different column names in different source tables (e.g. there are "spammer", "reporter", and "user" tables that all refer to the same user entity).
  3. Feature Transformation Server: a server that executes on demand transformations. The existing feature server (e.g. deployed with AWS Lambda) executes on demand transformations already. This new server integrates with Feast Serving (java server) for latency sensitive usecases.
  4. Easy way to test offline/online store plugins using the existing Feast test suite. See docs for details.

Experimental features are subject to API changes in the near future as we collect feedback. If you have thoughts, please don’t hesitate to reach out to the Feast team!

👥 Contributors

Thanks to @achals, @adchia, @Agent007, @amommendes, @codyjlin, @DvirDukhan, @felixwang9817, @judahrand, @loftiskg, @mavysavydav, @MattDelac, @nossrannug, @pyalex, @qooba, @samuel100, @tsotnet, @vas28r13, and @ysk24ok for the contributions!

✨ New Features:

  • Feature transformation server docker image #1972 (felixwang9817)
  • eventtime check before writing features, use pipelines, ttl #1961 (vas28r13)
  • Plugin repo universal tests #1946 (felixwang9817)
  • direct data ingestion into Online store #1939 (vas28r13)
  • Add an interface for TransformationService and a basic implementation #1932 (achals)
  • Allows registering of features in request data as RequestFeatureView. Refactors common logic into a BaseFeatureView class #1931 (adchia)
  • Add final_output_feature_names in Query context to avoid SELECT * EXCEPT #1911 (MattDelac)
  • Add Dockerfile for GCP CloudRun FeatureServer #1887 (judahrand)

🔴 Fixed bugs:

  • feast=0.14.0 query_generator() unecessary used twice #1978
  • get_online_features on demand transform bug fixes + local integration test mode #2004 (adchia)
  • Always pass full and partial feature names to ODFV #2003 (judahrand)
  • Update bq_to_feast_value_type with BOOLEAN type as a legacy sql data type #1996 (mavysavydav)
  • Fix bug where using some Pandas dtypes in the output of an ODFV fails #1994 (judahrand)
  • Fix duplicate update infra #1990 (felixwang9817)
  • Improve performance of _convert_arrow_to_proto #1984 (nossrannug)
  • Fix duplicate upload entity #1981 (achals)
  • fix redis cluster materialization #1968 (qooba)
  • Allow plugin repos to actually overwrite repo configs #1966 (felixwang9817)
  • Delete keys from Redis when tearing down online store #1965 (achals)
  • Fix issues with lint test and upgrade pip version #1964 (felixwang9817)
  • Move IntegrationTestRepoConfig class to another module #1962 (felixwang9817)
  • Solve package conflict in [gcp] and [ci] #1955 (ysk24ok)
  • Remove some paths from unit test cache #1944 (achals)
  • Fix bug in feast alpha enable CLI command #1940 (felixwang9817)
  • Fix conditional statements for if OnDemandFVs exist #1937 (codyjlin)
  • Fix __getitem__ return value for feature view and on-demand feature view #1936 (mavysavydav)
  • Corrected setup.py BigQuery version that's needed for a contributor's merged PR 1844 #1934 (mavysavydav)

🔨 Merged pull requests:

Feast v0.14.1

28 Oct 07:22
Compare
Choose a tag to compare

Fixed bugs:

  • Fix duplicate upload entity #1981 (achals)
  • Fix bug in feast alpha enable CLI command #1940 (felixwang9817)
  • Fix conditional statements for if OnDemandFVs exist #1937 (codyjlin)
  • Fix __getitem__ return value for feature view and on-demand feature view #1936 (mavysavydav)
  • Corrected setup.py BigQuery version that's needed for a contributor's merged PR 1844 #1934 (mavysavydav)

Merged pull requests:

Feast v0.14.0

20 Oct 17:51
b7d2d8f
Compare
Choose a tag to compare

Overview

Today we are releasing Feast 0.14, which includes a new feature and several important improvements:

  1. [Experimental] AWS Lambda feature servers, which allow you to quickly deploy an HTTP server to serve online features on AWS Lambda. GCP Cloud Run and Java feature servers are coming soon! (see docs)
  2. Bug fixes around performance. The core online serving path is now significantly faster.
  3. Improvements for developer experience. The integration tests are now faster, and temporary tables created during integration tests are immediately dropped after the test.

Experimental features are subject to API changes in the near future as we collect feedback. If you have thoughts, please don’t hesitate to reach out to the Feast team!

👥 Contributors

Thanks to @achals, @adchia, @Agent007, @DvirDukhan, @felixwang9817, @loftiskg, @mavysavydav, @samuel100, @tsotnet, and @ysk24ok for the contributions!

✨ New Features:

  • Rename FVProjection member functions to be more clear #1929 (mavysavydav)
  • Make serverless alpha feature #1928 (felixwang9817)
  • Feast endpoint #1927 (felixwang9817)
  • Add location to BigQueryOfflineStoreConfig #1921 (loftiskg)
  • Create & teardown Lambda & API Gateway resources for serverless feature server #1900 (tsotnet)
  • Hide FeatureViewProjections from user interface & have FeatureViews carry FVProjections that carries the modified info of the FeatureView #1899 (mavysavydav)
  • Upload docker image to ECR during feast apply #1877 (felixwang9817)
  • Added .with_name method in FeatureView/OnDemandFeatureView classes for name aliasing. FeatureViewProjection will hold this information #1872 (mavysavydav)

🔴 Fixed bugs:

  • Update makefile to use pip installed dependencies #1920 (loftiskg)
  • Delete tables #1916 (felixwang9817)
  • Set a 5 minute limit for redshift statement execution #1915 (achals)
  • Use set when parsing repos to prevent duplicates #1913 (achals)
  • resolve environment variables in repo config #1909 (samuel100)
  • Respect specified ValueTypes for features during materialization #1906 (Agent007)
  • Fix issue with feature views being detected as duplicated when imported #1905 (achals)
  • Use contextvars to maintain a call stack during the usage calls #1882 (achals)

🔨 Merged pull requests:

Feast v0.13.0

22 Sep 21:59
a435283
Compare
Choose a tag to compare

Overview

Today we are releasing Feast 0.13, which includes 3 new features:

  1. [Experimental] On demand feature views, which allow for consistently applied transformations in both training and online paths. This also introduces the concept of request data, which is data only available at the time of the prediction request, as potential inputs into these transformations (see docs)
  2. [Experimental] Python feature servers, which allow you to quickly deploy a local HTTP server to serve online features. Serverless deployments and java feature servers to come soon! (see docs)
  3. Feature views without entities, which allow you to specify features that should only be joined on event timestamps. You do not need lists of entities / entity values when defining and retrieving features from these feature views. (see docs)

Experimental features are subject to API changes in the near future as we collect feedback. If you have thoughts, please don’t hesitate to reach out to the Feast team!

👥 Contributors

Thanks to @achals, @adchia, @Baineng, @codyjlin, @DvirDukhan, @felixwang9817, @GregKuhlmann, @guykhazma, @hamzakpt, @judahrand, @jdamji, @LarsKlingen, @MattDelac, @mavysavydav, @mmurdoch, @qooba, @tedhtchang, @samuel100, @tsotnet, and @WingCode for the contributions!

💥 Breaking changes:

  • Enforce case-insensitively unique feature view names #1835 (codyjlin)
  • Add init to Provider contract #1796 (woop)

✨ New Features:

  • Add on demand feature view experimental docs #1880 (adchia)
  • Adding telemetry for on demand feature views and making existing usage calls async #1873 (adchia)
  • Read registry & config from env variables in AWS Lambda feature server #1870 (tsotnet)
  • Add feature server configuration for AWS lambda #1865 (felixwang9817)
  • Add MVP support for on demand transforms for AWS to_s3 and to_redshift #1856 (adchia)
  • Add MVP support for on demand transforms for bigquery #1855 (adchia)
  • Add arrow support for on demand feature views #1853 (adchia)
  • Support adding request data in on demand transforms #1851 (adchia)
  • Support on demand feature views in feature services #1849 (achals)
  • Infer features for on demand feature views, support multiple output features #1845 (achals)
  • Add Registry and CLI operations for on demand feature views #1828 (achals)
  • Implementing initial on demand transforms for historical retrieval to_df #1824 (adchia)
  • Registry store plugin #1812 (DvirDukhan)
  • Enable entityless featureviews #1804 (codyjlin)
  • Initial scaffolding for on demand feature view #1803 (adchia)
  • Add s3 support (with custom endpoints) #1789 (woop)
  • Local feature server implementation (HTTP endpoint) #1780 (tsotnet)

🔴 Fixed bugs:

  • Array/list feature materialization in BQ crashes in type conversion #1839
  • Fixing odfv cli group description #1890 (adchia)
  • Fix list feature format for BigQuery offline datasources. #1889 (judahrand)
  • Add dill to main dependencies #1886 (judahrand)
  • Fix pytest_collection_modifyitems to select benchmark tests only #1874 (achals)
  • Add support for multiple entities in Redshift #1850 (felixwang9817)
  • Move apply(dummy_entity) to apply time to ensure it persists in FeatureStore #1848 (codyjlin)
  • Add schema parameter to RedshiftSource #1847 (felixwang9817)
  • Pass bigquery job object to get_job #1844 (LarsKlingen)
  • Simplify _python_value_to_proto_value by looking up values in a dict #1837 (achals)
  • Update historical retrieval integration test for on demand feature views #1836 (achals)
  • Fix flaky connection to redshift data API #1834 (achals)
  • Init registry during create_test_environment #1829 (achals)
  • Randomly generating new BQ dataset for offline_online_store_consistency test #1818 (adchia)
  • Ensure docstring tests always teardown #1817 (felixwang9817)
  • Use get_multi instead of get for datastore reads #1814 (achals)
  • Fix Redshift query for external tables #1810 (woop)
  • Use a random dataset and table name for simple_bq_source #1801 (achals)
  • Refactor Environment class and DataSourceCreator API, and use fixtures for datasets and data sources #1790 (achals)
  • Fix get_online_features telemetry to only log every 10000 times #1786 (felixwang9817)
  • Add a description field the Feature Service class and proto #1771 (achals)
  • Validate project name upon feast.apply #1766 (tedhtchang)

🔨 Merged pull requests:

  • Add ValueType.NULL #1893 (judahrand)
  • Adding more details to the CONTRIBUTING.md #1888 (adchia)
  • Parse BQ DATETIME and TIMESTAMP #1885 (judahrand)
  • Add durations to list the slowest tests #1881 (achals)
  • Upload benchmark information to S3 after integration test runs #1878 (achals)
  • Refactor providers to remove duplicate implementations #1876 (achals)
  • Add Felix & Danny to code owners file #1869 (tsotnet)
  • Initial docker image for aws lambda feature server #1866 (tsotnet)
  • Add flags file to include experimental flags and test/usage flags #1864 (adchia)
  • Hookup pytest-benchmark to online retreival #1858 (achals)
  • Add feature server docs & small changes in local server #1852 (tsotnet)
  • Add roadmap to README.md #1843 (woop)
  • Enable the types test to run on all compatible environments #1840 (adchia)
  • Update reviewers/approvers to include Danny/Felix #1833 (adchia)
  • Fix wrong links in README #1832 (baineng)
    ...
Read more