Skip to content

Commit

Permalink
Release 3.4.0 (2024-04-02)
Browse files Browse the repository at this point in the history
### Features

* Add Bid Currency to PAS bidMetadata for scoreAd()
* Add blob fetch library
* Adds API for generating ciphertexts for server component auctions
* Adds proto mapping functions for top level auction reactor
* Adds reactor for handling top level auction in SFE
* Adds utility for re-encrypting ciphertexts from device
* Adds validator functions for top level auction reactor
* Build version dynamically for telemetry
* Check Bid Currency on Protected App Signals AdWithBids
* create SellerCodeFetchManager for auction service UDF fetching logic
* Enable cpp_no_warn mode by default
* Enable ML inference in B&A
* Implements server component auctions feature in SFE
* Implements support for server component auctions in secure invoke
* Implements top level auction feature in auction service
* Implements top level auctions support in secure invoke

### Bug Fixes

* Add get_workspace_status script to github repo
* Create extra function to only add zone attribute to gcp deployment
* Delete Right AdWithBids for Currency Mismatch in SFE
* Do not check trailing space for patch files
* improve graceful shutdown of bidding server
* Simplify V8Dispatcher::LoadSync, switch to absl::Notification
* Update data plane library dependency
* update generate bid to receive empty json object when no device signals are present

### Dependencies

* **deps:** Upgrade build-system to 0.57.0

Bug: N/A
GitOrigin-RevId: 2d1af3eda17db24ffddd70423ef3707cb14bd73e
Change-Id: I2d0f0a1bd5012681cc95c1bdbe08ced54e0938ae
  • Loading branch information
neilv-g committed Apr 12, 2024
1 parent fe7b8ba commit 64cf212
Show file tree
Hide file tree
Showing 722 changed files with 34,030 additions and 1,983 deletions.
2 changes: 2 additions & 0 deletions .bazelignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
bazel-bidding-auction-server
services/inference_sidecar/common
services/inference_sidecar/modules
google_internal/tools/cost
production/aws/terraform
scp
22 changes: 16 additions & 6 deletions .bazelrc
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ build --config=clang
build --compilation_mode=opt
build --output_filter='^//((?!(third_party):).)*$'`
build --color=yes
build --workspace_status_command="bash tools/get_workspace_status"

build:run_all_tests --cache_test_results=no
test:run_all_tests --test_verbose_timeout_warnings
Expand All @@ -16,11 +17,14 @@ build --copt=-DENABLE_LOGS_PREVIEW
# Avoid linking to ICU shared libs for googleurl
build --@com_google_googleurl//build_config:system_icu=0

build:clang --config=cpp_no_warn
build:clang --cxxopt=-fbracket-depth=512
build:clang --client_env=CC=clang
build:clang --cxxopt=-std=c++17
build:clang --host_cxxopt=-std=c++17
build:clang --client_env=BAZEL_CXXOPTS=-std=c++17
# Makes thread safety analysis warnings into errors.
build:clang --copt=-Werror=thread-safety
#disable the "int conversion" warning for external/nitrokmscli_aws_c_http/source/websocket_decoder.c
build:clang --per_file_copt=external/nitrokmscli_.*\.c@-Wno-int-conversion

Expand All @@ -37,23 +41,28 @@ build:cpp_no_warn --per_file_copt=services/common/telemetry/.*_test.cc@-Wno-unus
# Compiler complains about main function being unused in the micro-benchmarks.
build:cpp_no_warn --per_file_copt=services/.*_benchmarks.cc@-Wno-unused-function

# Enable clang-tidy
build:clang-tidy --aspects @bazel_clang_tidy//clang_tidy:clang_tidy.bzl%clang_tidy_aspect
build:clang-tidy --output_groups=report
build:clang-tidy --@bazel_clang_tidy//:clang_tidy_config=//:clang_tidy_config

test --test_verbose_timeout_warnings

build:instance_local --//:instance=local --config=cpp_no_warn
build:instance_local --//:instance=local
build:instance_local --@google_privacysandbox_servers_common//:instance=local

build:instance_gcp --//:instance=gcp --config=cpp_no_warn
build:instance_gcp --//:instance=gcp
build:instance_gcp --@google_privacysandbox_servers_common//:instance=gcp

build:instance_aws --//:instance=aws --config=cpp_no_warn
build:instance_aws --//:instance=aws
build:instance_aws --@google_privacysandbox_servers_common//:instance=aws

build:platform_local --//:platform=local --config=cpp_no_warn
build:platform_local --//:platform=local

build:platform_aws --//:platform=aws --config=cpp_no_warn
build:platform_aws --//:platform=aws
build:platform_aws --@google_privacysandbox_servers_common//:platform=aws

build:platform_gcp --//:platform=gcp --config=cpp_no_warn
build:platform_gcp --//:platform=gcp
build:platform_gcp --@google_privacysandbox_servers_common//:platform=gcp

build:local_aws --config=instance_local
Expand Down Expand Up @@ -129,6 +138,7 @@ test:coretests --test_tag_filters=-flaky

build:small-tests --action_env=PRIVACY_SANDBOX_SERVERS_SMALL_TESTS=1
build:small-tests --compilation_mode=dbg
build:small-tests --fission=yes
test:small-tests --build_tests_only
test:small-tests --test_size_filters=-large,-enormous
test:small-tests --test_tag_filters=-requires-network
Expand Down
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
*.patch whitespace=-trailing-space
3 changes: 3 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@ exclude: (?x)^(
version\.txt|
.*\.patch|
builders/.*|
services/inference_sidecar/common/builders/.*|
services/inference_sidecar/modules/pytorch_v2_1_1/builders/.*|
services/inference_sidecar/modules/tensorflow_v2_14_0/builders/.*|
testing/functionaltest-system/.*
)$

Expand Down
60 changes: 60 additions & 0 deletions BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -173,6 +173,60 @@ config_setting(
visibility = ["//visibility:public"],
)

string_flag(
name = "inference_build",
build_setting_default = "no",
values = [
"yes",
"no",
],
)

config_setting(
name = "inference",
flag_values = {
":inference_build": "yes",
},
visibility = ["//visibility:public"],
)

string_flag(
name = "inference_runtime",
build_setting_default = "noop",
values = [
"noop",
"pytorch",
"tensorflow",
],
)

config_setting(
name = "inference_noop",
flag_values = {
":inference_build": "yes",
":inference_runtime": "noop",
},
visibility = ["//visibility:public"],
)

config_setting(
name = "inference_pytorch",
flag_values = {
":inference_build": "yes",
":inference_runtime": "pytorch",
},
visibility = ["//visibility:public"],
)

config_setting(
name = "inference_tensorflow",
flag_values = {
":inference_build": "yes",
":inference_runtime": "tensorflow",
},
visibility = ["//visibility:public"],
)

string_flag(
name = "build_for_test",
build_setting_default = "non_test",
Expand All @@ -195,3 +249,9 @@ filegroup(
srcs = ["version.txt"],
visibility = ["//services/common/telemetry:__pkg__"],
)

filegroup(
name = "clang_tidy_config",
srcs = [".clang-tidy"],
visibility = ["//visibility:public"],
)
39 changes: 39 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,45 @@

All notable changes to this project will be documented in this file. See [commit-and-tag-version](https://github.com/absolute-version/commit-and-tag-version) for commit guidelines.

## 3.4.0 (2024-04-02)


### Features

* Add Bid Currency to PAS bidMetadata for scoreAd()
* Add blob fetch library
* Adds API for generating ciphertexts for server component auctions
* Adds proto mapping functions for top level auction reactor
* Adds reactor for handling top level auction in SFE
* Adds utility for re-encrypting ciphertexts from device
* Adds validator functions for top level auction reactor
* Build version dynamically for telemetry
* Check Bid Currency on Protected App Signals AdWithBids
* create SellerCodeFetchManager for auction service UDF fetching logic
* Enable cpp_no_warn mode by default
* Enable ML inference in B&A
* Implements server component auctions feature in SFE
* Implements support for server component auctions in secure invoke
* Implements top level auction feature in auction service
* Implements top level auctions support in secure invoke


### Bug Fixes

* Add get_workspace_status script to github repo
* Create extra function to only add zone attribute to gcp deployment
* Delete Right AdWithBids for Currency Mismatch in SFE
* Do not check trailing space for patch files
* improve graceful shutdown of bidding server
* Simplify V8Dispatcher::LoadSync, switch to absl::Notification
* Update data plane library dependency
* update generate bid to receive empty json object when no device signals are present


### Dependencies

* **deps:** Upgrade build-system to 0.57.0

## 3.3.0 (2024-03-11)


Expand Down
80 changes: 72 additions & 8 deletions WORKSPACE
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,21 @@ load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
### register Python toolchain -- note this toolchain defines the path to a specific version of python
load("//builders/bazel:deps.bzl", "python_deps")

http_archive(
name = "io_bazel_rules_docker",
sha256 = "b1e80761a8a8243d03ebca8845e9cc1ba6c82ce7c5179ce2b295cd36f7e394bf",
urls = ["https://github.com/bazelbuild/rules_docker/releases/download/v0.25.0/rules_docker-v0.25.0.tar.gz"],
)

python_deps("//builders/bazel")

http_archive(
name = "google_privacysandbox_servers_common",
# 2024-02-15
sha256 = "4073bbbce12efe4d1f1d3586a86bfa712ddf373605f4626abf1c43ec1772c14b",
strip_prefix = "data-plane-shared-libraries-a4b61aeca9da3ce79a03a5ee4aa32e0acaa78cb6",
# 2024-04-01
sha256 = "e36cc26c917ec4b1066a32777b48ac8728ba13c276cdda2e91c36ad2037d9bcd",
strip_prefix = "data-plane-shared-libraries-1fbac466b6b88e00a4ca037f7359ee1942ade13e",
urls = [
"https://github.com/privacysandbox/data-plane-shared-libraries/archive/a4b61aeca9da3ce79a03a5ee4aa32e0acaa78cb6.zip",
"https://github.com/privacysandbox/data-plane-shared-libraries/archive/1fbac466b6b88e00a4ca037f7359ee1942ade13e.zip",
],
)

Expand All @@ -38,6 +44,17 @@ load("@google_privacysandbox_servers_common//third_party:deps4.bzl", data_plane_

data_plane_shared_deps4()

load(
"@io_bazel_rules_docker//repositories:repositories.bzl",
container_repositories = "repositories",
)

container_repositories()

load("@io_bazel_rules_docker//repositories:deps.bzl", rules_docker_deps = "deps")

rules_docker_deps()

load("//third_party:container_deps.bzl", "container_deps")

container_deps()
Expand All @@ -58,10 +75,57 @@ http_archive(

http_archive(
name = "service_value_key_fledge_privacysandbox",
# commit 1eee8e79e44f3ca735cfab0b716e57f81d95bd46 2023-10-26
sha256 = "f9705cfa29e7ba1fb196a30a8dd11fc314077d7f693091d24fa8597612ac160a",
strip_prefix = "protected-auction-key-value-service-1eee8e79e44f3ca735cfab0b716e57f81d95bd46",
# commit af184d649be5d9f0a62738db41ed1496de427bcd 2024-03-15
sha256 = "",
strip_prefix = "protected-auction-key-value-service-af184d649be5d9f0a62738db41ed1496de427bcd",
urls = [
"https://github.com/privacysandbox/protected-auction-key-value-service/archive/af184d649be5d9f0a62738db41ed1496de427bcd.zip",
],
)

### Initialize Python headers

http_archive(
name = "pybind11_bazel",
sha256 = "b72c5b44135b90d1ffaba51e08240be0b91707ac60bea08bb4d84b47316211bb",
strip_prefix = "pybind11_bazel-b162c7c88a253e3f6b673df0c621aca27596ce6b",
urls = ["https://github.com/pybind/pybind11_bazel/archive/b162c7c88a253e3f6b673df0c621aca27596ce6b.zip"],
)

load("@pybind11_bazel//:python_configure.bzl", "python_configure")

python_configure(
name = "local_config_python",
)

### Initialize inference common (for bidding server inference utils)
local_repository(
name = "inference_common",
path = "services/inference_sidecar/common",
)

### Initialize PyTorch sidecar local repository (for PyTorch sidecar binary)
local_repository(
name = "pytorch_v2_1_1",
path = "services/inference_sidecar/modules/pytorch_v2_1_1",
)

### Initialize Tensorflow sidecar local respository

local_repository(
name = "tensorflow_v2_14_0",
path = "services/inference_sidecar/modules/tensorflow_v2_14_0",
)

# TODO: Remove this once we sync to the common repo version that includes this
# as a dependecy.
http_archive(
name = "bazel_clang_tidy",
patch_args = ["-p1"],
patches = ["//third_party:bazel_clang_tidy.patch"],
sha256 = "352aeb57ad7ed53ff6e02344885de426421fb6fd7a3890b04d14768d759eb598",
strip_prefix = "bazel_clang_tidy-4884c32e09c1ea9ac96b3f08c3004f3ac4c3fe39",
urls = [
"https://github.com/privacysandbox/protected-auction-key-value-service/archive/1eee8e79e44f3ca735cfab0b716e57f81d95bd46.zip",
"https://github.com/erenon/bazel_clang_tidy/archive/4884c32e09c1ea9ac96b3f08c3004f3ac4c3fe39.zip",
],
)
2 changes: 1 addition & 1 deletion api/BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ proto_library(
deps = [
"@com_google_googleapis//google/api:annotations_proto",
"@com_google_protobuf//:struct_proto",
"@google_privacysandbox_servers_common//src/cpp/logger:logger_proto",
"@google_privacysandbox_servers_common//src/logger:logger_proto",
],
)

Expand Down
Loading

0 comments on commit 64cf212

Please sign in to comment.