-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: Update the go feature server from Expedia code repo. #4665
Changes from 8 commits
df2f0a6
be909c3
23a8156
37b7266
20aefa9
b9eff42
4eaa6c7
953d62e
63dcefa
8e4893c
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -6,3 +6,4 @@ prune infra | |
prune examples | ||
|
||
graft sdk/python/feast/ui/build | ||
graft sdk/python/feast/embedded_go/lib |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -536,3 +536,40 @@ build-helm-docs: | |
# Note: requires node and yarn to be installed | ||
build-ui: | ||
cd $(ROOT_DIR)/sdk/python/feast/ui && yarn upgrade @feast-dev/feast-ui --latest && yarn install && npm run build --omit=dev | ||
|
||
|
||
|
||
# Go SDK & embedded | ||
install-protoc-dependencies: | ||
pip install "protobuf>=4.24.0,<5.0.0" "grpcio-tools>=1.56.2,<2" "mypy-protobuf>=3.1" | ||
|
||
install-go-proto-dependencies: | ||
go install google.golang.org/protobuf/cmd/protoc-gen-go@v1.31.0 | ||
go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@v1.3.0 | ||
|
||
install-go-ci-dependencies: | ||
# go install golang.org/x/tools/cmd/goimports | ||
# python -m pip install "pybindgen==0.22.1" "grpcio-tools>=1.56.2,<2" "mypy-protobuf>=3.1" | ||
|
||
build-go: compile-protos-go | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. the inline seems to be at odds with the rest of the Makefile format, could you adjust it? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. done |
||
go build -o feast ./go/main.go | ||
|
||
install-feast-ci-locally: | ||
pip install -e ".[ci]" | ||
|
||
test-go: compile-protos-go compile-protos-python install-feast-ci-locally | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. same here There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. done |
||
CGO_ENABLED=1 go test -coverprofile=coverage.out ./... && go tool cover -html=coverage.out -o coverage.html | ||
|
||
format-go: | ||
gofmt -s -w go/ | ||
|
||
lint-go: compile-protos-go | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. same here There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. done |
||
go vet ./go/internal/feast | ||
|
||
build-go-docker-dev: | ||
docker buildx build --build-arg VERSION=dev \ | ||
-t feastdev/feature-server-go:dev \ | ||
-f go/infra/docker/feature-server/Dockerfile --load . | ||
|
||
compile-protos-go: install-go-proto-dependencies install-protoc-dependencies | ||
python setup.py build_go_protos |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,50 +1,54 @@ | ||
module github.com/feast-dev/feast | ||
|
||
go 1.17 | ||
go 1.22.0 | ||
|
||
replace github.com/go-python/gopy v0.4.4 => github.com/feast-dev/gopy v0.4.1-0.20220714211711-252048177d85 | ||
toolchain go1.22.5 | ||
|
||
require ( | ||
github.com/apache/arrow/go/v8 v8.0.0 | ||
github.com/apache/arrow/go/v17 v17.0.0 | ||
github.com/ghodss/yaml v1.0.0 | ||
github.com/go-redis/redis/v8 v8.11.4 | ||
github.com/golang/protobuf v1.5.3 | ||
github.com/google/uuid v1.3.0 | ||
github.com/mattn/go-sqlite3 v1.14.12 | ||
github.com/golang/protobuf v1.5.4 | ||
github.com/google/uuid v1.6.0 | ||
github.com/mattn/go-sqlite3 v1.14.23 | ||
github.com/pkg/errors v0.9.1 | ||
github.com/redis/go-redis/v9 v9.6.1 | ||
github.com/rs/zerolog v1.33.0 | ||
github.com/spaolacci/murmur3 v1.1.0 | ||
github.com/stretchr/testify v1.7.0 | ||
google.golang.org/grpc v1.56.3 | ||
google.golang.org/protobuf v1.33.0 | ||
github.com/stretchr/testify v1.9.0 | ||
google.golang.org/grpc v1.67.0 | ||
google.golang.org/protobuf v1.34.2 | ||
) | ||
|
||
require ( | ||
github.com/JohnCGriffin/overflow v0.0.0-20211019200055-46fa312c352c // indirect | ||
github.com/andybalholm/brotli v1.0.4 // indirect | ||
github.com/apache/thrift v0.15.0 // indirect | ||
github.com/cespare/xxhash/v2 v2.2.0 // indirect | ||
github.com/davecgh/go-spew v1.1.1 // indirect | ||
github.com/andybalholm/brotli v1.1.0 // indirect | ||
github.com/apache/thrift v0.21.0 // indirect | ||
github.com/cespare/xxhash/v2 v2.3.0 // indirect | ||
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect | ||
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect | ||
github.com/goccy/go-json v0.9.6 // indirect | ||
github.com/goccy/go-json v0.10.3 // indirect | ||
github.com/golang/snappy v0.0.4 // indirect | ||
github.com/google/flatbuffers v2.0.6+incompatible // indirect | ||
github.com/google/flatbuffers v24.3.25+incompatible // indirect | ||
github.com/klauspost/asmfmt v1.3.2 // indirect | ||
github.com/klauspost/compress v1.15.1 // indirect | ||
github.com/klauspost/cpuid/v2 v2.0.12 // indirect | ||
github.com/klauspost/compress v1.17.9 // indirect | ||
github.com/klauspost/cpuid/v2 v2.2.8 // indirect | ||
github.com/mattn/go-colorable v0.1.13 // indirect | ||
github.com/mattn/go-isatty v0.0.20 // indirect | ||
github.com/minio/asm2plan9s v0.0.0-20200509001527-cdd76441f9d8 // indirect | ||
github.com/minio/c2goasm v0.0.0-20190812172519-36a3d3bbc4f3 // indirect | ||
github.com/pierrec/lz4/v4 v4.1.14 // indirect | ||
github.com/pmezard/go-difflib v1.0.0 // indirect | ||
github.com/pierrec/lz4/v4 v4.1.21 // indirect | ||
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect | ||
github.com/stretchr/objx v0.5.2 // indirect | ||
github.com/zeebo/xxh3 v1.0.2 // indirect | ||
golang.org/x/exp v0.0.0-20220407100705-7b9b53b0aca4 // indirect | ||
golang.org/x/mod v0.8.0 // indirect | ||
golang.org/x/net v0.23.0 // indirect | ||
golang.org/x/sys v0.18.0 // indirect | ||
golang.org/x/text v0.14.0 // indirect | ||
golang.org/x/tools v0.6.0 // indirect | ||
golang.org/x/xerrors v0.0.0-20220411194840-2f41105eb62f // indirect | ||
google.golang.org/genproto v0.0.0-20230410155749-daa745c078e1 // indirect | ||
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c // indirect | ||
golang.org/x/exp v0.0.0-20240909161429-701f63a606c0 // indirect | ||
golang.org/x/mod v0.21.0 // indirect | ||
golang.org/x/net v0.29.0 // indirect | ||
golang.org/x/sync v0.8.0 // indirect | ||
golang.org/x/sys v0.25.0 // indirect | ||
golang.org/x/text v0.18.0 // indirect | ||
golang.org/x/tools v0.25.0 // indirect | ||
golang.org/x/xerrors v0.0.0-20240903120638-7835f813f4da // indirect | ||
google.golang.org/genproto/googleapis/rpc v0.0.0-20240903143218-8af14fe29dc1 // indirect | ||
gopkg.in/yaml.v2 v2.4.0 // indirect | ||
gopkg.in/yaml.v3 v3.0.0 // indirect | ||
gopkg.in/yaml.v3 v3.0.1 // indirect | ||
) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is all commented out, do we need it?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
commented out as I'm not sure if this setting is good/ready for CI test.