Skip to content

v0.0.4

Compare
Choose a tag to compare
@github-actions github-actions released this 07 Jan 08:15
· 715 commits to main since this release
c008737

Changelog

  • 5220264 Add 1 git-crypt collaborator
  • 26862c1 Fix typo: papy -> pypa
  • 95ef33b Revert "chore: remove dead code"
  • d8c1d9f cleanup(database): remove dead code
  • 65ae7a2 cleanup(featctl): delete unused package
  • 67a90e8 cleanup(featctl/pkg): clean up list_revision pacakage
  • 3b1f9a8 cleanup(featctl/pkg): delete unused package
  • 3545d6f cleanup(internal/database): delete method UpdateFeatureGroupRevision
  • 0ccaf7b cleanup(internal/database): deprecate unused methods
  • 05d1c83 cleanup(pkg/database): delete pkg/database/ package We have migrated database to internal/database, deprecate pkg/database in this commit.
  • 0150d0d cleanup: delete deadcode
  • 9b3492b cleanup: get historical-feature doesn't neeed group
  • adbf3a8 cleanup: remove dead code
  • 95efb4d cleanup: remove materialize remained
  • 0794a35 cleanup: reorg mysql online files
  • 884059d cleanup: reorg pg online files
  • 13baaa4 cleanup: snowflake.Open
  • 68d7621 cleanup: sync doesn't need flags
  • 98df480 database: add db error identifying
  • fb35b39 doc(featctl): uniform to db-value-type
  • 1429f4c doc(pkg/oomstore): add use example for Export
  • 962962a doc: add comments for all oomstore APIs
  • daf1414 doc: more detailed --help
  • 5989755 doc: re-title
  • 72a4a58 feaet(database/offline): implement TypeTag for snowflake
  • 5466585 feaet(internal/database): add new func WithTransaction The new func is different from the receiver method WithTransaction, which takes in sqlx.DB as a parameter.
  • 497e3b6 feat(ci): add release ci
  • fc7349e feat(databas): modify feature methods to adapt with mysql
  • 20c4498 feat(database): add BigQuery to DBValueType
  • 3a5cb84 feat(database): add Public before tableName for snowflake
  • af8087f feat(database): add pg driver
  • d3a5236 feat(database): add sqlite config
  • ae9b81f feat(database): add two helper functions to dbutil
  • 154c245 feat(database): define DBOpt, add method ExecContext and BuildInsertQuery
  • 83ba71e feat(database): deserialize export result
  • 7410963 feat(database): remove died code
  • 6042179 feat(database): remove useless code
  • 390ce65 feat(database): remove useless code
  • ad305e8 feat(database/dbutil): add BigQuery to createSchemaFunc
  • 830c610 feat(database/dbutil): modify method ValueType
  • 0821832 feat(database/metadata): add CdcTable to CreateRevision
  • 47cffdd feat(database/metadata): add Tx for SQLite
  • 534b7e7 feat(database/metadata): add argument entityIDs for ListEntity
  • 2b734de feat(database/metadata): add argument groupIDs for ListGroup
  • 6a821ab feat(database/metadata): add db methods for mysql
  • 1a41c77 feat(database/metadata): add field full_name to table schema
  • 698dc15 feat(database/metadata): add full_name in createFeature
  • 8f19f9d feat(database/metadata): add helper ListMetaData
  • fc70012 feat(database/metadata): add metadata store methods
  • f667d76 feat(database/metadata): add offline streaming table name
  • 20430af feat(database/metadata): add unit test for GetFeature
  • 89a1d5a feat(database/metadata): add unit test for GetFeatureByName
  • 80e1ea6 feat(database/metadata): add unit test for ListEntity
  • 9d0c88b feat(database/metadata): copy feature methods to sqlutil except createFeature
  • 16b6bbb feat(database/metadata): copy group methods to sqlutil
  • c081faf feat(database/metadata): copy revision methods to sqlutil
  • 731510a feat(database/metadata): create mysql database
  • 35530ea feat(database/metadata): define metadata DB for sqlite
  • 224a488 feat(database/metadata): define mysql schema
  • 33792ee feat(database/metadata): enrich entity for listGroup and getGroup
  • 06cc6a5 feat(database/metadata): impl GetEntity and GetEntityByName
  • d758e45 feat(database/metadata): impl GetGroup and GetGroupByName
  • fe39b73 feat(database/metadata): implement SQLite db methods
  • 91de8df feat(database/metadata): implement createEntity for sqlite
  • 6319d37 feat(database/metadata): implement createFeature for mysql
  • 0c21c28 feat(database/metadata): implement createGroup for mysql
  • 3de683d feat(database/metadata): implement createRevision for SQLite
  • 6d65f7e feat(database/metadata): implement createRevision for mysql
  • f494cf3 feat(database/metadata): implement db-based method GetFeature
  • 7102c86 feat(database/metadata): implement db-based method GetFeatureByName
  • 8b5fc54 feat(database/metadata): implement db-based method ListEntity
  • ce9c3a1 feat(database/metadata): implement db-based method ListFeature
  • fc88bfd feat(database/metadata): implement db-based method ListGroup
  • 13de238 feat(database/metadata): implement db-based revision methods
  • 3cfd6e0 feat(database/metadata): implement entity related methods
  • c6ea401 feat(database/metadata): implement mysql group methods
  • e79aff6 feat(database/metadata): implement mysql method createEntity
  • ac8c8fa feat(database/metadata): implement mysql methods for feature
  • 2ad1ace feat(database/metadata): implement revision methods for mysql
  • 2174d37 feat(database/metadata): implement tx for mysql
  • cb393cc feat(database/metadata): move entity methods to sqlutil
  • 31521b8 feat(database/metadata): regenerate metadata mock methods
  • 9e6e483 feat(database/metadata): regenerate metadata mock methods
  • 5afcab9 feat(database/metadata): use ListMetaData for mysql and postgres
  • 8f25fd2 feat(database/metadata):define schema and implement CreateDatabase
  • a6558b8 feat(database/metadata):implement method createGroup for SQLite
  • c535807 feat(database/offline): add CDC_JOIN_QUERY and build functions
  • 407abe4 feat(database/offline): add bigquery as offline store
  • c12ae6d feat(database/offline): add datasetID to bigquery.DB and its option
  • 8f4e711 feat(database/offline): add helper DeserializeByValueType
  • 39706e3 feat(database/offline): add helper DoJoin
  • c1b96f1 feat(database/offline): add helper functions for method Join
  • 87fad50 feat(database/offline): copy method Export to sqlutil
  • 6c11687 feat(database/offline): copy offline Join method to sqlutil
  • 02ff62b feat(database/offline): copy offline method Import to sqlutil
  • 0596edc feat(database/offline): generate new mock method
  • 9f7911e feat(database/offline): handle streaming features in Join
  • cc2b794 feat(database/offline): impl TableSchema for mysql
  • e38d37f feat(database/offline): impl TableSchema for sqlite
  • 648ff4b feat(database/offline): implement Join for snowflake
  • c20be9f feat(database/offline): implement TypeTag for bigquery
  • 0b45956 feat(database/offline): implement TypeTag for mysql
  • 64ea71e feat(database/offline): implement method Join for bigquery
  • ea9ecdd feat(database/offline): implement method TableSchema for bigquery
  • aa58de0 feat(database/offline): implement offline method Export
  • b4220db feat(database/offline): implement offline method Import
  • eaf4448 feat(database/offline): implement offline method Snapshot
  • d3c78be feat(database/offline): implement offline store method Snapshot
  • 65b5402 feat(database/offline): make Export adapt with mysql db
  • db0b87c feat(database/offline): make Import adapt with mysql db
  • f65c634 feat(database/offline): make method Join adapt with mysql db
  • 654898c feat(database/offline): open offline mysql database
  • 94c3118 feat(database/offline): use milliseconds for revision
  • cdcf401 feat(database/offline): use sqlutil.Join for mysql db
  • d9df6ed feat(database/online): add helper deserializeByTag for sqlutil
  • ce64a4c feat(database/online): fix cassandra MultiGet method
  • 3211f04 feat(database/online): fix cassandra OnlineGet
  • b7d1c95 feat(database/online): implement method Get for dynamoDB
  • 1977465 feat(database/online): implement method Import for dynamoDB
  • 2f6f597 feat(database/online): implement method Purge for dynamoDB
  • f0d8596 feat(dbuti/dbtype): add mysql/postgres/snoflake/dynamodb
  • c1997ad feat(dbutil): add BuildSchema schama
  • 1a6ed98 feat(dbutil): add func Placeholders
  • 5ae5a16 feat(dbutil): add type.BIGQUERY to quote helpers
  • 62c5da6 feat(errdefs): Add error mechanism for oomstore
  • af409a7 feat(errdefs): add invalid attribute error
  • 37839bd feat(featctl): import supports absolute path
  • 2033be4 feat(featctl): add --limit option to export
  • ea6e3ae feat(featctl): add mustOpenOneStore
  • 599ec97 feat(featctl): add featctl command describe group
  • 60566d7 feat(featctl): implement featctl register entity (#143)
  • d2d3040 feat(featctl): implement featctl register group
  • f609bef feat(featctl): implement apply entity
  • 1291ce4 feat(featctl): implement apply feature
  • 1827965 feat(featctl): implement apply feature group
  • fc0fbf2 feat(featctl): implement cmd list revision
  • 1b79324 feat(featctl): make argument group as optional for list feature
  • 12c3155 feat(featctl): modify README for list feature
  • fe7ae8d feat(featctl): udpate docs
  • ba93c38 feat(featctl): update docs
  • 80dc5d2 feat(featctl): update docs
  • ae0b573 feat(featctl): update docs
  • 02ac753 feat(featctl): update docs
  • ef59c71 feat(featctl): use rich_feature_group for command list group
  • 709bb22 feat(featctl/cmd): add command list entity
  • bb28c90 feat(featctl/cmd): add command list feature
  • 92c4e60 feat(featctl/cmd): add command update group
  • 7495c67 feat(featctl/cmd): add featctl command describe entity
  • 1ebfa96 feat(featctl/cmd): add featctl command join
  • a92629c feat(featctl/cmd): add featctl command materialize
  • acdd82f feat(featctl/cmd): add featctl command update entity
  • 9dc35f4 feat(featctl/cmd): add featctl subcommand join historical features
  • 91808f7 feat(featctl/cmd): add format for command get historical feature
  • 353bf58 feat(featctl/cmd): add format for command get online feature
  • b6417ad feat(featctl/cmd): add format for command join historical feature
  • 39c56af feat(featctl/cmd): add format for command list entity
  • 57d0ff8 feat(featctl/cmd): add format for command list feature
  • 84162f1 feat(featctl/cmd): add format for command list group
  • 65cee32 feat(featctl/cmd): add format for command list revision
  • 34cd20c feat(featctl/cmd): add helper joinHistoricalFeatures
  • 1224a63 feat(featctl/cmd): add parameter revision for command import
  • 800128f feat(featctl/makefile): add release command
  • b304aa2 feat(featctl/makefile): optimise the make test command
  • c4492a3 feat(featctl/pkg): add method List, list all existing features
  • 19ba204 feat(featctl/pkg): move BuildSqlxDBOption to utils package
  • 09ef74c feat(featctl/readme): add list feature to README_CN
  • 39e5770 feat(go.mod): add gomock dependency
  • 73ddd20 feat(go.mod): add mysql dependency
  • 9b4b003 feat(go.mod): add redis dependency
  • e265775 feat(go.mod): add tablewrite dependency
  • ee4be44 feat(go.mod): install sqlx
  • ecc874b feat(informer): sync latest changes
  • dfd0773 feat(internal): add db method db.UpdateFeatureGroup
  • bd9ffb4 feat(internal/database): add InsertRecordsToTableWithTransaction
  • 3f502fe feat(internal/database): add ListRichFeature, modify ListFeature
  • df3e921 feat(internal/database): add OpenDB methods in online store
  • 40f9bac feat(internal/database): add Revision for db method Import
  • 94c390e feat(internal/database): add column anchored to feature_group_revision
  • adf2cb1 feat(internal/database): add db func GetPointInTimeFeatureValues
  • bbbfa66 feat(internal/database): add db func for creating temporary tables
  • c785895 feat(internal/database): add db method CreateFeature
  • e807558 feat(internal/database): add db method GetFeature
  • 2b8d808 feat(internal/database): add db method GetFeatureValues
  • 877651c feat(internal/database): add db method GetGroup
  • bfebe22 feat(internal/database): add db method GetRichFeature(s)
  • bbdefea feat(internal/database): add db method ListFeature
  • 78b03c3 feat(internal/database): add db method UpdateEntity
  • 6cb7ba9 feat(internal/database): add db method UpdateFeature
  • 8d68170 feat(internal/database): add db method UpdateFeatureGroupRevision
  • 2e26e91 feat(internal/database): add helper func BuildConditions
  • ce68154 feat(internal/database): add meta store CreateDatabase for postgres
  • 400126c feat(internal/database): add metadata CreateDatabase based on backend
  • c5b18a8 feat(internal/database): add method BuildRevisionRanges to metadata
  • 2ba0596 feat(internal/database): add method prepareStore
  • 9dc291f feat(internal/database): add online postgres DB
  • afc0709 feat(internal/database): add online redis DB
  • 7ec3255 feat(internal/database): add online_revision_id to feature_group
  • dfb1048 feat(internal/database): add packages for online, offline, meta store
  • 72b2054 feat(internal/database): define rich_feature_group methods
  • 5156f48 feat(internal/database): define rich_feature_group schema
  • 050a4f7 feat(internal/database): generate mocks for database methods
  • 5c50961 feat(internal/database): impl SinkFeatureValuesStream for postgres
  • a533a18 feat(internal/database): impl db method GetLatestRevision
  • 7642beb feat(internal/database): implement redis method GetFeatureValues
  • 0d3a900 feat(internal/database): modify corresponding interface
  • 7f910e7 feat(internal/database): modify db method CreateRevision
  • 7697339 feat(internal/database): modify db method GetRevision
  • 837a036 feat(internal/database): modify method UpdateFeatureGroup
  • a6693cf feat(internal/database): modify rich_feature schema
  • 5b41e0b feat(internal/database): modify rich_feature_group schema
  • 2d899ef feat(internal/database): remove DataTable from online.GetOpt
  • 64a1ad6 feat(internal/database): use BuildConditions in db queries
  • 06239a4 feat(internal/database):add metadata method GetRevisions
  • 86d881c feat(internal/database/offline): add new method LoadLocalFile
  • a59d785 feat(list_revision): add test script
  • ec81e04 feat(metadata): add func BatchSnapshotTableName
  • 3268bf2 feat(metadata): error add stack trace
  • 596ec84 feat(metastore): add UpdateRevision method
  • e38145c feat(metastore): add gnomock for unit test
  • 023bf05 feat(metastore): add refresh methods
  • cb9a762 feat(metastore): add transaction
  • 1f3b1bc feat(metastore): add transaction wrap func
  • b375324 feat(metastore): add whether the db implements store checks
  • 2bb7b73 feat(metastore): implement entity methods
  • 3e3a348 feat(metastore): implement feature group methods
  • e33b249 feat(metastore): implement feature methods
  • f98d3d7 feat(metastore): implement revision methods
  • 921d499 feat(metastore): implement rich feature methods
  • 7df8f9c feat(metastore): remove died code
  • 14ce3ee feat(metastore): rename DB to PostgresDB
  • b4962b7 feat(metastore): update mock metadata store
  • cd7e5e9 feat(metastore/postgres): add entity methods unit test
  • 69d4855 feat(metastore/postgres): add feature group methods unit test
  • 44c026e feat(metastore/postgres): add feature methods unit test
  • 2787590 feat(metastore/postgres): add revision methods unit test
  • c733f61 feat(metastore/postgres): add rich feature methods unit test
  • d5663df feat(metastore/postgres): fix revision bugs
  • c978169 feat(metastore/postgres): merge GetRevisionsByDatatable in ListRevision
  • ca15612 feat(metastore/postres): add CreateDatabase unit test
  • 7be388c feat(offline store): add open function
  • e16f847 feat(offline): error add stack trace
  • 49313f2 feat(offline/sqlite): add sqlite backend for offline
  • 5e41255 feat(onestore): add method String() for feature_group
  • 782b62f feat(onestore): initialize offline store
  • a335322 feat(onestore): instantiated metastore in the open function
  • 88b3ca9 feat(onestore): replace GetHistoricalFeatureValues with offline
  • c6985f0 feat(onestore): replace db.Entity methods with metastore.Entity methods
  • 48a318e feat(onestore): replace db.feature methods with metastore.feature methods
  • d0b0ba3 feat(onestore): replace db.feature_group with metastore.feature_group methods
  • 5218d9a feat(onestore): replace db.revision with metastore.revision methods
  • 3bb45b9 feat(onestore): replace db.rich_feature with metastore.rich_feature methods
  • 43ec18e feat(online): add cassandra Open method
  • b867e49 feat(online): add func OnlineStreamTableName
  • 3cb4c1b feat(online): add method PrepareStreamTable
  • 8c91a3f feat(online): add method push
  • e83af29 feat(online): error add stack trace
  • e0e7430 feat(online): online dbs implement PrepareStreamTable
  • e888255 feat(online): online dbs support get stream feature
  • 95152c5 feat(online/casandra): casandra implement stream push
  • 266c82e feat(online/cassandra): add config field timeout
  • 99fc452 feat(online/cassandra): implement get and multiple get
  • 14e84af feat(online/cassandra): implement import methods
  • 6447f55 feat(online/cassandra): implement method purge
  • 75622d2 feat(online/dynamodb): implement push method
  • e898308 feat(online/mysql): implement push method
  • df17146 feat(online/pg): implement push method
  • 27cbdbf feat(online/redis): batch/stream feature key encode add prefix b/s
  • 72d1fcb feat(online/redis): implement push method
  • f9bf74b feat(online/sqlite): add open methods
  • 6223389 feat(online/sqlite): implement online.Store methods
  • 562a5d7 feat(online/sqlite): sqlite implement push method
  • 9092507 feat(online/sqlutil): add func BuildPushCondition for push
  • 228b64d feat(online/tikv): implement push method
  • fedef33 feat(oomagent): handle null value
  • 521b19e feat(oomagent): take in new fields for ChannelJoin
  • 1e6af5e feat(oomcli): add category for command register group
  • b1d86be feat(oomcli): add subcommand edit entity
  • 4d3a58c feat(oomcli): add subcommand edit feature
  • 254b234 feat(oomcli): add subcommand edit group
  • 748675c feat(oomcli): apply support stream group/feature
  • 67c5f07 feat(oomcli): feat(oomctl): subcommand get meta entity add -o yaml option
  • 3b7e48a feat(oomcli): feat(oomctl): subcommand get meta group add -o yaml option
  • 70d8729 feat(oomcli): merge describe feature to get meta feature
  • 581480c feat(oomcli): support register stream feature
  • f6d7978 feat(oomcli): support register stream group
  • 3e6db98 feat(oomcli/cmd): add column ID and DESCRIPTION for get meta feature
  • ca132f2 feat(oomcli/cmd): add command snapshot for oomcli
  • a8de0e0 feat(oomcli/cmd): add option --wide for command get meta entity
  • f068375 feat(oomcli/cmd): add option wide for command get meta group
  • f97d76e feat(oomcli/cmd): add option wide for command get meta
  • c4fc336 feat(oomcli/cmd): add output format Column
  • 9c394ed feat(oomcli/cmd): add subcommand get meta
  • 2ac1843 feat(oomcli/cmd): implement Column output for get meta feature
  • 4f2b609 feat(oomcli/cmd): implement option wide for get meta feature
  • 0a63d63 feat(oomcli/cmd): support output format Column for get meta
  • c4baacd feat(oomctl): subcommand get meta feature add -o yaml option
  • 4bec5e4 feat(oomd): add helper buildStatus
  • b43fdd0 feat(oomd): add unimplemented grpc APIs
  • 23a4b87 feat(oomd): adding a configuration system
  • b3c399d feat(oomd): copy google.rpc.Status
  • 014a711 feat(oomd): generate server interface and client interface
  • 97bd7a3 feat(oomd): implement OnlineGet
  • a9b2f20 feat(oomd): implement grpc API ImportByFile
  • 2eb5653 feat(oomd): implement grpc API OnlineMultiGet
  • 8e83dd7 feat(oomd): implement grpc import api
  • db642c5 feat(oomd): implement sync
  • a4b62d0 feat(oomd): init oomd.proto
  • 5ef4084 feat(oomd/codegen): generate oomd.pb.go
  • a1912ec feat(oomd/server): impl grpc API JoinByFile
  • a2c37de feat(oomd/server): implement rpc Export and ChannelExport
  • 56144f6 feat(oomstore): add column on stream table alter create a stream feature
  • a415dae feat(oomstore): app apply processing framework
  • 916a66c feat(oomstore): create Stream Table alter create a stream group
  • 0567105 feat(oomstore): online query support stream feature
  • 50d394c feat(oomstore): support create streaming feature
  • 0974eef feat(oomstore/apply): support items apply
  • cc7b7cc feat(oomstore|oomcli): error add stack trace
  • eef183f feat(pkg/database): add database layer for group_revision
  • 3be3e70 feat(pkg/database): add db layer for feature_config
  • 22937ba feat(pkg/database): add method GetFeatureConfig
  • ad7fff7 feat(pkg/database): add method ListFeatureConfig
  • bde354f feat(pkg/database): move database to /pkg/database We keep the /featctl/pkg/database in this PR, we will gradually deprecate it as we transfer other usages to the new database package.
  • a01f312 feat(pkg/onestore): add API UpdateEntity
  • bbd9480 feat(pkg/onestore): add API UpdateFeatureGroup
  • 670df82 feat(pkg/onestore): add OnlineRevisionId to FeatureGroup
  • f17b539 feat(pkg/onestore): add String() method for entity
  • 464bedc feat(pkg/onestore): add method GetRichFeature
  • 3df8024 feat(pkg/onestore): add method to describe feature
  • a320fe2 feat(pkg/onestore): add three stores to OneStore
  • cea1d1e feat(pkg/onestore): define RichFeature struct
  • a1b95f3 feat(pkg/onestore): define args for GetHistoricalFeatureValues
  • 43e2cca feat(pkg/onestore): implement API CreateBatchFeature
  • 3b5bcdc feat(pkg/onestore): implement API GetFeature
  • a7c7e91 feat(pkg/onestore): implement API GetOnlineFeatureValues
  • 056480a feat(pkg/onestore): implement API ListFeature
  • 01df1e7 feat(pkg/onestore): implement API UpdateFeature
  • 65ca4ff feat(pkg/onestore): implement GetHistoricalFeatureValues
  • 40bc412 feat(pkg/onestore): initialize online store in OneStore
  • 946a7fb feat(pkg/onestore): make GroupRevision as optional
  • 8992024 feat(pkg/onestore): modify API ListFeature
  • 72abea2 feat(pkg/onestore): modify callers of SinkFeatureValuesStream
  • fc2fd29 feat(pkg/onestore):update group.revision after materialization
  • acf9aff feat(pkg/oomstore): add API JoinByFile
  • 21e2e6f feat(pkg/oomstore): add APIs for rich_feature_group
  • ded121f feat(pkg/oomstore): add FullName to types.Feature
  • 43dd639 feat(pkg/oomstore): add Revision to API ImportBatchFeatures
  • d234615 feat(pkg/oomstore): add helper validateFeatureFullNames
  • 979914a feat(pkg/oomstore): add method EntityIDs for GroupList
  • 3f8074a feat(pkg/oomstore): add method GroupIDs for RevisionList
  • 533886c feat(pkg/oomstore): add method NewOpenOomStore
  • d05d0dc feat(pkg/oomstore): add method createFirstSnapshotTable
  • 2d6d92d feat(pkg/oomstore): add new API ExportByFile
  • 780d691 feat(pkg/oomstore): add oomstore API ImportByFile
  • abf1211 feat(pkg/oomstore): create the first snapshot table for group
  • fb32bff feat(pkg/oomstore): define RichFeatureGroup
  • 5cdd4b8 feat(pkg/oomstore): deprecate unused structs
  • 4999e21 feat(pkg/oomstore): generate FullName in oomstore API
  • 7dce753 feat(pkg/oomstore): implement API Push for stream features
  • 35ed4a4 feat(pkg/oomstore): implement API Snapshot
  • 6ff8c20 feat(pkg/oomstore): implement cache for stream feature records
  • a419641 feat(pkg/oomstore): init cache in oomstore
  • 030f12a feat(pkg/oomstore): modify methods of describe feature/group
  • f0772c9 feat(pkg/oomstore): pass down CdcTable for streaming features
  • 45f7339 feat(pkg/oomstore): refresh informer for low-frequency APIs
  • 7233f24 feat(pkg/oomstore): replace filterAvailableFeatures by Filter
  • 46c9396 feat(pkg/oomstore): replace group.Revision and group.DataTable
  • ac65b5a feat(pkg/oomstore): update caller of UpdateFeatureGroup
  • fba24cf feat(pkg/oomstore): update callers of GetRevision
  • 85c85ae feat(pkg/oomstore): update callers of online.(Multi)Get
  • e6a1940 feat(pkg/oomstore):use validateFeatureFullNames in oomstore APIs
  • b29d743 feat(proto): add fields for ChannelJoinRequest
  • c39276d feat(proto): add null_value for Value.kind
  • ce64be6 feat(proto): define customized proto Value
  • b65803b feat(proto): define grpc API Export and ExportByFile
  • 3368eeb feat(scripts): modify yaml for cassandra and dynamodb
  • b77476e feat(sdk/python): add ci for auto push python distribution to pypi
  • b8ce612 feat(sdk/python): add the required files for packing package
  • c4b321d feat(sdk/python): implement python sdk export and channel_export
  • af42869 feat(sdk/python): start oomd asynchronously at initialisation
  • 74ba1ab feat(test/runtime): add cassandra runtime
  • a0e0103 feat(type/backend): add method GetDbTypeFrom for BackendType
  • 364719f feat(types/feature): OnlineRevisionID return nil when feature is stream
  • c40435b feat: BuildCreateSchema support cdc table
  • 05cfd78 feat: CreateEntity returning *Entity
  • bbd2f96 feat: MySQL Import should convert boolean to int before loading
  • 33cc340 feat: add DynamoDB to OnlineStoreConfig
  • 6978825 feat: add MySQL to OpenOfflineStore
  • 5661d38 feat: add GetEntity api
  • 275b6a8 feat: add auto-increment ids
  • ae78047 feat: add config_gen
  • 7815d4a feat: add database definition
  • eae4ed8 feat: add external table datasource
  • aefdf6d feat: add get revision api
  • 55c410f feat: add health check api for metadata store
  • 39a5816 feat: add health check api for offline store
  • 63cf0f7 feat: add health check api for online store
  • 87f409a feat: add health check api for oomagent
  • 4487163 feat: add health check api for oomstore
  • a1e78d6 feat: add health check api for python sdk
  • c01b72a feat: add logical value type for feature
  • 3793707 feat: add mysql online store
  • 881603e feat: add mysql playground
  • e237df6 feat: add newly-added backend stores to oomstore.Open
  • 456120e feat: add offline store CreateTable api
  • 19a314a feat: add onestore definition
  • 2fbf3b5 feat: add oom config for featctl
  • fa4cc1f feat: add oomd server template
  • 9dc21bc feat: add package pkg/onestore and pkg/onestore/types for onestore data model
  • e74269f feat: add purge_delay option in proto
  • a91245f feat: add script to run all backend combinations
  • 0558e0e feat: add snowflake Open method
  • 4a432f9 feat: add snowflake option to OpenOfflineStore
  • 3f5f802 feat: add status grpc py code
  • 85b2c42 feat: add test for postgres TableSchema
  • 62cb66f feat: add the schema of rich_feature view
  • 3c68923 feat: add tidb backend
  • dfa2695 feat: change type of datasource into interface{}
  • b95f8c0 feat: change value type enum
  • f0bd9d9 feat: check feature value type when serializing import values
  • f676955 feat: cli docgen
  • 486dc31 feat: convert proto msg type to dict
  • cd70356 feat: docgen should not include 'completion'
  • 48f76b2 feat: generate protoset file for grpcurl
  • bada8b8 feat: generate python grpc code for oomd
  • 7388623 feat: implement ChannelJoin rpc
  • a43875b feat: implement Closer interface
  • c8ebf62 feat: implement GetFeatureValuesStream api
  • eabe08e feat: implement TableSchema for postgres
  • 2560623 feat: implement Copy for XXXList
  • d331136 feat: implement featctl init
  • 01259f7 feat: implement api CreateGroup
  • 9b8ddc1 feat: implement api GetGroup
  • 730b89a feat: implement api ImportBatchFeatures
  • c18a2e7 feat: implement api Create (#91)
  • af3d97c feat: implement api Open
  • 68dda11 feat: implement api WalkFeatureValues (#104)
  • d82a7f5 feat: implement api createEntity
  • 3ddece8 feat: implement api listEntity
  • f781ade feat: implement api listRevision
  • 921cab5 feat: implement cli list feature
  • ec3a64d feat: implement command import
  • 0acd86f feat: implement featctl command init
  • d535138 feat: implement featctl command list group (#178)
  • 3a22100 feat: implement featctl command register feature
  • ad66445 feat: implement featctl export command
  • 792e1b7 feat: implement featctl-get-online-features
  • 96be383 feat: implement feature value deserialization
  • 7241b78 feat: implement informer
  • 6dcaa63 feat: implement materialize api
  • 59f0fd2 feat: implement offline push api
  • 35e2463 feat: implement purge-revision api for redis
  • bb5e1ea feat: implement python sdk
  • 56f134a feat: implement redis LoadFeatureValuesStream
  • 2ae95a7 feat: implement snowflake import and export
  • ba37367 feat: implement table-link import for oomcli
  • c9cb8fd feat: improve offline push error handling
  • 566befc feat: make featctl support both tidb and mysql
  • 493b982 feat: only send header in the very first ChannelJoinResponse
  • 0b4cb65 feat: python call grpc
  • a528026 feat: python client class
  • 057ca3f feat: redshift offline
  • 5c23f5d feat: remove backend field from config file
  • 65106fd feat: remove mysql dependency
  • 2878d1a feat: remove pkg/_init package
  • d0b3f21 feat: send header only once in channel export api
  • 959213b feat: support delay purge
  • c563028 feat: support dynamodb online store Open
  • 78800cf feat: support mysql as metadata store
  • 41f39c0 feat: tikv get
  • 3e04c42 feat: tikv open
  • 447715c feat: tikv purge
  • 29b2a31 feat: unify oomcli metadata output
  • d6cd89f feat: update go.mod
  • 409c202 feat: update go.mod
  • dae5cdf feat: update go.mod
  • 31ec901 feat: update go.mod
  • 9df646e feat: update go.sum
  • 246a1ab feat: update health check api in oomagent
  • f4f646e feat: use entity length when creating data table
  • 51db5c1 feat: use github action secret for bigquery test
  • 9230979 feat: validate before creating revision
  • d39114d feat: validate value_type input in CreateFeature
  • 652b712 featctl: add list revision command
  • 265ce70 feate(database/metadata): able to update revision's snapshot_table
  • 7c7e744 feate(database/metadata): implement createFeature for SQLite
  • 6502f0b fix broken link in README
  • 0062250 fix makefile osx compatibility
  • f761f4a fix(cmd/root) rename pkg/database import name
  • 1955453 fix(database): remove unnecessary dropTemporaryTables
  • 6890634 fix(entity): fix table name typo
  • 165a81f fix(featctl): fix describe sub command
  • 9fb9c00 fix(featctl): fix list feature option parsing
  • 8ec0b3d fix(featctl/cmd): fix command join_historical_feature
  • 96192d1 fix(featctl/cmd): fix featctl command list revision
  • 61c288d fix(featctl/cmd): pass in revision-id
  • b1055c4 fix(featctl/cmd): print entity instead of entityId
  • 7b12f10 fix(featctl/get-online): fix typo
  • b4c57c6 fix(featctl/pkg/query) fix code bad taste
  • b82be66 fix(informer): fix potential data race
  • 76f8b63 fix(init): fix wrong sql syntax when init onestore (#138)
  • 1ea3f35 fix(internal/database): fix featctl cmd join historical features
  • bdebe1f fix(internal/database): fix typo
  • 3ae19c3 fix(internal/database): fix unit tests for offline store
  • 9ad85be fix(metastore/postgres): some bugs found by test
  • c0fb346 fix(metastore/postgres): some revision bugs found by test
  • 13d392c fix(metastore/postgres/entity): Some bugs found by unit test
  • f78f56e fix(offline/push): add missing entity key and unix_milli
  • 76f30c3 fix(oomagent/sync): the field PurgeDelay is not used
  • 076f845 fix(oomstore): fix unit test
  • b4e0358 fix(oomstore): fix update feature missing value type
  • 4a5843e fix(oomstore): validate feature full name when it not nil
  • ebfa217 fix(oomstore/apply): add validate
  • 1930dc3 fix(pkg/oomstore): fix method buildRevisionRanges
  • 4181e7e fix(pkg/oomstore): fix typo
  • a6b929e fix(pkg/oomstore): make ExportFeatureValuesOpt.RevisionID required
  • bbcd408 fix(revision): change type of revision field from string to int64
  • 58fd152 fix(revision): change type of revision field in the schema from int to bigint
  • bf088ea fix(test): fix test_describe_feature.sh code format
  • 9d89e9c fix(types/feature): fix panic when f.OfflineDataTable is nil
  • ebdf2f3 fix(types/feature): method Feature.String() will panic when OfflineDataTable is nil
  • cd659cc fix: ChannelJoin rpc
  • 3bd2a38 fix: DB.GetFeatureGroup add NoRows error parse
  • ceb77d9 fix: MultiGet skip nil values
  • 2f5c19c fix: add missing backend to switch
  • 8afc785 fix: add missing entity field
  • c5e1984 fix: add missing mysql store in OpenOnlineStore
  • e69fd92 fix: add the logic of verifying feature if exist
  • 1948520 fix: better logging
  • ecaf8d9 fix: convert sql to pq format
  • 3ca0d5a fix: create view after meta table
  • 9d48072 fix: dynamodb runtime
  • 3a05d4e fix: edit generated python code st relative import works
  • a5c4b5d fix: entity_df_with_features unique_key length limit
  • e008a43 fix: featctl list entity not print
  • 0843991 fix: featctl list feature does not behave as expected
  • 04665f7 fix: fix bug in list feature api
  • 78cb089 fix: fix compile
  • fc95366 fix: fix cycle import
  • b78df82 fix: fix db value type mapping
  • 5c5ab59 fix: fix description type in apply
  • 8c88c5f fix: fix featctl get online feature
  • e867d63 fix: fix featctl get online feature
  • dfa7d35 fix: fix featctl import
  • 0ed5d7b fix: fix featctl import
  • 11681f2 fix: fix featctl register entity
  • be4f21a fix: fix featctl register feature
  • c098d0c fix: fix featctl register group
  • 7586b75 fix: fix feature_group.go sql for postgres
  • 2bfae23 fix: fix get_online_feature api
  • e2b6134 fix: fix go module (#22)
  • 41b8a63 fix: fix grpc channel export
  • 557eb64 fix: fix integration tests
  • 534756a fix: fix missing backend type
  • bd8c93a fix: fix missing field in Revision
  • 5b465ae fix: fix online store tests
  • 835d0cf fix: fix parsing value type
  • b22b8a1 fix: fix postgres online store get empty
  • 250f2e6 fix: fix postgres online store query droped
  • e26c1b7 fix: fix postgres online store type conversion
  • 2b2ca91 fix: fix postgres sql syntax error
  • 2a14be8 fix: fix redshift join
  • 0547487 fix: fix registering feature
  • b1777ae fix: fix revision.go sql for postgres
  • 94c6d5d fix: fix rich_feature.go for postgres
  • fb3bdb6 fix: fix temp table naming collision
  • aac8212 fix: fix test
  • a1163af fix: fix walk api
  • 159d5ac fix: fix walk api
  • 379699e fix: hardcode category to be batch
  • dac023b fix: import
  • 7f2f4d3 fix: import file check logic
  • 3d1a13c fix: informer get api should return a deep copy
  • f65d18a fix: informer list should also return a deep copy
  • 22586ee fix: lint
  • 9fefccb fix: lint
  • 6051805 fix: lint
  • ebad5ac fix: make it compile
  • 7c9a2fe fix: makefile typo
  • c249300 fix: not enclose number with quotes
  • 7b56107 fix: open tidb
  • 8938af0 fix: parse sqlite value 'true/false' into bool
  • 30941d8 fix: redis online store Get skip nil values
  • 59427cf fix: redshift data type
  • 1ca9ae5 fix: regen mockdata
  • ef807ed fix: remove 2 extra ?
  • c184650 fix: remove error settings for list entity cmd
  • b152b29 fix: remove feature.EntityName from code
  • 1624209 fix: remove metadataStore from NewOomStore method
  • 8dcca48 fix: remove unused functions
  • 93c56c5 fix: rename test db to resolve conflicts with quickstart
  • a0e5b92 fix: replace deprecated method aws.WithEndpointResolver
  • 3983cc1 fix: replace sed with perl for os portability
  • b538377 fix: rerun mockgen
  • cc6a1c7 fix: schema comemnt typo
  • 67fa6e5 fix: set types.RichFeature.DataTable,Revision to pointers
  • 86c043d fix: simpler gitignore
  • 1f61630 fix: snowflake db test
  • 5599912 fix: specify engine & charset explcitly
  • 3fc8e55 fix: sql should returning id
  • 0bd0fd9 fix: temporarily comment out snowflake test to avoid breaking lint
  • e4b8d3d fix: tikv purge
  • 34fda7a fix: type conversion error, expecting []interface{}, get []string
  • b9e5e88 fix: typo
  • dcdcc44 fix: typo
  • 5869f37 fix: typo
  • 2028871 fix: typo
  • d88a938 fix: validate value type
  • 1cfdd58 fix: wrongly return nil instead of error
  • 6a6e041 go.mod: update dependency
  • 65d0cd0 implement query subcommand (#17)
  • e3f0048 init commit
  • d94855b lint: misc
  • 3ba7550 lint: remove dead code
  • c3abbe5 lint: use buf.String() instead of string(buf.Bytes())
  • 9731b79 migrate featctl
  • a5ef48b mock(database): regenerate mock methods
  • 5d9fa2e mock(database/metadata): regenerate mock methods
  • f033116 mock(database/metadata): regenerate mock methods
  • 4c57694 mock(database/metadata): regenerate mock methods
  • bc574f8 mock(database/metadata): regenerate mock methods
  • 4b97051 mock(database/metadata): regenerate mock methods
  • 58d884e mock(database/metadata): regenerate mock methods
  • 1c74f43 mock(database/metadata): regenerate mock methods
  • 3f77a54 mock(database/metadata): regenerate mock methods
  • ae2f800 mock(database/metadata): regenerate mock methods
  • 6836c00 onestore: add method Close
  • bbbf064 refactor database.Open use *DB for return values
  • 4f332a1 refator(online/cassandra): move import implement to impot.go
  • 03b27b2 remove unused dependencies (#6)
  • 708b4e0 remove unused informer methods
  • d664ce4 rename StoreRead -> ReadStore, StoreWrite -> WriteStore
  • 0925642 rename refactor
  • e3b73ef rename: PrepareStoreRuntimeFunc -> PrepareStoreFn
  • 0fc4d4f rename: metadata database.go -> store.go
  • c0d7ee5 trying to compile
  • f224e34 typo: misc
  • 28cefc7 update docs
  • 5d98f40 update go.mod
  • 887efd2 update todos
  • d1bce93 validate category when creating a feature group
  • d483fe2 wip