Skip to content

Releases: feast-dev/feast

v0.23.0

02 Aug 20:20
Compare
Choose a tag to compare

0.23.0 (2022-08-02)

This release adds many bug fixes as well as new functionality:

  • Support for a Snowflake online store
  • A batch materialization engine interface, which now makes materialization a pluggable component. There are two reference implementations already (local, which was the former default, and an AWS Lambda engine which scales up materialization with Lambda)
  • A to_remote_storage method in RetrievalJob (the output of get_historical_features). This makes methods that were already implemented (e.g. to_gcs or to_s3) now visible at the interface level. The Lambda materialization engine implementations use these methods to unload data to a bucket before scalably loading this data into the online store.
  • Improvements to Feast Web UI + SavedDatasets

Features

  • Add an experimental lambda-based materialization engine (#2923) (6f79069)
  • Add column reordering to write_to_offline_store (#2876) (8abc2ef)
  • Add custom JSON table tab w/ formatting (#2851) (0159f38)
  • Add CustomSourceOptions to SavedDatasetStorage (#2958) (23c09c8)
  • Add Go option to feast serve command (#2966) (a36a695)
  • Add interfaces for batch materialization engine (#2901) (38b28ca)
  • Add pages for individual Features to the Feast UI (#2850) (9b97fca)
  • Add snowflake online store (#2902) (f758f9e), closes #2903
  • Add Snowflake online store (again) (#2922) (2ef71fc), closes #2903
  • Add to_remote_storage method to RetrievalJob (#2916) (109ee9c)
  • Support retrieval from multiple feature views with different join keys (#2835) (056cfa1)

Bug Fixes

  • Add dummy alias to pull_all_from_table_or_query (#2956) (5e45228)
  • Bump version of Guava to mitigate cve (#2896) (51df8be)
  • Change numpy version on setup.py and upgrade it to resolve dependabot warning (#2887) (80ea7a9)
  • Change the feature store plan method to public modifier (#2904) (0ec7d1a)
  • Deprecate 3.7 wheels and fix verification workflow (#2934) (040c910)
  • Do not allow same column to be reused in data sources (#2965) (661c053)
  • Fix build wheels workflow to install apache-arrow correctly (#2932) (bdeb4ae)
  • Fix file offline store logic for feature views without ttl (#2971) (26f6b69)
  • Fix grpc and update protobuf (#2894) (86e9efd)
  • Fix night ci syntax error and update readme (#2935) (b917540)
  • Fix nightly ci again (#2939) (1603c9e)
  • Fix the go build and use CgoArrowAllocator to prevent incorrect garbage collection (#2919) (130746e)
  • Fix typo in CONTRIBUTING.md (#2955) (8534f69)
  • Fixing broken links to feast documentation on java readme and contribution (#2892) (d044588)
  • Fixing Spark min / max entity df event timestamps range return order (#2735) (ac55ce2)
  • Move gcp back to 1.47.0 since grpcio-tools 1.48.0 got yanked from pypi (#2990) (fc447eb)
  • Refactor testing and sort out unit and integration tests (#2975) (2680f7b)
  • Remove hard-coded integration test setup for AWS & GCP (#2970) (e4507ac)
  • Resolve small typo in README file (#2930) (16ae902)
  • Revert "feat: Add snowflake online store (#2902)" (#2909) (38fd001)
  • Snowflake_online_read fix (#2988) (651ce34)
  • Spark source support table with pattern "db.table" (#2606) (3ce5139), closes #2605
  • Switch mysql log string to use regex (#2976) (5edf4b0)
  • Update gopy to point to fork to resolve github annotation errors. (#2940) (ba2dcf1)
  • Version entity serialization mechanism and fix issue with int64 vals (#2944) (d0d27a3)

v0.22.2

29 Jul 04:12
Compare
Choose a tag to compare

0.22.2 (2022-07-29)

This patch release reverts an accidental removal of Python 3.7 support in 0.22.1.

Reverts

  • ci: "Fix night ci syntax error and update readme (#2935)" (31f54c8)
  • ci: fix: Fix nightly ci again (#2939). This reverts commit c363619. (33cbaeb)
  • ci: Revert "ci: Add a nightly CI job for integration tests (#2652)" (d4bb394)
  • ci: Revert "fix: Deprecate 3.7 wheels and fix verification workflow (#2934)" (efadb22)
  • Revert "fix: Change numpy version on setup.py and upgrade it to resolve dependabot warning (#2887)" (87190cb)

v0.22.1

19 Jul 00:59
Compare
Choose a tag to compare

0.22.1 (2022-07-19)

Bug Fixes

  • Change numpy version on setup.py and upgrade it to resolve dependabot warning (#2887) (b9190b9)
  • Change the feature store plan method to public modifier (#2904) (568058a)
  • Deprecate 3.7 wheels and fix verification workflow (#2934) (146e36d)
  • Fix build wheels workflow to install apache-arrow correctly (#2932) (4b69e0e)
  • Fix grpc and update protobuf (#2894) (f726c96)
  • Fix night ci syntax error and update readme (#2935) (b35553b)
  • Fix nightly ci again (#2939) (c363619)
  • Fix the go build and use CgoArrowAllocator to prevent incorrect garbage collection (#2919) (f4f4894)
  • Fixing broken links to feast documentation on java readme and contribution (#2892) (a45e10a)
  • Resolve small typo in README file (#2930) (9840c1b)
  • Update gopy to point to fork to resolve github annotation errors. (#2940) (9b9fbbe)

v0.22.0

29 Jun 20:23
Compare
Choose a tag to compare

0.22.0 (2022-06-29)

Overview

This release adds many bug fixes, as well as some new functionality to help with realtime use cases:

  • SQLAlchemy backed registry (as an alternative to a file registry) (documentation)
  • A universal push API so users can push (streaming) feature values to both offline / online stores (documentation)
  • [Alpha] High level objects to define stream transformations. There are contrib components to help pull registered stream transformations, execute them, and push transformed feature values to the online store. (tutorial)
  • [Alpha] Logging served feature values (from the Go feature server) to the offline store and validating against Great Expectations suite using feast validate (tutorial)

Features

  • Add feast repo-upgrade for automated repo upgrades (#2733) (a3304d4)
  • Add file write_to_offline_store functionality (#2808) (c0e2ad7)
  • Add http endpoint to the Go feature server (#2658) (3347a57)
  • Add simple TLS support in Go RedisOnlineStore (#2860) (521488d)
  • Add StreamProcessor and SparkKafkaProcessor as contrib (#2777) (83ab682)
  • Added Spark support for Delta and Avro (#2757) (7d16516)
  • CLI interface for validation of logged features (#2718) (c8b11b3)
  • Enable stream feature view materialization (#2798) (a06700d)
  • Enable stream feature view materialization (#2807) (7d57724)
  • Implement offline_write_batch for BigQuery and Snowflake (#2840) (97444e4)
  • Offline push endpoint for pushing to offline stores (#2837) (a88cd30)
  • Push to Redshift batch source offline store directly (#2819) (5748a8b)
  • Scaffold for unified push api (#2796) (1bd0930)
  • SQLAlchemy Registry Support (#2734) (b3fe39c)
  • Stream Feature View FCOS (#2750) (0cf3c92)
  • Update stream fcos to have watermark and sliding interval (#2765) (3256952)
  • Validating logged features via Python SDK (#2640) (2874fc5)

Bug Fixes

  • Add columns for user metadata in the tables (#2760) (269055e)
  • Add project columns in the SQL Registry (#2784) (336fdd1)
  • Add S3FS dependency (which Dask depends on for S3 files) (#2701) (5d6fa94)
  • Bugfixes for how registry is loaded (#2768) (ecb8b2a)
  • Conversion of null timestamp from proto to python (#2814) (cb23648)
  • Correct feature statuses during feature logging test (#2709) (cebf609)
  • Correctly generate projects-list.json when calling feast ui and using postgres as a source (#2845) (bee8076)
  • Dynamodb drops missing entities when batching (#2802) (a2e9209)
  • Enable faulthandler and disable flaky tests (#2815) (4934d84)
  • Explicitly translate errors when instantiating the go fs (#2842) (7a2c4cd)
  • Fix broken roadmap links (#2690) (b3ba8aa)
  • Fix bugs in applying stream feature view and retrieving online features (#2754) (d024e5e)
  • Fix Feast UI failure with new way of specifying entities (#2773) (0d1ac01)
  • Fix feature view getitem for feature services (#2769) (88cc47d)
  • Fix issue when user specifies a port for feast ui (#2692) (1c621fe)
  • Fix macos wheel version for 310 and also checkout edited go files (#2890) (bdf170f)
  • Fix on demand feature view crash from inference when it uses df.apply (#2713) (c5539fd)
  • Fix SparkKafkaProcessor query_timeout parameter (#2789) (a8d282d)
  • Fix workflow syntax error (#2869) (fae45a1)
  • Fixed custom S3 endpoint read fail (#2786) (6fec431)
  • Go install gopy instead using go mod tidy (#2863) (2f2b519)
  • Hydrate infra object in the sql registry proto() method (#2782) (452dcd3)
  • Implement apply_materialization and infra methods in sql registry (#2775) (4ed107c)
  • Minor refactor to format exception message (#2764) (da763c6)
  • Prefer installing gopy from feast's fork as opposed to upstream (#2839) (34c997d)
  • Python server is not correctly starting in integration tests (#2706) ([7583a0b](7583a0b...
Read more

v0.21.3

13 Jun 17:07
Compare
Choose a tag to compare

0.21.3 (2022-06-13)

Bug Fixes

v0.21.2

17 May 20:29
Compare
Choose a tag to compare

0.21.2 (2022-05-17)

Bug Fixes

  • Correct feature statuses during feature logging test (#2709) (c529d58)
  • Fix on demand feature view crash from inference when it uses df.apply (#2713) (0f6da6c)
  • Random port allocation for python server in tests (#2710) (e714b16)

v0.21.1

16 May 21:36
Compare
Choose a tag to compare

0.21.1 (2022-05-16)

Bug Fixes

  • Add S3FS dependency (which Dask depends on for S3 files) (#2701) (1f893f1)
  • Fix broken roadmap links (#2690) (079395a)
  • Fix issue when user specifies a port for feast ui (#2692) (00a9de9)
  • Python server is not correctly starting in integration tests (#2706) (4525336)
  • Support push sources in stream feature views (#2704) (6531685)

v0.21.0

13 May 22:02
Compare
Choose a tag to compare

0.21.0 (2022-05-13)

Overview

This release adds many bug fixes, and also adds several new features:

  • HBase online store (contrib)
  • [Alpha] feast ui command to spin up the Web UI within a feature repository

There is ongoing work towards:

  • [Alpha] High performance Go feature server (via feast serve with a go feature server enabled)
  • [Alpha] Stream transformations
  • [Alpha] Validating logged feature values (from the Go feature server) with Great Expectations and feast validate

Features

  • Add hbase online store support in feast (#2590) (c9eda79)
  • Adding SSL options for Postgres (#2644) (0e809c2)
  • Allow Feast UI to be spun up with CLI command: feast ui (#2667) (44ca9f5)
  • Allow to pass secrets and environment variables to transformation service (#2632) (ffa33ad)
  • CLI command 'feast serve' should start go-based server if flag is enabled (#2617) (f3ff812)
  • Create stream and batch feature view abstractions (#2559) (d1f76e5)
  • Postgres supported as Registry, Online store, and Offline store (#2401) (ed2f979)
  • Support entity fields in feature view schema parameter by dropping them (#2568) (c8fcc35)
  • Write logged features to an offline store (Python API) (#2574) (134dc5f)
  • Write logged features to Offline Store (Go - Python integration) (#2621) (ccad832)

Bug Fixes

  • Addresses ZeroDivisionError when materializing file source with same timestamps (#2551) (1e398d9)
  • Asynchronously refresh registry for the feast ui command (#2672) (1b09ca2)
  • Build platform specific python packages with ci-build-wheel (#2555) (b10a4cf)
  • Delete data sources from registry when using the diffing logic (#2669) (fc00ca8)
  • Enforce kw args featureservice (#2575) (160d7b7)
  • Enforce kw args in datasources (#2567) (0b7ec53)
  • Feature logging to Redshift is broken (#2655) (479cd51)
  • Feature service to templates (#2649) (1e02066)
  • Feature with timestamp type is incorrectly interpreted by Go FS (#2588) (e3d9588)
  • Fix __hash__ methods (#2556) (ebb7dfe)
  • Fix AWS bootstrap template (#2604) (c94a69c)
  • Fix broken proto conversion methods for data sources (#2603) (00ed65a)
  • Fix case where on demand feature view tab is broken if no custom tabs are passed. (#2682) (01d3568)
  • Fix DynamoDB fetches when there are entities that are not found (#2573) (7076fe0)
  • Fix Feast UI parser to work with new APIs (#2668) (8d76751)
  • Fix java server after odfv update (#2602) (0ca6297)
  • Fix materialization with ttl=0 bug (#2666) (ab78702)
  • Fix push sources and add docs / tests pushing via the python feature server (#2561) (e8e418e)
  • Fixed data mapping errors for Snowflake (#2558) (53c2ce2)
  • Forcing ODFV udfs to be main module and fixing false positive duplicate data source warning (#2677) (2ce33cd)
  • Include the ui/build directory, and remove package data (#2681) (0384f5f)
  • Infer features for feature services when they depend on feature views without schemas (#2653) (87c194c)
  • Pin dependencies to nearest major version (#2647) (bb72b7c)
  • Pin pip<22.1 to get around breaking change in pip==22.1 (#2678) (d3e01bc)
  • Punt deprecation warnings and clean up some warnings. (#2670) (f775d2e)
  • Reject undefined features when using get_historical_features or get_online_features (#2665) (36849fb)
  • Remove ci extra from the feature transformation server dockerfile (#2618) (25613b4)
  • Remove incorrect call to logging.basicConfig (#2676) (8cbf51c)
  • Small typo in CLI (#2578) (f372981)
  • Switch from join_key to join_keys in tests and docs (#2580) (d66c931)
  • Teardown trino container correctly after tests (#2562) (72f1558)
  • Update build_go_protos to use a consistent python path (#2550) (f136f8c)
  • Update data source timestamp inference error message to make sense (#2636) (3eaf6b7)
  • Update field api to add tag parameter corresponding to labels in Feature. (#2610) (689d20b)
  • Update java integration tests and add more logging ...
Read more

v0.20.2

28 Apr 21:23
Compare
Choose a tag to compare

0.20.2 (2022-04-28)

Bug Fixes

  • Feature with timestamp type is incorrectly interpreted by Go FS (#2588) (3ec943a)
  • Fix AWS bootstrap template (#2604) (6df5a49)
  • Fix broken proto conversion methods for data sources (#2603) (c391216)
  • Remove ci extra from the feature transformation server dockerfile (#2618) (a7437fa)
  • Update field api to add tag parameter corresponding to labels in Feature. (#2610) (40962fc)
  • Use timestamp type when converting unixtimestamp feature type to arrow (#2593) (a1c3ee3)

v0.20.1

20 Apr 23:22
Compare
Choose a tag to compare

0.20.1 (2022-04-20)

Bug Fixes

  • Addresses ZeroDivisionError when materializing file source with same timestamps (#2551) (5539c51)
  • Build platform specific python packages with ci-build-wheel (#2555) (1757639)
  • Enforce kw args featureservice (#2575) (4dce254)
  • Enforce kw args in datasources (#2567) (6374634)
  • Fix __hash__ methods (#2556) (dd8b854)
  • Fix DynamoDB fetches when there are entities that are not found (#2573) (882328f)
  • Fix push sources and add docs / tests pushing via the python feature server (#2561) (c5006c2)
  • Fixed data mapping errors for Snowflake (#2558) (abd6be7)
  • Small typo in CLI (#2578) (8717bc8)
  • Switch from join_key to join_keys in tests and docs (#2580) (6130b80)
  • Update build_go_protos to use a consistent python path (#2550) (1c523bf)
  • Update RedisCluster to use redis-py official implementation (#2554) (c47fa2a)
  • Use cwd when getting module path (#2577) (28752f2)