Releases: feast-dev/feast
Releases · feast-dev/feast
v0.23.0
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 inRetrievalJob
(the output ofget_historical_features
). This makes methods that were already implemented (e.g.to_gcs
orto_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
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
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
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...
v0.21.3
v0.21.2
v0.21.1
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
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
orget_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
tojoin_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 ...
v0.20.2
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
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
tojoin_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)