0.31.0 (2023-04-21)
- Add Stream Feature Views to helper that collect Feature View names (#3582) (7854f63)
- Add StreamFeatureViewSpec to FeastObjectSpecProto convenience type (#3550) (3cefd6c)
- Batch Snowflake materialization queries to obey Snowpark 100 fea… (#3406) (f9862b5)
- Bytewax materializer security context (#3573) (6794338)
- cI: Install coreutils in mac github workers for smoke test (#3563) (e7421c1)
- Fix bug with no SqlRegistryConfig class (#3586) (6dc1368)
- Fix Snowflake template (#3584) (6c09c39)
- Make snowflake to remote tables temporary (#3588) (ad48146)
- Remove snowflake source warehouse tech debt (#3422) (7da0580)
- Snowflake remote storage (#3574) (f8d3890)
- Support param timeout when persisting (#3593) (01a98f0)
- Use pyarrow in a way that works across versions (#3562) (1289f3f)
- Wrap the bigquery table name with backtick. (#3577) (09f0e7e)
- Add AWS Redshift Serverless support (#3595) (58ce148)
- Add Hazelcast as an online store (#3523) (b05d50b)
- Cache Bigtable client (#3602) (b27472f)
- Relax aws extras requirements (#3585) (7e77382)
- Show bigquery datasource table and query on UI (#3600) (58d63f7)
- Update snowflake offline store job output formats -- added arrow (#3589) (be3e349)
0.30.0 (2023-03-24)
- Add description attribute to the Field.from_proto method (#3469) (473f8d9)
- Add filesystem kwargs when read prev_table on FileRetrievalJob (… (#3491) (dca4745), closes #3490
- Bytewax image pull secret config (#3547) (d2d13b1)
- Clean up Rockset Online Store for use (#3549) (a76c6d0)
- Feature view
entities
from_proto type (#3524) (57bbb61) - Fix missing requests requirement after GCP requirement removed. Make BigQuerySource not require gcp extra (2c85421)
- Fix SQL Registry cache miss (#3482) (3249b97)
- Fixed path inside quickstart notebook (#3456) (66edc32)
- Improve BQ point-in-time joining scalability (#3429) (ff66784)
- Pin typeguard to 2.13.3 which is what we are currently using. (#3542) (61f6fb0)
- Protobuf lower bound to 3.20 to alert that Feast is incompatible with tensorflow (#3476) (9ca59e3)
- Spark kafka processor sorting (#3479) (f2cbf43)
- UI working behind base url (#3514) (9a3fd98)
- Update go dependencies (#3512) (bada97c)
- Add Rockset as an OnlineStore (#3405) (fd91cda)
- Add Snowflake Registry (#3363) (ec1e61d)
- Added SnowflakeConnection caching (#3531) (f9f8df2)
- Adding query timeout to
to_df
andto_arrow
retrieval methods (#3505) (bab6644) - adds k8s config options to Bytewax materialization engine (#3518) (1883f55)
0.29.0 (2023-01-31)
- Add check for bool type in addition to sample (#3452) (1c7c491)
- Buggy SQL for postgres source (#3424) (1ea100e)
- Ensure no duplicates in
fv.schema
(#3460) (08ffa8d) - Fix delete sfv twice issue (#3466) (dfd5eae)
- Stream feature view UI shows transformation issue (#3464) (1ef5137)
- Update registry.refresh to have a default arg (#3450) (2f7c4ed)
- Updating the batch field so that you can query create and event date. (#3411) (01ab462), closes #3401
- Add data source search (#3449) (fbbb293)
- Adding list_validation_references for default and sql registry (#3436) (21dd253)
- Make UI accessible behind proxy (#3428) (753d8db)
0.28.0 (2023-01-03)
- Apply billing project when infer schema (#3417) (4f9ad7e)
- Assertion condition when value is 0 (#3401) (98a24a3)
- Enable registry caching in SQL Registry (#3395) (2e57376)
- Fix bug where SQL registry was incorrectly writing infra config around online stores (#3394) (6bcf77c)
- Get all columns with describe table method from RedshiftData-api (#3377) (fd97254)
- ODFV able to handle boolean pandas type (#3384) (8f242e6)
- Remove PySpark dependency from Snowflake Offline Store (#3388) (7b160c7)
- Specifies timeout in exception polling (#3398) (c0ca7e4)
- Update import logic to remove
pyspark
dependency from Snowflake Offline Store (#3397) (cf073e6)
- Add template for Github Codespaces (#3421) (41c0537)
- Adds description attribute for features/fields (#3425) (26f4881)
- Snowflake skip materialization if no table change (#3404) (0ab3942)
0.27.0 (2022-12-05)
- Changing Snowflake template code to avoid query not implemented … (#3319) (1590d6b)
- Dask zero division error if parquet dataset has only one partition (#3236) (69e4a7d)
- Enable Spark materialization on Yarn (#3370) (0c20a4e)
- Ensure that Snowflake accounts for number columns that overspecify precision (#3306) (0ad0ace)
- Fix memory leak from usage.py not properly cleaning up call stack (#3371) (a0c6fde)
- Fix workflow to contain env vars (#3379) (548bed9)
- Update bytewax materialization (#3368) (4ebe00f)
- Update the version counts (#3378) (8112db5)
- Updated AWS Athena template (#3322) (5956981)
- Wrong UI data source type display (#3276) (8f28062)
- Cassandra online store, concurrency in bulk write operations (#3367) (eaf354c)
- Cassandra online store, concurrent fetching for multiple entities (#3356) (00fa21f)
- Get Snowflake Query Output As Pyspark Dataframe (#2504) (#3358) (2f18957)
0.26.0 (2022-10-06)
- Add
X-Trino-Extra-Credential
header and remove user override (#3246) (164e666) - Add postgres to the feature server Dockerfile to fix helm chart flow (#3261) (6f6cbb7)
- Add stream feature view in the Web UI (#3257) (1f70b3a)
- Build dockerfile correctly (#3239) (a2dc0d0)
- Configuration to stop coercion of tz for entity_df (#3255) (97b7ab9)
- Enable users to upgrade a batch source into a push source (#3213) (1b312fb)
- Fix docker image for feature-server (#3272) (eff01d1)
- Fix Feast UI release process to update the feast-ui package (#3267) (a9d48d0)
- Return 422 on bad push source name (#3214) (b851e01)
- Stream feature view meta undefined created_timestamp issue (#3266) (12e1a8f)
- Stream feature view not shown in the UI (#3251) (e713dda)
- Udf in stream feature view UI shows pickled data (#3268) (0728117)
- Update snowflake materialization messages (#3230) (a63d440)
- Updated quickstart notebook to patch an incorrect reference to an outdated featureview name (#3271) (b9b9c54)
- Use configured user in env var instead of "user" for Trino (#3254) (532d8a1)
- Add mysql as online store (#3190) (cb8db84)
- Add possibility to define feature_store.yaml path with env variable (#3231) (95fdb19)
- Add request_timeout setting for cassandra online store adapter (#3256) (da20757)
- Add tag description in Field in the Feast UI (#3258) (086f279)
- Adding billing_project_id in BigQueryOfflineStoreConfig (#3253) (f80f05f)
- BigTable online store (#3140) (6bc91c2), closes /github.com/spulec/moto/blob/master/CHANGELOG.md#400
- Filter subset features in postgres #3174 (#3203) (b48d36b)
0.25.0 (2022-09-20)
- Broken Feature Service Link (#3227) (e117082)
- Feature-server image is missing mysql dependency for mysql registry (#3223) (ae37b20)
- Fix handling of TTL in Go server (#3232) (f020630)
- Fix materialization when running on Spark cluster. (#3166) (175fd25)
- Fix push API to respect feature view's already inferred entity types (#3172) (7c50ab5)
- Fix release workflow (#3144) (20a9dd9)
- Fix Shopify timestamp bug and add warnings to help with debugging entity registration (#3191) (de75971)
- Handle complex Spark data types in SparkSource (#3154) (5ddb83b)
- Local staging location provision (#3195) (cdf0faf)
- Remove bad snowflake offline store method (#3204) (dfdd0ca)
- Remove opening file object when validating S3 parquet source (#3217) (a906018)
- Snowflake config file search error (#3193) (189afb9)
- Update Snowflake Online docs (#3206) (7bc1dff)
- Add
to_remote_storage
functionality toSparkOfflineStore
(#3175) (2107ce2) - Add ability to give boto extra args for registry config (#3219) (fbc6a2c)
- Add health endpoint to py server (#3202) (43222f2)
- Add snowflake support for date & number with scale (#3148) (50e8755)
- Add tag kwarg to set Snowflake online store table path (#3176) (39aeea3)
- Add workgroup to athena offline store config (#3139) (a752211)
- Implement spark materialization engine (#3184) (a59c33a)
0.24.0 (2022-08-25)
- Check if on_demand_feature_views is an empty list rather than None for snowflake provider (#3046) (9b05e65)
- FeatureStore.apply applies BatchFeatureView correctly (#3098) (41be511)
- Fix Feast Java inconsistency with int64 serialization vs python (#3031) (4bba787)
- Fix feature service inference logic (#3089) (4310ed7)
- Fix field mapping logic during feature inference (#3067) (cdfa761)
- Fix incorrect on demand feature view diffing and improve Java tests (#3074) (0702310)
- Fix Java helm charts to work with refactored logic. Fix FTS image (#3105) (2b493e0)
- Fix on demand feature view output in feast plan + Web UI crash (#3057) (bfae6ac)
- Fix release workflow to release 0.24.0 (#3138) (a69aaae)
- Fix Spark offline store type conversion to arrow (#3071) (b26566d)
- Fixing Web UI, which fails for the SQL registry (#3028) (64603b6)
- Force Snowflake Session to Timezone UTC (#3083) (9f221e6)
- Make infer dummy entity join key idempotent (#3115) (1f5b1e0)
- More explicit error messages (#2708) (e4d7afd)
- Parse inline data sources (#3036) (c7ba370)
- Prevent overwriting existing file during
persist
(#3088) (69af21f) - Register BatchFeatureView in feature repos correctly (#3092) (b8e39ea)
- Return an empty infra object from sql registry when it doesn't exist (#3022) (8ba87d1)
- Teardown tables for Snowflake Materialization testing (#3106) (0a0c974)
- UI error when saved dataset is present in registry. (#3124) (83cf753)
- Update sql.py (#3096) (2646a86)
- Updated snowflake template (#3130) (f0594e1)
- Add authentication option for snowflake connector (#3039) (74c75f1)
- Add Cassandra/AstraDB online store contribution (#2873) (feb6cb8)
- Add Snowflake materialization engine (#2948) (f3b522b)
- Adding saved dataset capabilities for Postgres (#3070) (d3253c3)
- Allow passing repo config path via flag (#3077) (0d2d951)
- Contrib azure provider with synapse/mssql offline store and Azure registry store (#3072) (9f7e557)
- Custom Docker image for Bytewax batch materialization (#3099) (cdd1b07)
- Feast AWS Athena offline store (again) (#3044) (989ce08)
- Implement spark offline store
offline_write_batch
method (#3076) (5b0cc87) - Initial Bytewax materialization engine (#2974) (55c61f9)
- Refactor feature server helm charts to allow passing feature_store.yaml in environment variables (#3113) (85ee789)
0.23.0 (2022-08-02)
- 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)
- 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)
0.22.0 (2022-06-29)
- 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)
- Random port allocation for python server in tests (#2710) (dee8090)
- Refactor test to reuse LocalRegistryFile (#2763) (4339c0a)
- Revert "chore(release): release 0.22.0" (#2852) (e6a4636)
- Stop running go mod tidy in setup.py (#2877) (676ecbb), closes /github.com/pypa/cibuildwheel/issues/189#issuecomment-549933912
- Support push sources in stream feature views (#2704) (0d60eaa)
- Sync publish and build_wheels workflow to fix verify wheel error. (#2871) (b0f050a)
- Update roadmap with stream feature view rfc (#2824) (fc8f890)
- Update udf tests and add base functions to streaming fcos and fix some nonetype errors (#2776) (331a214)
- 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)
- Revert "chore(release): release 0.22.0" (#2891) (e5abf58), closes #2891
- Revert "chore(release): release 0.22.0" (#2870) (ffb0892), closes #2870
- Revert "Create main.yml" (#2867) (47922a4), closes #2867
0.21.0 (2022-05-13)
- 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 (#2637) (10e23b4)
- Update on demand feature view api (#2587) (38cd7f9)
- Update RedisCluster to use redis-py official implementation (#2554) (ce5606f)
- Use cwd when getting module path (#2577) (b550e59)
- Use ParquetDataset for Schema Inference (#2686) (4f85e3e)
- Use timestamp type when converting unixtimestamp feature type to arrow (#2593) (c439611)
- 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)
0.20.0 (2022-04-14)
- Add inlined data sources to the top level registry (#2456) (356788a)
- Add new value types to types.ts for web ui (#2463) (ad5694e)
- Add PushSource proto and Python class (#2428) (9a4bd63)
- Add spark to lambda dockerfile (#2480) (514666f)
- Added private_key auth for Snowflake (#2508) (c42c9b0)
- Added Redshift and Spark typecheck to data_source event_timestamp_col inference (#2389) (04dea73)
- Building of go extension fails (#2448) (7d1efd5)
- Bump the number of versions bumps expected to 27 (#2549) (ecc9938)
- Create init files for the proto-generated python dirs (#2410) (e17028d)
- Don't prevent apply from running given duplicate empty names in data sources. Also fix repeated apply of Spark data source. (#2415) (b95f441)
- Dynamodb deduplicate batch write request by partition keys (#2515) (70d4a13)
- Ensure that init files exist in proto dirs (#2433) (9b94f7b)
- Fix DataSource constructor to unbreak custom data sources (#2492) (712653e)
- Fix default feast apply path without any extras (#2373) (6ba7fc7)
- Fix definitions.py with new definition (#2541) (eefc34a)
- Fix entity row to use join key instead of name (#2521) (c22fa2c)
- Fix Java Master (#2499) (e083458)
- Fix registry proto (#2435) (ea6a9b2)
- Fix some inconsistencies in the docs and comments in the code (#2444) (ad008bf)
- Fix spark docs (#2382) (d4a606a)
- Fix Spark template to work correctly on feast init -t spark (#2393) (ae133fd)
- Fix the feature repo fixture used by java tests (#2469) (32e925e)
- Fix unhashable Snowflake and Redshift sources (cd8f1c9)
- Fixed bug in passing config file params to snowflake python connector (#2503) (34f2b59)
- Fixing Spark template to include source name (#2381) (a985f1d)
- Make name a keyword arg for the Entity class (#2467) (43847de)
- Making a name for data sources not a breaking change (#2379) (71d7ae2)
- Minor link fix in
CONTRIBUTING.md
(#2481) (2917e27) - Preserve ordering of features in _get_column_names (#2457) (495b435)
- Relax click python requirement to >=7 (#2450) (f202f92)
- Remove date partition column field from datasources that don't s… (#2478) (ce35835)
- Remove docker step from unit test workflow (#2535) (6f22f22)
- Remove spark from the AWS Lambda dockerfile (#2498) (6abae16)
- Request data api update (#2488) (0c9e5b7)
- Schema update (#2509) (cf7bbc2)
- Simplify DataSource.from_proto logic (#2424) (6bda4d2)
- Snowflake api update (#2487) (1181a9e)
- Support passing batch source to streaming sources for backfills (#2523) (90db1d1)
- Timestamp update (#2486) (bf23111)
- Typos in Feast UI error message (#2432) (e14369d)
- Update feature view APIs to prefer keyword args (#2472) (7c19cf7)
- Update file api (#2470) (83a11c6)
- Update Makefile to cd into python dir before running commands (#2437) (ca32155)
- Update redshift api (#2479) (4fa73a9)
- Update some fields optional in UI parser (#2380) (cff7ac3)
- Use a single version of jackson libraries and upgrade to 2.12.6.1 (#2473) (5be1cc6)
- Use dateutil parser to parse materialization times (#2464) (6c55e49)
- Use the correct dockerhub image tag when building feature servers (#2372) (0d62c1d)
- Add
/write-to-online-store
method to the python feature server (#2423) (d2fb048) - Add description, tags, owner fields to all feature view classes (#2440) (ed5e928)
- Add DQM Logging on GRPC Server with FileLogStorage for Testing (#2403) (57a97d8)
- Add Feast types in preparation for changing type system (#2475) (4864252)
- Add Field class (#2500) (1279612)
- Add support for DynamoDB online_read in batches (#2371) (702ec49)
- Add Support for DynamodbOnlineStoreConfig endpoint_url parameter (#2485) (7b863d1)
- Add templating for dynamodb table name (#2394) (f591088)
- Allow local feature server to use Go feature server if enabled (#2538) (a2ef375)
- Allow using entity's join_key in get_online_features (#2420) (068c765)
- Data Source Api Update (#2468) (6b96b21)
- Go server (#2339) (d12e7ef), closes #2354 #2361 #2332 #2356 #2363 #2349 #2355 #2336 #2361 #2363 #2344 #2354 #2347 #2350 #2356 #2355 #2349 #2352 #2341 #2336 #2373 #2315 #2372 #2332 #2349 #2336 #2361 #2363 #2344 #2354 #2347 #2350 #2356 #2355 #2349 #2352 #2341 #2336 #2373 #2379 #2380 #2382 #2364 #2366 #2386
- Graduate write_to_online_store out of experimental status (#2426) (e7dd4b7)
- Make feast PEP 561 compliant (#2405) (3c41f94), closes #2420 #2418 #2425 #2426 #2427 #2431 #2433 #2420 #2418 #2425 #2426 #2427 #2431 #2433
- Makefile for contrib for Issue #2364 (#2366) (a02325b)
- Support on demand feature views in go feature server (#2494) (6edd274)
- Switch from Feature to Field (#2514) (6a03bed)
- Use a daemon thread to monitor the go feature server exclusively (#2391) (0bb5e8c)
0.19.0 (2022-03-05)
- Added additional value types to UI parser and removed references to registry-bq.json (#2361) (d202d51)
- Fix Redshift bug that stops waiting on statements after 5 minutes (#2363) (74f887f)
- Method _should_use_plan only returns true for local sqlite provider (#2344) (fdb5f21)
- Remove redis service to prevent more conflicts and add redis node to master_only (#2354) (993616f)
- Rollback Redis-py to Redis-py-cluster (#2347) (1ba86fb)
- Update github workflow to prevent redis from overlapping ports. (#2350) (c2a6c6c)
- Add owner field to Entity and rename labels to tags (412d625)
- Allow all snowflake python connector connection methods to be available to Feast (#2356) (ec7385c)
- Allowing password based authentication and SSL for Redis in Java feature server (0af8adb)
- Event timestamps response (#2355) (5481caf)
- Feast Spark Offline Store (#2349) (98b8d8d)
- Initial merge of Web UI logic (#2352) (ce3bc59)
- Key ttl setting for redis online store (#2341) (236a108)
- Metadata changes & making data sources top level objects to power Feast UI (#2336) (43da230)
v0.18.1 (2022-02-15)
- 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)
- Remove old flag warning with the python feature server #2300 (adchia)
- Use an OFFLINE schema for Snowflake offline store tests #2291 (sfc-gh-madkins)
- fix typos in markdown files #2289 (charliec443)
- Add -SNAPSHOT suffix to pom.xml version #2286 (tsotnet)
- Update CONTRIBUTING.md #2282 (adchia)
v0.18.0 (2022-02-05)
- Tutorial on validation of historical features #2277 (pyalex)
- Feast plan clean up #2256 (felixwang9817)
- Return
UNIX\_TIMESTAMP
as Pythondatetime
#2244 (judahrand) - Validating historical features against reference dataset with "great expectations" profiler #2243 (pyalex)
- Implement feature_store._apply_diffs to handle registry and infra diffs #2238 (felixwang9817)
- Compare Python objects instead of proto objects #2227 (felixwang9817)
- Modify feature_store.plan to produce an InfraDiff #2211 (felixwang9817)
- Implement diff_infra_protos method for feast plan #2204 (felixwang9817)
- Persisting results of historical retrieval #2197 (pyalex)
- Merge feast-snowflake plugin into main repo with documentation #2193 (sfc-gh-madkins)
- Add InfraDiff class for feast plan #2190 (felixwang9817)
- Use FeatureViewProjection instead of FeatureView in ODFV #2186 (judahrand)
- Set
created\_timestamp
andlast\_updated\_timestamp
fields #2266 (judahrand) - Use
datetime.utcnow\(\)
to avoid timezone issues #2265 (judahrand) - Fix Redis key serialization in java feature server #2264 (pyalex)
- modify registry.db s3 object initialization to work in S3 subdirectory with Java Feast Server #2259 (NalinGHub)
- Add snowflake environment variables to allow testing on snowflake infra #2258 (sfc-gh-madkins)
- Correct inconsistent dependency #2255 (judahrand)
- Fix for historical field mappings #2252 (michelle-rascati-sp)
- Add backticks to left_table_query_string #2250 (dmille)
- Fix inference of BigQuery ARRAY types. #2245 (judahrand)
- Fix Redshift data creator #2242 (felixwang9817)
- Delete entity key from Redis only when all attached feature views are gone #2240 (pyalex)
- Tests for transformation service integration in java feature server #2236 (pyalex)
- Feature server helm chart produces invalid YAML #2234 (pyalex)
- Docker build fails for java feature server #2230 (pyalex)
- Fix ValueType.UNIX_TIMESTAMP conversions #2219 (judahrand)
- Add on demand feature views deletion #2203 (corentinmarek)
- Compare only specs in integration tests #2200 (felixwang9817)
- Bump log4j-core from 2.17.0 to 2.17.1 in /java #2189 (dependabot[bot])
- Support multiple application properties files (incl from classpath) #2187 (pyalex)
- Avoid requesting features from OnlineStore twice #2185 (judahrand)
- Speed up Datastore deletes by batch deletions with multithreading #2182 (ptoman-pa)
- Fixes large payload runtime exception in Datastore (issue 1633) #2181 (ptoman-pa)
- Add link to community plugin for Spark offline store #2279 (adchia)
- Fix broken links on documentation #2278 (adchia)
- Publish alternative python package with FEAST_USAGE=False by default #2275 (pyalex)
- Unify all helm charts versions #2274 (pyalex)
- Fix / update helm chart workflows to push the feast python server #2273 (adchia)
- Update Feast Serving documentation with ways to run and debug locally #2272 (adchia)
- Fix Snowflake docs #2270 (felixwang9817)
- Update local-feature-server.md #2269 (tsotnet)
- Update docs to include Snowflake/DQM and removing unused docs from old versions of Feast #2268 (adchia)
- Graduate Python feature server #2263 (felixwang9817)
- Fix benchmark tests at HEAD by passing in Snowflake secrets #2262 (adchia)
- Refactor
pa\_to\_feast\_value\_type
#2246 (judahrand) - Allow using pandas.StringDtype to support on-demand features with STRING type #2229 (pyalex)
- Bump jackson-databind from 2.10.1 to 2.10.5.1 in /java/common #2228 (dependabot[bot])
- Split apply total parse repo #2226 (mickey-liu)
- Publish renamed java packages to maven central (via Sonatype) #2225 (pyalex)
- Make online store nullable #2224 (mirayyuce)
- Optimize
\_populate\_result\_rows\_from\_feature\_view
#2223 (judahrand) - Update to newer
redis-py
#2221 (judahrand) - Adding a local feature server test #2217 (adchia)
- replace GetOnlineFeaturesResponse with GetOnlineFeaturesResponseV2 in… #2214 (tsotnet)
- Updates to click==8.* #2210 (diogommartins)
- Bump protobuf-java from 3.12.2 to 3.16.1 in /java #2208 (dependabot[bot])
- Add default priority for bug reports #2207 (adchia)
- Modify issue templates to automatically attach labels #2205 (adchia)
- Python FeatureServer optimization #2202 (judahrand)
- Refactor all importer logic to belong in feast.importer #2199 (felixwang9817)
- Refactor
OnlineResponse.to\_dict\(\)
#2196 (judahrand) - [Java feature server] Converge ServingService API to make Python and Java feature servers consistent #2166 (pyalex)
- Add a unit test for the tag_proto_objects method #2163 (achals)
v0.17.0 (2021-12-31)
- Add feast-python-server helm chart #2177 (michelle-rascati-sp)
- Add SqliteTable as an InfraObject #2157 (felixwang9817)
- Compute property-level diffs for repo objects #2156 (achals)
- 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)
- Add DatastoreTable infra object #2140 (felixwang9817)
- Dynamodb infra object #2131 (felixwang9817)
- Add Infra and InfraObjects classes #2125 (felixwang9817)
- Pre compute the timestamp range for feature views #2103 (judahrand)
- Fix issues with java docker building #2178 (achals)
- unpin boto dependency in setup #2168 (fengyu05)
- Fix issue with numpy datetimes in feast_value_type_to_pandas_type #2167 (achals)
- Fix
BYTES
andBYTES_LIST
type conversion #2158 (judahrand) - Use correct name when deleting dynamo table #2154 (pyalex)
- Bump log4j-core from 2.15.0 to 2.16.0 in /java #2146 (dependabot[bot])
- Bump log4j-api from 2.15.0 to 2.16.0 in /java #2145 (dependabot[bot])
- Respect
full_feature_names
for ODFVs #2144 (judahrand) - Cache dynamodb client and resource in DynamoDB online store implement… #2138 (felixwang9817)
- Bump log4j-api from 2.13.2 to 2.15.0 in /java #2133 (dependabot[bot])
- Fix release workflow to use the new GCP action #2132 (adchia)
- Remove spring-boot from the feast serving application #2127 (achals)
- Fix Makefile to properly create the ECR_VERSION #2123 (adchia)
- In GH workflow docker images are being built but not published #2152
- Any plan to make Feast 0.10+ support docker #2148
- ODFVs don't respect
full_feature_names
#2143 - Release workflow does not work #2136
- Redis Online Store - Truncate and Load #2129
- Update roadmap to include Snowflake + Trino. Also fix docs + update FAQ #2175 (adchia)
- Convert python values into proto values in bulk #2172 (pyalex)
- Push docker image after build in GH workflow #2171 (pyalex)
- Improve serialization performance #2165 (judahrand)
- Improve online deserialization latency #2164 (judahrand)
- Add a unit test for the tag_proto_objects method #2163 (achals)
- Bump log4j-core from 2.16.0 to 2.17.0 in /java #2161 (dependabot[bot])
- [Java Feature Server] Use hgetall in redis connector when number of retrieved fields is big enough #2159 (pyalex)
- Do not run benchmarks on pull requests #2155 (felixwang9817)
- Ensure that universal CLI test tears down infrastructure #2151 (felixwang9817)
- Remove underscores from ECR docker versions #2139 (achals)
- Run PR integration tests only on python 3.7 #2137 (achals)
- Update changelog for 0.16.1 and update helm charts #2135 (adchia)
- Bump log4j-core from 2.13.2 to 2.15.0 in /java #2134 (dependabot[bot])
- Updating lambda docker image to feature-server-python-aws #2130 (adchia)
- Fix README to reflect new integration test suites #2124 (adchia)
- Change the feast serve endpoint to be sync rather than async. #2119 (nossrannug)
- Remove argument
feature_refs
#2115 (judahrand) - Fix leaking dynamodb tables in integration tests #2104 (pyalex)
- Remove untested and undocumented interfaces #2084 (judahrand)
- Update creating-a-custom-provider.md #2070 (ChaitanyaKN)
v0.16.1 (2021-12-10)
- Bump log4j-api from 2.13.2 to 2.15.0 in /java #2133 (dependabot[bot])
- Fix release workflow to use the new GCP action #2132 (adchia)
- Fix Makefile to properly create the ECR_VERSION #2123 (adchia)
- 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)
v0.16.0 (2021-12-08)
- 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)
- 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 - Fix release workflow to pass the python version and docker build targets #2122 (adchia)
- 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)
- Add changelog for v0.16.0 #2120 (adchia)
- Update FAQ #2118 (felixwang9817)
- Move helm chart back to main repo #2113 (pyalex)
- Set package long description encoding to UTF-8 #2111 (danilopeixoto)
- Update release workflow to include new docker images #2108 (adchia)
- Use the maintainers group in Codeowners instead of individuals #2102 (achals)
- Remove tfx schema from ValueType #2098 (pyalex)
- Add data source implementations to RTD docs #2097 (felixwang9817)
- Updated feature view documentation to include blurb about feature inferencing #2096 (mavysavydav)
- Fix integration test that is unstable due to incorrect materialization boundaries #2095 (pyalex)
- Broaden google-cloud-core dependency #2094 (ptoman-pa)
- Use pip-tools to lock versions of dependent packages #2093 (ysk24ok)
- Fix typo in feature retrieval doc #2092 (olivierlabreche)
- Fix typo in FeatureView example (doc) #2091 (olivierlabreche)
- Use request.addfinalizer instead of the yield based approach in integ tests #2089 (achals)
- Odfv logic #2088 (felixwang9817)
- Refactor
_convert_arrow_to_proto
#2085 (judahrand) - Add github run id into the integration test projects for debugging #2069 (achals)
- Fixing broken entity key link in quickstart #2068 (adchia)
- Fix java_release workflow by removing step without users/with #2067 (achals)
- Allow using cached registry when writing to the online store #2066 (achals)
- Raise import error when repo configs module cannot be imported #2065 (felixwang9817)
- Remove refs to tensorflow_metadata #2063 (achals)
- Add detailed error messages for test_univerisal_e2e failures #2062 (achals)
- Remove unused protos & deprecated java modules #2061 (pyalex)
- Asynchronously refresh registry in transformation service #2060 (pyalex)
- Fix GH workflow for docker build of java parts #2059 (pyalex)
- Dedicated workflow for java PRs #2050 (pyalex)
- Run java integration test with real google cloud and aws #2049 (pyalex)
- Fixing typo enabling on_demand_transforms #2044 (ArrichM)
- Make
feast registry-dump
print the whole registry as one json #2040 (nossrannug) - Remove tensorflow-metadata folders #2038 (casassg)
- Update CHANGELOG for Feast v0.15.1 #2034 (felixwang9817)
- Remove unsupported java parts #2029 (pyalex)
- Fix checked out branch for PR docker image build workflow #2018 (tsotnet)
- Extend "feast in production" page with description of java feature server #2017 (pyalex)
- Remove duplicates in setup.py and run rudimentary verifications #2016 (achals)
- Upload feature server docker image to ECR on approved PRs #2014 (tsotnet)
- GitBook: [#1] Plugin standards documentation #2011 (felixwang9817)
- Add changelog for v0.15.0 #2006 (adchia)
- Add integration tests for AWS Lambda feature server #2001 (tsotnet)
v0.15.1 (2021-11-13)
- 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)
- ODFV UDFs should handle list types #2002 (Agent007)
- 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)
v0.15.0 (2021-11-08)
- Adding stream ingestion alpha documentation #2005 (adchia)
- 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)
- 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)
- Fix protobuf version conflict in [gcp] and [ci] packages #1992 (ysk24ok)
- Improve aws lambda deployment (logging, idempotency, etc) #1985 (tsotnet)
- Extend context for usage statistics collection & add latencies for performance analysis #1983 (pyalex)
- Update CHANGELOG for Feast v0.14.1 #1982 (felixwang9817)
- Document AWS Lambda permissions #1970 (tsotnet)
- Update online store helper docstring #1957 (amommendes)
- Add public docs for entity aliasing #1951 (codyjlin)
- Updating roadmap + hero image #1950 (adchia)
- Add David and Matt as approvers as well #1943 (achals)
- Add David and Matt as reviewers, and add actions for issue/PR assignment #1942 (achals)
- Simplify BigQuery load jobs #1935 (judahrand)
v0.14.1 (2021-10-28)
- 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)
v0.14.0 (2021-10-08)
- Changed FVProjection 'name_to_use' field to 'name_alias' and changed '.set_projection' in FeatureView to ".with_projection". Also adjustments for some edge cases #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)
- 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)
- Update concepts/README.md #1926 (ysk24ok)
- Add CI for feature server Docker image #1925 (felixwang9817)
- cache provider in feature store instance #1924 (DvirDukhan)
- Refactor logging and error messages in serverless #1923 (felixwang9817)
- Add a caching step to our github actions #1919 (achals)
- Add provider, offline store, online store, registry to RTD #1918 (felixwang9817)
- Cleanup tests #1901 (felixwang9817)
v0.13.0 (2021-09-22)
- Enforce case-insensitively unique feature view names #1835 (codyjlin)
- Add init to Provider contract #1796 (woop)
- 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)
- 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)
- Fix BQ historical retrieval with rows that got backfilled #1744 (MattDelac)
- Handle case where
_LIST
type is empty #1703 (judahrand)
- Add
ValueType.NULL
#1893 (judahrand) - Adding more details to the CONTRIBUTING.md #1888 (adchia)
- Parse BQ
DATETIME
andTIMESTAMP
#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)
- Remove older offline/online consistency tests #1831 (achals)
- Replace individual cli tests with parametrized tests #1830 (achals)
- Reducing wait interval for BQ integration tests #1827 (adchia)
- Reducing size of universal repo to decrease integration test time #1826 (adchia)
- Refactor the datastore online_read method to be slightly more efficient #1819 (achals)
- Remove old doc #1815 (achals)
- Rename telemetry to usage #1800 (felixwang9817)
- Updating quickstart colab to explain more concepts and highlight value prop of Feast #1799 (adchia)
- Fix Azure Terraform installation. #1793 (mmurdoch)
- Disable integration test reruns to identify flaky tests #1787 (achals)
- Rerun failed python integration tests #1785 (achals)
- Add Redis to the universal integration tests #1784 (achals)
- Add online feature retrieval integration test using the universal repo #1783 (achals)
- Fix wrong description in README.md #1779 (WingCode)
- Clean up docstring tests #1778 (felixwang9817)
- Add offline retrival integration tests using the universal repo #1769 (achals)
- Adding initial type support related tests for BQ #1768 (adchia)
- Add release-patch script #1554 (jklegar)
v0.12.1 (2021-08-20)
- Fix get_online_features telemetry to only log every 10000 times #1786 (felixwang9817)
v0.12.0 (2021-08-05)
- Set default feature naming to not include feature view name. Add option to include feature view name in feature naming. #1641 (Mwad22)
- AWS Template improvements (input prompt for configs, default to Redshift) #1731 (tsotnet)
- Clean up uploaded entities in Redshift offline store #1730 (tsotnet)
- Implement Redshift historical retrieval #1720 (tsotnet)
- Add custom data sources #1713 (achals)
- Added --skip-source-validation flag to feast apply #1702 (mavysavydav)
- Allow specifying FeatureServices in FeatureStore methods #1691 (achals)
- Implement materialization for RedshiftOfflineStore & RedshiftRetrievalJob #1680 (tsotnet)
- Add FeatureService proto definition #1676 (achals)
- Add RedshiftDataSource #1669 (tsotnet)
- Add streaming sources to the FeatureView API #1664 (achals)
- Add to_table() to RetrievalJob object #1663 (MattDelac)
- Provide the user with more options for setting the to_bigquery config #1661 (codyjlin)
- Fix
feast apply
bugs #1754 (tsotnet) - Teardown integration tests resources for aws #1740 (achals)
- Fix GCS version #1732 (potatochip)
- Fix unit test warnings related to file_url #1726 (tedhtchang)
- Refactor data source classes to fix import issues #1723 (achals)
- Append ns time and random integer to redshift test tables #1716 (achals)
- Add randomness to bigquery table name #1711 (felixwang9817)
- Fix dry_run bug that was making to_bigquery hang indefinitely #1706 (codyjlin)
- Stringify WhichOneof to make mypy happy #1705 (achals)
- Update redis options parsing #1704 (DvirDukhan)
- Cancel BigQuery job if block_until_done call times out or is interrupted #1699 (codyjlin)
- Teardown infrastructure after integration tests #1697 (achals)
- Fix unit tests that got broken by Pandas 1.3.0 release #1683 (tsotnet)
- Remove default list from the FeatureView constructor #1679 (achals)
- BQ exception should be raised first before we check the timedout #1675 (MattDelac)
- Allow strings for online/offline store instead of dicts #1673 (achals)
- Cancel BigQuery job if timeout hits #1672 (MattDelac)
- Make sure FeatureViews with same name can not be applied at the same … #1651 (tedhtchang)
- Add AWS docs in summary.md #1761 (tsotnet)
- Document permissions for AWS (DynamoDB & Redshift) #1753 (tsotnet)
- Adding small note for project naming convention #1752 (codyjlin)
- Fix warning in FeatureView.from_proto #1751 (tsotnet)
- Add Feature Service to the concepts group #1750 (achals)
- Docstring tests #1749 (felixwang9817)
- Document how pandas deals with missing values #1748 (achals)
- Restore feature refs #1746 (felixwang9817)
- Updating CLI apply to use FeatureStore #1745 (adchia)
- Delete old code #1743 (felixwang9817)
- Bump dependency on pyyaml #1742 (achals)
- Docstrings #1739 (felixwang9817)
- Add the foundation of the universal feature repo and a test that uses it #1734 (achals)
- Add AWS documentation (DynamoDB, Redshift) #1733 (tsotnet)
- Change internal references from input to batch_source #1729 (felixwang9817)
- Refactor tests into new directory layout #1725 (achals)
- Registry teardown #1718 (felixwang9817)
- Redirect telemetry to usage #1717 (felixwang9817)
- Link to offline and online store specs in docs summary #1715 (achals)
- Avoid skewed join between entity_df & feature views #1712 (MattDelac)
- Remove type comments #1710 (achals)
- Increase efficiency of Registry updates #1698 (felixwang9817)
- Parallelize integration tests #1684 (tsotnet)
- Remove debug logging #1678 (charliec443)
- Docs: Fix Feature References example #1674 (GregKuhlmann)
- Rename to_table to to_arrow #1671 (MattDelac)
- Small reference documentation update #1668 (nels)
- Grouped inferencing statements together in apply methods for easier readability #1667 (mavysavydav)
- Infer min and max timestamps from entity_df to limit data read from BQ source #1665 (Mwad22)
- Rename telemetry to usage #1660 (tsotnet)
- Update charts README #1659 (szalai1)
v0.11.0 (2021-06-24)
- Allow BigQuery project to be configured #1656 (MattDelac)
- Add to_bigquery function to BigQueryRetrievalJob #1634 (vtao2)
- Add AWS authentication using github actions #1629 (tsotnet)
- Introduce an OnlineStore interface #1628 (achals)
- Add to_df to convert get_online_feature response to pandas dataframe #1623 (tedhtchang)
- Add datastore namespace option in configs #1581 (tsotnet)
- Add offline_store config #1552 (tsotnet)
- Entity value_type inference for Feature Repo registration #1538 (mavysavydav)
- Inferencing of Features in FeatureView and timestamp column of DataSource #1523 (mavysavydav)
- Add Unix Timestamp value type #1520 (MattDelac)
- Add support for Redis and Redis Cluster #1511 (qooba)
- Add path option to cli #1509 (tedhtchang)
- Schema Inferencing should happen at apply time #1646 (mavysavydav)
- Don't use .result() in BigQueryOfflineStore, since it still leads to OOM #1642 (tsotnet)
- Don't load entire bigquery query results in memory #1638 (tsotnet)
- Remove file loader & its test #1632 (tsotnet)
- Provide descriptive error on invalid table reference #1627 (codyjlin)
- Fix ttl duration when ttl is None #1624 (MattDelac)
- Fix race condition in historical e2e tests #1620 (woop)
- Add validations when materializing from file sources #1615 (achals)
- Add entity column validations when getting historical features from bigquery #1614 (achals)
- Allow telemetry configuration to fail gracefully #1612 (achals)
- Update type conversion from pandas to timestamp to support various the timestamp types #1603 (achals)
- Add current directory in sys path for CLI commands that might depend on custom providers #1594 (MattDelac)
- Fix contention issue #1582 (woop)
- Ensure that only None types fail predicate #1580 (woop)
- Don't create bigquery dataset if it already exists #1569 (tsotnet)
- Don't lose materialization interval tracking when re-applying feature views #1559 (jklegar)
- Validate project and repo names for apply and init commands #1558 (tedhtchang)
- Bump supported Python version to 3.7 #1504 (tsotnet)
- Rename telemetry to usage #1660 (tsotnet)
- Refactor OfflineStoreConfig classes into their owning modules #1657 (achals)
- Run python unit tests in parallel #1652 (achals)
- Refactor OnlineStoreConfig classes into owning modules #1649 (achals)
- Fix table_refs in BigQuerySource definitions #1644 (tsotnet)
- Make test historical retrieval longer #1630 (MattDelac)
- Fix failing historical retrieval assertion #1622 (woop)
- Add a specific error for missing columns during materialization #1619 (achals)
- Use drop_duplicates() instead of groupby (about 1.5~2x faster) #1617 (rightx2)
- Optimize historical retrieval with BigQuery offline store #1602 (MattDelac)
- Use CONCAT() instead of ROW_NUMBER() #1601 (MattDelac)
- Minor doc fix in the code snippet: Fix to reference the right instance for the retrieved job instance object #1599 (dmatrix)
- Repo and project names should not start with an underscore #1597 (tedhtchang)
- Append nanoseconds to dataset name in test_historical_retrival to prevent tests stomping over each other #1593 (achals)
- Make start and end timestamps tz aware in the CLI #1590 (achals)
- Bump fastavro version #1585 (kevinhu)
- Change OfflineStore class description #1571 (tedhtchang)
- Fix Sphinx documentation building #1563 (woop)
- Add test coverage and remove MacOS integration tests #1562 (woop)
- Improve GCP exception handling #1561 (woop)
- Update default cli no option help message #1550 (tedhtchang)
- Add opt-out exception logging telemetry #1535 (jklegar)
- Add instruction for install Feast on IKS and OpenShift using Kustomize #1534 (tedhtchang)
- BigQuery type to Feast type conversion chart update #1530 (mavysavydav)
- remove unnecessay path join in setup.py #1529 (shihabuddinbuet)
- Add roadmap to documentation #1528 (woop)
- Add test matrix for different Python versions #1526 (woop)
- Update broken urls in the github pr template file #1521 (tedhtchang)
- Add a fixed timestamp to quickstart data #1513 (jklegar)
- Make gcp imports optional #1512 (jklegar)
- Fix documentation inconsistency #1510 (jongillham)
- Upgrade grpcio version in python SDK #1508 (szalai1)
- pre-commit command typo fix in CONTRIBUTING.md #1506 (mavysavydav)
- Add optional telemetry to other CLI commands #1505 (jklegar)
v0.10.8 (2021-06-17)
- Don't use .result() in BigQueryOfflineStore, since it still leads to OOM #1642 (tsotnet)
- Don't load entire bigquery query results in memory #1638 (tsotnet)
- Add entity column validations when getting historical features from bigquery #1614 (achals)
- Make test historical retrieval longer #1630 (MattDelac)
- Fix failing historical retrieval assertion #1622 (woop)
- Optimize historical retrieval with BigQuery offline store #1602 (MattDelac)
v0.10.7 (2021-06-07)
- Use drop_duplicates() instead of groupby (about 1.5~2x faster) #1617 (rightx2)
- Use CONCAT() instead of ROW_NUMBER() #1601 (MattDelac)
- Minor doc fix in the code snippet: Fix to reference the right instance for the retrieved job instance object #1599 (dmatrix)
- Append nanoseconds to dataset name in test_historical_retrival to prevent tests stomping over each other #1593 (achals)
- Make start and end timestamps tz aware in the CLI #1590 (achals)
v0.10.6 (2021-05-27)
- Fix contention issue #1582 (woop)
- Ensure that only None types fail predicate #1580 (woop)
- Don't create bigquery dataset if it already exists #1569 (tsotnet)
- Change OfflineStore class description #1571 (tedhtchang)
v0.10.5 (2021-05-19)
- Validate project and repo names for apply and init commands #1558 (tedhtchang)
- Fix Sphinx documentation building #1563 (woop)
- Add test coverage and remove MacOS integration tests #1562 (woop)
- Improve GCP exception handling #1561 (woop)
- Update default cli no option help message #1550 (tedhtchang)
- Add opt-out exception logging telemetry #1535 (jklegar)
- Add instruction for install Feast on IKS and OpenShift using Kustomize #1534 (tedhtchang)
v0.10.4 (2021-05-12)
- Inferencing of Features in FeatureView and timestamp column of DataSource #1523 (mavysavydav)
- Add Unix Timestamp value type #1520 (MattDelac)
- Fix materialize for None #1481 (qooba)
- BigQuery type to Feast type conversion chart update #1530 (mavysavydav)
- remove unnecessay path join in setup.py #1529 (shihabuddinbuet)
- Add roadmap to documentation #1528 (woop)
- Add test matrix for different Python versions #1526 (woop)
- Update broken urls in the github pr template file #1521 (tedhtchang)
- Upgrade grpcio version in python SDK #1508 (szalai1)
- Better logging for materialize command #1499 (jklegar)
v0.10.3 (2021-04-21)
- Add support for third party providers #1501 (tsotnet)
- Infer entity dataframe event timestamp column #1495 (jklegar)
- Allow Feast apply to import files recursively (and add .feastignore) #1482 (tsotnet)
- Bump supported Python version to 3.7 #1504 (tsotnet)
- Fix bug in allowing empty repositories to be applied to a GCS registry #1488 (woop)
- Add a fixed timestamp to quickstart data #1513 (jklegar)
- Make gcp imports optional #1512 (jklegar)
- Fix documentation inconsistency #1510 (jongillham)
- pre-commit command typo fix in CONTRIBUTING.md #1506 (mavysavydav)
- Add optional telemetry to other CLI commands #1505 (jklegar)
- Pass entities information to Provider #1498 (MattDelac)
- Update broken urls in contributing.md #1489 (tedhtchang)
- Python docs formatting fixes #1473 (jklegar)
v0.10.2 (2021-04-21)
v0.10.1 (2021-04-21)
- Improve exception handling, logging, and validation #1477 (woop)
- Remove duped pic #1476 (YikSanChan)
- Fix created timestamp related errors for BigQuery source #1474 (jklegar)
- Remove unnecessary MAVEN_CONFIG #1472 (danielsiwiec)
- Fix CLI entities command & add feature-views command #1471 (tsotnet)
v0.10.0 (2021-04-15)
- Add template generation to Feast CLI for Google Cloud Platform #1460 (woop)
- Add support for retrieving data from sources that don't match providers #1454 (woop)
- Add materialize-incremental CLI command #1442 (tsotnet)
- Add registry refreshing and caching #1431 (woop)
- Add missing FeatureStore methods #1423 (jklegar)
- Allow importing of new FeatureStore classes #1422 (woop)
- Add Feast init command #1414 (oavdeev)
- Add support for parquet ingestion #1410 (oavdeev)
- Add materialize_incremental method #1407 (jklegar)
- Add support for pull query from BigQuery #1403 (jklegar)
- Add support for partial apply to create infra #1402 (oavdeev)
- Add online read API to FeatureStore class #1399 (oavdeev)
- Add historical retrieval for BigQuery and Parquet #1389 (woop)
- Add feature views #1386 (oavdeev)
- Implement materialize method #1379 (jklegar)
- Read and write path for Datastore and SQLite #1376 (oavdeev)
- Download BigQuery table to pyarrow table for python-based ingestion flow #1366 (jklegar)
- FeatureStore, FeatureView, Config, and BigQuerySource classes for updated SDK #1364 (jklegar)
- Add support for new deploy CLI #1362 (oavdeev)
- Fix time zone access with native python datetimes #1469 (tsotnet)
- Small fixes for created_timestamp #1468 (jklegar)
- Fix offline store (tz-naive & field_mapping issues) #1466 (tsotnet)
- Fix get_online_features return schema #1455 (jklegar)
- Fix noisy path warning #1452 (woop)
- Fix flaky test_feature_store fixture #1447 (jklegar)
- Use timestamp check for token refresh #1444 (terryyylim)
- Fix bug in event timestamp removal in local mode #1441 (jklegar)
- Fix timezone issue in materialize & materialize_incremental #1439 (tsotnet)
- Fix materialization_intervals initialization in FeatureView #1438 (tsotnet)
- Fix broken Terraform installation files #1420 (josegpg)
- Fix retry handling for GCP datastore #1416 (oavdeev)
- Make CLI apply in local mode idempotent #1401 (oavdeev)
- Fix a bug in client archive_project method and fix lint in grpc auth #1396 (randxie)
- Change GCP template names to match local template #1470 (jklegar)
- Add logging to materialize #1467 (woop)
- Validate timestamp column present in entity dataframe #1464 (jklegar)
- Fix & clean up Feast CLI commands #1463 (tsotnet)
- Flatten configuration structure for online store #1459 (woop)
- Optimize write rate in Gcp Firestore #1458 (tsotnet)
- Allow apply to take a single Entity or FeatureView #1457 (jklegar)
- Validate datetimes in materialize in correct order #1456 (jklegar)
- Add test to ensure saving and loading from registry is safe #1453 (woop)
- Port telemetry to FeatureStore API #1446 (jklegar)
- Add materialize-incremental cli test #1445 (tsotnet)
- Support join keys in historical feature retrieval #1440 (jklegar)
- Refactor OfflineStore into Provider #1437 (woop)
- Fix multi-entity online retrieval #1435 (woop)
- Fix feature name consistency between online & historical apis #1434 (tsotnet)
- Rename Metadata Store to Registry #1433 (woop)
- Add support for Pydantic as configuration loader #1432 (woop)
- Add entity join key and fix entity references #1429 (jklegar)
- Slightly more sensible test names #1428 (oavdeev)
- Make entity description optional and fix empty table_ref #1425 (jklegar)
- Add Development Guide for Main Feast Repo Feast Components #1424 (mrzzy)
- Fix protobuf building for Python SDK #1418 (woop)
- Add project name generator #1417 (woop)
- [Python SDK][Auth] Refresh token id w/o gcloud cli #1413 (pyalex)
- Firestore ingestion perf improvements + benchmark script #1411 (oavdeev)
- Fixed old urls in documentation #1406 (tedhtchang)
- Upgrade Gcloud setup dependency #1405 (woop)
- Fix documentation building for Feast SDK #1400 (woop)
- Bump jinja2 from 2.11.2 to 2.11.3 in /sdk/python #1398 (dependabot[bot])
- Improve spark-on-k8s-operator documentation #1397 (jklegar)
- Update Python SDK dependencies #1394 (woop)
- Move Python proto package into submodule #1393 (woop)
- Add nicer validation for repo config #1392 (oavdeev)
- Remove Python CI dependencies #1390 (woop)
- Move Project field to Table/View spec #1388 (woop)
- Remove Mirror CI #1387 (woop)
- Add feedback link to install docs page #1375 (jparthasarthy)
- Support multiple features per key in firestore format spec #1374 (oavdeev)
- Fix hashing algorithm in the firestore spec #1373 (oavdeev)
- Support make protos on Mac #1371 (tedhtchang)
- Add support for privileged tests #1369 (woop)
- Remove base tests folder #1368 (woop)
- Add Firestore online format specification #1367 (oavdeev)
- Improve documentation for k8s-spark resource template #1363 (theofpa)
v0.9.1 (2021-01-29)
- Fix kafka download url #1298 (jklegar)
- disable telemetry in docker-compose test and job_service #1297 (jklegar)
v0.9.0 (2021-01-28)
- Enable user to provide spark job template as input for jobservice deployment #1285 (khorshuheng)
- Add feature table name filter to jobs list api #1282 (terryyylim)
- Report observed value for aggregated checks in pre-ingestion feature validation #1278 (pyalex)
- Add docs page for Azure setup #1276 (jklegar)
- Azure example terraform #1274 (jklegar)
- make EMR jar uploader work the same as k8s one #1284 (oavdeev)
- Don't error when azure vars not set #1277 (jklegar)
- Prevent ingestion job config parser from unwanted fieldMapping transformation #1261 (pyalex)
- Features are not being ingested due to max age overflow #1209 (pyalex)
- Feature Table is not being update when only max_age was changed #1208 (pyalex)
- Truncate staging timestamps in entities dataset to ms #1207 (pyalex)
- Bump terraform rds module version #1204 (oavdeev)
- Use date partitioning column in FileSource #1293 (pyalex)
- Add EMR CI/CD entrypoint script #1290 (oavdeev)
- Online serving optimizations #1286 (pyalex)
- Make third party grpc packages recognizable as python module #1283 (khorshuheng)
- Report observed values in feature validation as Gauge #1280 (pyalex)
- Keep same amount of partitions after repartitioning in IngestionJob #1279 (pyalex)
- Add request feature counter metric #1272 (terryyylim)
- Use SEND_INTERRUPT to cancel EMR jobs #1271 (oavdeev)
- Fix historical test flakiness #1270 (jklegar)
- Allow https url for spark ingestion jar #1266 (jklegar)
- Add project name to feature validation metric #1264 (pyalex)
- Use dataproc console url instead of gcs for log uri #1263 (khorshuheng)
- Make nodes priority (for redis cluster) configurable in Serving #1260 (pyalex)
- Enhance job api to return associated feature table and start time #1259 (khorshuheng)
- Reporting metrics from validation UDF #1256 (pyalex)
- Allow use the same timestamp column for both created & even timestamp in Historical Retrieval #1255 (pyalex)
- Apply grpc tracing interceptor on Feast SDK #1243 (khorshuheng)
- Apply grpc tracing interceptor on online serving #1242 (khorshuheng)
- Python UDF in Ingestion being used for feature validation #1234 (pyalex)
- Add spark k8s operator launcher #1225 (oavdeev)
- Add deadletter/read-from-source metrics to batch and stream ingestion #1223 (terryyylim)
- Implement AbstractStagingClient for azure blob storage #1218 (jklegar)
- Configurable materialization destination for view in BigQuerySource #1201 (pyalex)
- Update Feast Core list features method #1176 (terryyylim)
- S3 endpoint configuration #1169 #1172 (mike0sv)
- Increase kafka consumer waiting time in e2e tests #1268 (pyalex)
- E2E tests support for jobservice's control loop #1267 (pyalex)
- Optimize memory footprint for Spark Ingestion Job #1265 (pyalex)
- Fix historical test for azure #1262 (jklegar)
- Change azure https to wasbs and add azure creds to spark #1258 (jklegar)
- Docs, fixes and scripts to run e2e tests in minikube #1254 (oavdeev)
- Fix azure blob storage access in e2e tests #1253 (jklegar)
- Update python version requirements to 3.7 for Dataproc launcher #1251 (pyalex)
- Fix build-ingestion-py-dependencies script #1250 (pyalex)
- Add datadog(statsd) client to python package for IngestionJob #1249 (pyalex)
- Add prow job for azure e2e test #1244 (jklegar)
- Azure e2e test #1241 (jklegar)
- Add Feast Serving histogram metrics #1240 (terryyylim)
- CI should work on python 3.6 #1237 (pyalex)
- Integration test for k8s spark operator support #1236 (oavdeev)
- Add prow config for spark k8s operator integration testing #1235 (oavdeev-tt)
- Upgrading spark to 3.0.1 #1227 (pyalex)
- Support TFRecord as one of the output formats for historical feature retrieval #1222 (khorshuheng)
- Remove stage_dataframe from the launcher interface #1220 (oavdeev)
- Refactor staging client uploader and use it in EMR launcher #1219 (oavdeev)
- Remove unused EMR code #1217 (oavdeev)
- Remove job id from ingested row counter metric #1216 (terryyylim)
- Quickstart link fixed #1213 (szczeles)
- Delete v1 concepts #1194 (terryyylim)
- Dont write defaults to config #1188 (mike0sv)
- Refactor tests which utilizes feature sets #1186 (terryyylim)
- Refactor configurable options and add sphinx docs #1174 (terryyylim)
- Remove unnecessary Google Auth dependency #1170 (woop)
v0.8.2 (2020-12-01)
- Fix tag order for release workflow #1205 (terryyylim)
- Fix Feature Table not updated on new feature addition #1197 (khorshuheng)
- Suppress kafka logs in Ingestion Job #1206 (pyalex)
- Add project name to metrics labels in Ingestion Job #1202 (pyalex)
v0.8.1 (2020-11-24)
- Expires Redis Keys based on Feature Table Max Age #1161 (khorshuheng)
- Jobservice control loop (based on #1140) #1156 (oavdeev)
- 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)
- 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)
v0.8.0 (2020-11-10)
- 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)
- 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)
- 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)
- Disable statsd by default for spark #1089 (oavdeev-tt)
- Restructure tutorial subfolder #1088 (terryyylim)
- Remove load test from github action #1087 (khorshuheng)
- Add more explanations to the demo notebook, use local file system instead of GCS by default #1086 (khorshuheng)
- Tutorial (Full demo) in Jupyter #1079 (pyalex)
- Add unit test for historical retrieval with panda dataframe #1073 (khorshuheng)
- Remove outdated tutorials #1069 (terryyylim)
- Add method to add feature to Feature table #1068 (terryyylim)
- Historical feature retrieval e2e test #1067 (khorshuheng)
- Use RedisKeyV2 as key serializer and java murmur implementation in Redis Sink #1064 (pyalex)
- Use existing staging client for dataproc staging #1063 (khorshuheng)
- Cleanup CLI and Python dependencies #1062 (terryyylim)
- Refactor Spark Job launcher API #1060 (pyalex)
- Create empty Job Service #1059 (tsotnet)
- Replace Data Source specific format options with DataFormat message #1049 (mrzzy)
- Add created_timestamp_column to DataSource. Rename timestamp_column -> event_timestamp_column #1048 (pyalex)
- Cleanup e2e and docker-compose tests #1035 (terryyylim)
- Add svc account volume mount to prow jobs #1034 (terryyylim)
- Update prow config and makefile #1024 (terryyylim)
- Refactor Python SDK to remove v1 concepts #1023 (terryyylim)
v0.7.1 (2020-10-07)
v0.7.0 (2020-09-09)
- 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)
- 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)
- 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)
- 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)
v0.6.2 (2020-08-02)
- 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)
- 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)
v0.6.1 (2020-07-17)
- Improve parallelization in Redis Sink #866 (pyalex)
- BQ sink produces sample of successful inserts #875 (pyalex)
- Add IngestionId & EventTimestamp to FeatureRowBatch to calculate lag metric correctly #874 (pyalex)
- Prevent race condition in BQ sink jobId generation #877 (pyalex)
v0.6.0 (2020-07-13)
- Allow users compute statistics over retrieved batch datasets #799 (zhilingc)
- Replace Keto Authorization with External HTTP Authorization #864 (woop)
- Add disk size as Dataflow Job Configuration #841 (khorshuheng)
- JobCoordinator may be turned off by configuration #829 (pyalex)
- Allow ingestion job grouping/consolidation to be configurable #825 (pyalex)
- Add subscriptions blacklist functionality #813 (terryyylim)
- Add Common module #801 (terryyylim)
- FeatureSets are delivered to Ingestion Job through Kafka #792 (pyalex)
- Add YAML export to Python SDK #782 (woop)
- Add support to Python SDK for staging files on Amazon S3 #769 (jmelinav)
- Add support for version method in Feast SDK and Core #759 (woop)
- Upgrade ingestion to allow for in-flight updates to feature sets for sinks #757 (pyalex)
- Add Discovery API for listing features #797 (terryyylim)
- Authentication and authorization support #793 (dr3s)
- Add API for listing feature sets using labels #785 (terryyylim)
- Bypass authentication for metric endpoints #862 (woop)
- Python SDK listing of ingestion job fails for featureset reference filter #861 (terryyylim)
- Fix BigQuerySink successful output to produce only once #858 (pyalex)
- Re-applying of featuresets does not update label changes #857 (terryyylim)
- BQ Sink is failing when Feature consists of only null values #853 (pyalex)
- Fix FeatureSetJobStatus removal #848 (pyalex)
- Fix: JobCoordinator tries to create duplicate FeatureSetJobStatuses #847 (pyalex)
- Replace IngestionJob when store was updated #846 (pyalex)
- Don't send unrecognized featureSets to deadletter in IngestionJob #845 (pyalex)
- Deallocate featureSet from job when source changed #844 (pyalex)
- Fix CPU count selection in Python SDK for non-Unix #839 (pyalex)
- Write metrics for store allocated rows only #830 (zhilingc)
- Prevent reserved fields from being registered #819 (terryyylim)
- Fix Optional#get() and string comparison bugs in JobService #804 (ches)
- Publish helm chart script should not modify the chart content #779 (khorshuheng)
- Fix pipeline options toArgs() returning empty list #765 (zhilingc)
- Remove usage of parallel stream for feature value map generation #751 (khorshuheng)
- Remove Spring Boot from auth tests #859 (woop)
- Authentication and Authorization into feast-auth module. #856 (jmelinav)
- Keep StoreProto inside JobStore to decouple JobCoordination from SpecService internals #852 (pyalex)
- Enable isort for Python SDK #843 (woop)
- Replace batch with historical for Python SDK retrieval #842 (woop)
- Upgrade pandas to 1.0.x #840 (duongnt)
- Ensure store subscriptions are migrated to allow exclusion schema #838 (pyalex)
- Remove project reference from feature set id in stats example notebook #836 (zhilingc)
- Enable linting and formatting for e2e tests #832 (woop)
- IngestionJob is being gracefully replaced to minimize downtime #828 (pyalex)
- Add native types for Python SDK online retrieval #826 (terryyylim)
- Send acknowledgment on Spec Update only after sinks are ready #822 (pyalex)
- Remove Duplicated Strip Projects Code from SDKs #820 (mrzzy)
- Consolidate ingestion jobs to one job per source #817 (pyalex)
- Add missing key count metric #816 (terryyylim)
- Create table in BigQuery if doesn't exists when new FeatureSetSpec arrived to IngestionJob #815 (pyalex)
- Refactor common module's feature string reference method #814 (terryyylim)
- Fix typo in documentation #811 (ravisuhag)
- Database Schema migration for RELEASE 0.6 with Flyway #810 (pyalex)
- Update helm installation docs - Fix broken link #808 (davidheryanto)
- Add authentication support for end-to-end tests #807 (jmelinav)
- Use latest instead of dev as the default image tag in helm charts #806 (duongnt)
- Build Feast Jupyter image and clean up examples #803 (woop)
- Move communication with IngestionJob to JobCoordinator #800 (pyalex)
- Compression of FeatureRows collection in memory #798 (pyalex)
- Add Kubernetes Pod labels to Core and Serving. #795 (ashwinath)
- Add v0.3.8 changelog #788 (ches)
- Update change log due to release 0.5.1 #783 (khorshuheng)
- Refactor end-to-end tests to reduce duplication #758 (woop)
- Recompile golang protos to include new FeatureSetStatus #755 (zhilingc)
- Merge Redis cluster connector with Redis connector #752 (pyalex)
0.5.1 (2020-06-06)
- Add support for version method in Feast SDK and Core #759 (woop)
- Refactor runner configuration, add labels to dataflow options #718 (zhilingc)
- 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)
- Increase Jaeger Tracing coverage #719 (terryyylim)
- Recompile golang protos to include new FeatureSetStatus #755 (zhilingc)
- Merge Redis cluster connector with Redis connector #752 (pyalex)
- Remove unused Hibernate dep from Serving #721 (ches)
v0.5.0 (2020-05-19)
- 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)
See Feast 0.5 Release Issue for more details.
- 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)
- 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)
- 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)
v0.4.7 (2020-03-17)
- Add log4j-web jar to core and serving. #498 (Yanson)
- Clear all the futures when sync is called. #501 (lavkesh)
- Encode feature row before storing in Redis #530 (khorshuheng)
- Remove transaction when listing projects #522 (davidheryanto)
- Remove unused ingestion deps #520 (ches)
- Parameterize end to end test scripts. #433 (Yanson)
- Replacing Jedis With Lettuce in ingestion and serving #485 (lavkesh)
v0.4.6 (2020-02-26)
- Rename metric name for request latency in feast serving #488 (davidheryanto)
- Allow use of secure gRPC in Feast Python client #459 (Yanson)
- Extend WriteMetricsTransform in Ingestion to write feature value stats to StatsD #486 (davidheryanto)
- Remove transaction from Ingestion #480 (imjuanleonard)
- Fix fastavro version used in Feast to avoid Timestamp delta error #490 (davidheryanto)
- Fail Spotless formatting check before tests execute #487 (ches)
- Reduce refresh rate of specification refresh in Serving to 10 seconds #481 (woop)
v0.4.5 (2020-02-14)
- Use bzip2 compressed feature set json as pipeline option #466 (khorshuheng)
- Make redis key creation more determinisitic #471 (zhilingc)
- Helm Chart Upgrades #458 (Yanson)
- Exclude version from grouping #441 (khorshuheng)
- Use concrete class for AvroCoder compatibility #465 (zhilingc)
- Fix typo in split string length check #464 (zhilingc)
- Update README.md and remove versions from Helm Charts #457 (woop)
- Deduplicate example notebooks #456 (woop)
- Allow users not to set max age for batch retrieval #446 (zhilingc)
v0.4.4 (2020-01-28)
- Change RedisBackedJobService to use a connection pool #439 (zhilingc)
- Update GKE installation and chart values to work with 0.4.3 #434 (lgvital)
- Remove "resource" concept and the need to specify a kind in feature sets #432 (woop)
- Add retry options to BigQuery #431 (Yanson)
- Fix logging #430 (Yanson)
- Add documentation for bigquery batch retrieval #428 (zhilingc)
- Publish datatypes/java along with sdk/java #426 (ches)
- Update basic Feast example to Feast 0.4 #424 (woop)
- Introduce datatypes/java module for proto generation #391 (ches)
v0.4.3 (2020-01-08)
- Bugfix for redis ingestion retries throwing NullPointerException on remote runners #417 (khorshuheng)
v0.4.2 (2020-01-07)
- Missing argument in error string in ValidateFeatureRowDoFn #401
- Define maven revision property when packaging jars in Dockerfile so the images are built successfully #410 (davidheryanto)
- Deduplicate rows in subquery #409 (zhilingc)
- Filter out extra fields, deduplicate fields in ingestion #404 (zhilingc)
- Automatic documentation generation for gRPC API #403 (woop)
- Update feast core default values to include hibernate merge strategy #400 (zhilingc)
- Move cli into feast package #398 (zhilingc)
- Use Nexus staging plugin for deployment #394 (khorshuheng)
- Handle retry for redis io flow #274 (khorshuheng)
v0.4.1 (2019-12-30)
v0.4.0 (2019-12-28)
- Edit description in feature specification to also reflect in BigQuery schema description. #239
- Allow for disabling of metrics pushing #57
- Java SDK release script #406 (davidheryanto)
- Use fixed 'dev' revision for test-e2e-batch #395 (davidheryanto)
- Project Namespacing #393 (woop)
- <docs>(concepts): change data types to upper case because lower case … #389 (david30907d)
- Remove alpha v1 from java package name #387 (khorshuheng)
- Minor bug fixes for Python SDK #383 (voonhous)
- Allow user to override job options #377 (khorshuheng)
- Add documentation to default values.yaml in Feast chart #376 (davidheryanto)
- Add support for file paths for providing entity rows during batch retrieval #375 (voonhous)
- Update sync helm chart script to ensure requirements.lock in in sync with requirements.yaml #373 (davidheryanto)
- Catch errors thrown by BQ during entity table loading #371 (zhilingc)
- Async job management #361 (zhilingc)
- Infer schema of PyArrow table directly #355 (voonhous)
- Add readiness checks for Feast services in end to end test #337 (davidheryanto)
- Create CHANGELOG.md #321 (woop)
v0.3.8 (2020-06-10)
v0.3.7 (2020-05-01)
- Moved end-to-end test scripts from .prow to infra #657 (khorshuheng)
- Backported #566 & #647 to v0.3 #654 (ches)
v0.3.6 (2020-01-03)
v0.3.5 (2019-12-26)
- Always set destination table in BigQuery query config in Feast Batch Serving so it can handle large results #392 (davidheryanto)
v0.3.4 (2019-12-23)
v0.3.3 (2019-12-18)
- Added Docker Compose for Feast #272
- Added ability to check import job status and cancel job through Python SDK #194
- Added basic customer transactions example #354 (woop)
- Added Prow jobs to automate the release of Docker images and Python SDK #369 (davidheryanto)
- Fixed installation link in README.md #368 (Jeffwan)
- Fixed Java SDK tests not actually running (missing dependencies) #366 (woop)
- Added more batch retrieval tests #357 (zhilingc)
- Python SDK and Feast Core Bug Fixes #353 (woop)
- Updated buildFeatureSets method in Golang SDK #351 (davidheryanto)
- Python SDK cleanup #348 (woop)
- Broke up queries for point in time correctness joins #347 (zhilingc)
- Exports gRPC call metrics and Feast resource metrics in Core #345 (davidheryanto)
- Fixed broken Google Group link on Community page #343 (ches)
- Ensured ImportJobTest is not flaky by checking WriteToStore metric and requesting adequate resources for testing #332 (davidheryanto)
- Added docker-compose file with Jupyter notebook #328 (khorshuheng)
- Added minimal implementation of ingesting Parquet and CSV files #327 (voonhous)
v0.3.2 (2019-11-29)
- Fixed incorrect BigQuery schema creation from FeatureSetSpec #340 (davidheryanto)
- Filtered out feature sets that dont share the same source #339 (zhilingc)
- Changed latency calculation method to not use Timer #338 (zhilingc)
- Moved Prometheus annotations to pod template for serving #336 (zhilingc)
- Removed metrics windowing, cleaned up step names for metrics writing #334 (zhilingc)
- Set BigQuery table time partition inside get table function #333 (zhilingc)
- Added unit test in Redis to return values with no max age set #329 (smadarasmi)
- Consolidated jobs into single steps instead of branching out #326 (zhilingc)
- Pinned Python SDK to minor versions for dependencies #322 (woop)
- Added Auto format to Google style with Spotless #317 (ches)
v0.3.1 (2019-11-25)
- Added Prometheus metrics to serving #316 (zhilingc)
- Changed default job metrics sink to Statsd #315 (zhilingc)
- Fixed module import error in Feast CLI #314 (davidheryanto)
v0.3.0 (2019-11-19)
Summary:
- Introduced "Feature Sets" as a concept with a new Feast Core API, Feast Serving API
- Upgraded Python SDK to support new Feast API. Allows for management of Feast as a library or through the command line.
- Implemented a Golang SDK and Java SDK to support the new Feast Core and Feast Serving APIs.
- Added support for multi-feature set retrieval and joins.
- Added point-in-time correct retrieval for both batch and online serving.
- Added support for an external source in Kafka.
- Added job management to Feast Core to manage ingestion/population jobs to remote Feast deployments
- Added metric support through Prometheus
- Regenerate go protos #313 (zhilingc)
- Bump chart version to 0.3.0 #311 (zhilingc)
- Refactored Core API: ListFeatureSets, ListStore, and GetFeatureSet #309 (woop)
- Use Maven's --also-make by default #308 (ches)
- Python SDK Ingestion and schema inference updates #307 (woop)
- Batch ingestion fix #299 (zhilingc)
- Update values-demo.yaml to make Minikube installation simpler #298 (woop)
- Fix bug in core not setting default Kafka source #297 (woop)
- Replace Prometheus logging in ingestion with StatsD logging #293 (woop)
- Feast Core: Stage files manually when launching Dataflow jobs #291 (davidheryanto)
- Database tweaks #290 (smadarasmi)
- Feast Helm charts and build script #289 (davidheryanto)
- Fix max_age changes not updating specs and add TQDM silencing flag #292 (woop)
- Ingestion fixes #286 (zhilingc)
- Consolidate jobs #279 (zhilingc)
- Import Spring Boot's dependency BOM, fix spring-boot:run at parent project level #276 (ches)
- Feast 0.3 Continuous Integration (CI) Update #271 (davidheryanto)
- Add batch feature retrieval to Python SDK #268 (woop)
- Set Maven build requirements and some project POM metadata #267 (ches)
- Python SDK enhancements #264 (woop)
- Use a symlink for Java SDK's protos #263 (ches)
- Clean up the Maven build #262 (ches)
- Add golang SDK #261 (zhilingc)
- Move storage configuration to serving #254 (zhilingc)
- Serving API changes for 0.3 #253 (zhilingc)
v0.1.8 (2019-10-30)
- Feast cli config file should be settable by an env var #149
- Helm chart for deploying feast using Flink as runner #64
- Get ingestion metrics when running on Flink runner #63
- Move source types into their own package and discover them using java.util.ServiceLoader #61
- Change config to yaml #51
- Ability to pass runner option during ingestion job submission #50
- Fix Print Method in Feast CLI #211
- Dataflow monitoring by core is failing with incorrect job id #153
- Feast core crashes without logger set #150
- Remove redis transaction #280 (pradithya)
- Fix tracing to continue from existing trace created by grpc client #245 (pradithya)
v0.1.2 (2019-08-23)
- Batch Import, feature with datetime format issue #203
- Serving not correctly reporting readiness check if there is no activity #190
- Serving stop periodically reloading feature specification after a while #188
- Add
romanwozniak
to prow owners config #216 (romanwozniak) - Implement filter for create dataset api #215 (pradithya)
- expand raw column to accomodate more features ingested in one go #213 (budi)
- update feast installation docs #210 (budi)
- Add Prow job for unit testing Python SDK #209 (davidheryanto)
- fix create_dataset #208 (budi)
- Update Feast installation doc #207 (davidheryanto)
- Fix unit test cli in prow script not returning correct exit code #206 (davidheryanto)
- Fix pytests and make TS conversion conditional #205 (zhilingc)
- Use full prow build id as dataset name during test #200 (davidheryanto)
- Add Feast CLI / python SDK documentation #199 (romanwozniak)
- Update library version to fix security vulnerabilities in dependencies #198 (davidheryanto)
- Update Prow configuration for Feast CI #197 (davidheryanto)
- [budi] update python sdk quickstart #196 (budi)
- Readiness probe #191 (pradithya)
- Fix periodic feature spec reload #189 (pradithya)
- Fixed a typo in environment variable in installation #187 (gauravkumar37)
- Revert "Update Quickstart" #185 (zhilingc)
- Update Quickstart #184 (pradithya)
- Continuous integration and deployment (CI/CD) update #183 (davidheryanto)
- Remove feature specs being able to declare their serving or warehouse stores #159 (tims)
v0.1.1 (2019-04-18)
- Fix BigQuery query template to retrieve training data #182 (davidheryanto)
v0.1.0 (2019-04-09)
- Removal of storing historical value of feature in serving storage #53
- Remove feature "granularity" and relegate to metadata #17
- Add ability to name an import job #167
- Ingestion retrying an invalid FeatureRow endlessly #163
- Ability to associate data ingested in Warehouse store to its ingestion job #145
- Missing (Fixing) unit test for FeatureRowKafkaIO #132
- Catch all kind of exception to avoid retrying #171 (pradithya)
- Integration test #170 (zhilingc)
- Proto error #169 (pradithya)
- Add --name flag to submit job #168 (pradithya)
- Prevent throwing RuntimeException when invalid proto is received #166 (pradithya)
- Add davidheryanto to OWNER file #165 (pradithya)
- Check validity of event timestamp in ValidateFeatureRowDoFn #164 (pradithya)
- Remove granularity #162 (pradithya)
- Better Kafka test #160 (tims)
- Simplify and document CLI building steps #158 (thirteen37)
- Fix link typo in README.md #156 (pradithya)
- Add Feast admin quickstart guide #155 (thirteen37)
- Pass all specs to ingestion by file #154 (tims)
- Preload spec in serving cache #152 (pradithya)
- Add job identifier to FeatureRow #147 (mansiib)
- Fix unit tests #146 (mansiib)
- Add thirteen37 to OWNERS #144 (thirteen37)
- Fix import spec created from Importer.from_csv #143 (pradithya)
- Regenerate go #142 (zhilingc)
- Flat JSON for pubsub and text files #141 (tims)
- Add wait flag for jobs, fix go proto path for dataset service #138 (zhilingc)
- Fix Python SDK importer's ability to apply features #135 (woop)
- Refactor stores #110 (tims)
- Coalesce rows #89 (tims)
- Remove historical feature in serving store #87 (pradithya)
v0.0.2 (2019-03-11)
- Preload Feast's spec in serving cache #151
- Feast csv data upload job #137
- Blocking call to start feast ingestion job #136
- Python SDK fails to apply feature when submitting job #134
- Default dump format should be changed for Python SDK #133
- Listing resources and finding out system state #131
- Reorganise ingestion store classes to match architecture #109
v0.0.1 (2019-02-11)
- Spring boot CLI logs show up as JSON #104
- Allow for registering feature that doesn't have warehouse store #5
- Error when submitting large import spec #125
- Ingestion is not ignoring unknown feature in streaming source #99
- Vulnerability in dependency (core - jackson-databind ) #92
- TF file for cloud build trigger broken #72
- Job Execution Failure with NullPointerException #46
- Runtime Dependency Error After Upgrade to Beam 2.9.0 #44
- [FlinkRunner] Core should not follow remote flink runner job to completion #21
- Go packages in protos use incorrect repo #16
- Disable test during docker image creation #129 (pradithya)
- Repackage helm chart #127 (pradithya)
- Increase the column size for storing raw import spec #126 (pradithya)
- Update Helm Charts (Redis, Logging) #123 (woop)
- Added LOG_TYPE environmental variable #120 (woop)
- Fix missing Redis write #119 (pradithya)
- add logging when error on request feature #117 (pradithya)
- run yarn run build during generate-resource #115 (pradithya)
- Add loadBalancerSourceRanges option for both serving and core #114 (zhilingc)
- Build master #112 (pradithya)
- Cleanup warning while building proto files #108 (pradithya)
- Embed ui build & packaging into core's build #106 (pradithya)
- Add build badge to README #103 (woop)
- Ignore features in FeatureRow if it's not requested in import spec #101 (pradithya)
- Add override for serving service static ip #100 (zhilingc)
- Fix go test #97 (zhilingc)
- add missing copyright headers and fix test fail due to previous merge #95 (tims)
- Allow submission of kafka jobs #94 (zhilingc)
- upgrade jackson databind for security vulnerability #93 (tims)
- Version revert #91 (zhilingc)
- Fix validating feature row when the associated feature spec has no warehouse store #90 (pradithya)
- Add get command #85 (zhilingc)
- Avoid error thrown when no storage for warehouse/serving is registered #83 (pradithya)
- Fix jackson dependency issue #82 (zhilingc)
- Allow registration of feature without warehouse store #80 (pradithya)
- Remove branch from cloud build trigger #79 (woop)
- move read transforms into "source" package as FeatureSources #74 (tims)
- Fix tag regex in tf file #73 (zhilingc)
- Update charts #71 (mansiib)
- Deduplicate storage ids before we fetch them #68 (tims)
- Check the size of result against deduplicated request #67 (pradithya)
- Add ability to submit ingestion job using Flink #62 (pradithya)
- Fix vulnerabilities for webpack-dev #59 (budi)
- Build push #56 (zhilingc)
- Fix github vulnerability issue with webpack #54 (budi)
- Only lookup storage specs that we actually need #52 (tims)
- Link Python SDK RFC to PR and Issue #49 (woop)
- Python SDK #47 (zhilingc)
- Update com.google.httpclient to be same as Beam's dependency #45 (pradithya)
- Bump Beam SDK to 2.9.0 #43 (pradithya)
- Add fix for tests failing in docker image #40 (zhilingc)
- Change error store to be part of configuration instead #39 (zhilingc)
- Fix location of Prow's Tide configuration #35 (woop)
- Add testing folder for deploying test infrastructure and running tests #34 (woop)
- skeleton contributing guide #33 (tims)
- allow empty string to select a NoOp write transform #30 (tims)
- Remove packaging ingestion as separate profile (fix #28) #29 (pradithya)
- Change gopath to point to feast-dev repo #26 (zhilingc)
- Fixes #31 - errors during kafka deserializer (passing) test execution #25 (baskaranz)
- Kafka IO fixes #23 (tims)
- KafkaIO implementation for feast #19 (baskaranz)
- Return same type string for warehouse and serving NoOp stores #18 (tims)
- #12: prefetch specs and validate on job expansion #15 (tims)
- Added RFC for Feast Python SDK #14 (woop)
- Add more validation in feature spec registration #11 (pradithya)
- Added rfcs/ folder with readme and template #10 (woop)
- Expose ui service rpc #9 (pradithya)
- Add Feast overview to README #8 (woop)
- Directory structure changes #7 (zhilingc)
- Change register to apply #4 (zhilingc)
- Empty response handling in serving api #3 (pradithya)
- Proto file fixes #1 (pradithya)