daml/canton/BUILD.bazel
mziolekda b050cee3a6
Remove canton's dependency on scala-bindings (#17958)
* Remove canton's dependency on scala-bindings

* Same for canton-3
2023-12-01 17:56:19 +01:00

1250 lines
46 KiB
Python

# Copyright (c) 2021 Digital Asset (Switzerland) GmbH and/or its affiliates. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
load("@bazel_skylib//rules:copy_file.bzl", "copy_file")
load("//bazel_tools:proto.bzl", "proto_gen", "proto_jars")
load("//bazel_tools:scala.bzl", "da_scala_library", "da_scala_test_suite", "kind_projector_plugin")
load("//bazel_tools:java.bzl", "da_java_library")
load("//bazel_tools/java_testing:java_test_suite.bzl", "java_test_suite")
load("@os_info//:os_info.bzl", "is_windows")
load("//language-support/java:javaopts.bzl", "da_java_bindings_javacopts")
load("//language-support/java/codegen:codegen.bzl", "dar_to_java")
load("//rules_daml:daml.bzl", "daml_compile")
load("@build_environment//:configuration.bzl", "sdk_version")
load("@io_bazel_rules_scala//scala:scala.bzl", "scala_binary", "scala_library", "scala_macro_library")
load("@scala_version//:index.bzl", "scala_major_version", "scala_version")
load(
"@com_github_johnynek_bazel_jar_jar//:jar_jar.bzl",
"jar_jar",
)
### build-info ###
# TODO(https://github.com/DACH-NY/canton/issues/15106): read 'version' from the canton repository
# once it is exposed in some file.
genrule(
name = "community_buildinfo_src",
outs = ["BuildInfo.scala"],
cmd = """
cat << EOF > $@
package com.digitalasset.canton.buildinfo
case object BuildInfo {{
val version: String = "2.7.0-SNAPSHOT"
val scalaVersion: String = "{scala_version}"
val sbtVersion: String = "bazel"
val damlLibrariesVersion: String = "{sdk_version}"
val protocolVersions = List("3", "4", "5")
override val toString: String = {{
"version: %s, scalaVersion: %s, sbtVersion: %s, damlLibrariesVersion: %s, protocolVersions: %s".format(
version, scalaVersion, sbtVersion, damlLibrariesVersion, protocolVersions
)
}}
}}
EOF
""".format(
scala_version = scala_version,
sdk_version = sdk_version,
),
)
scala_library(
name = "community_buildinfo",
srcs = [":community_buildinfo_src"],
)
### daml-common-staging/daml-errors ###
scala_library(
name = "daml-common-staging_daml-errors",
srcs = glob(["daml-common-staging/daml-errors/src/main/**/*.scala"]),
scalacopts = [
"-Xsource:3",
"-language:postfixOps",
],
unused_dependency_checker_mode = "error",
deps = [
"//ledger-api/grpc-definitions:ledger_api_proto_scala",
"@maven//:org_slf4j_slf4j_api",
"@maven//:org_typelevel_cats_core_2_13",
"@maven//:org_typelevel_cats_kernel_2_13",
],
)
### community/lib/pekko ###
scala_library(
name = "pekko-stream-patch",
srcs = glob(["community/lib/pekko/src/main/**/*.scala"]),
scalacopts = [
"-Xsource:3",
"-language:postfixOps",
],
unused_dependency_checker_mode = "error",
deps = [
"@maven//:org_apache_pekko_pekko_actor_2_13",
"@maven//:org_apache_pekko_pekko_stream_2_13",
],
)
jar_jar(
name = "pekko-stream-minus-patched-classes",
input_jar = "@maven//:org_apache_pekko_pekko_stream_2_13",
rules = "shade_rule",
)
### community/lib/Blake2b ###
java_library(
name = "community_lib_Blake2b",
srcs = glob(["community/lib/Blake2b/src/main/**/*.java"]),
deps = [
"@maven//:org_bouncycastle_bcprov_jdk15on",
],
)
### community/lib/slick ###
scala_macro_library(
name = "community_lib_slick_slick-fork",
srcs = glob(["community/lib/slick/src/main/**/*.scala"]),
scalacopts = ["-Wconf:cat=unused-imports:s"],
deps = [
"@maven//:com_typesafe_slick_slick_2_13",
"@maven//:org_reactivestreams_reactive_streams",
"@maven//:org_scala_lang_modules_scala_collection_compat_2_13",
],
)
### community/lib/wartremover ###
scala_macro_library(
name = "community_lib_wartremover",
srcs = glob(["community/lib/wartremover/src/main/**/*.scala"]),
scalacopts = [
"-Wconf:cat=unused-pat-vars:s",
"-Xsource:3",
],
unused_dependency_checker_mode = "error",
deps = [
"@maven//:com_typesafe_slick_slick_2_13",
"@maven//:org_typelevel_cats_core_2_13",
"@maven//:org_typelevel_cats_kernel_2_13",
"@maven//:org_wartremover_wartremover_2_13_11",
],
)
### community/util-logging ###
scala_library(
name = "community_util-logging",
srcs = glob(["community/util-logging/src/main/**/*.scala"]),
scalacopts = [
"-Xsource:3",
"-language:postfixOps",
],
unused_dependency_checker_mode = "error",
deps = [
":pekko-stream-minus-patched-classes",
"//canton:daml-common-staging_daml-errors",
"//daml-lf/data",
"//libs-scala/contextualized-logging",
"//libs-scala/grpc-utils",
"//libs-scala/logging-entries",
"//libs-scala/nonempty",
"//observability/metrics",
"//observability/telemetry",
"//observability/tracing",
"@maven//:com_typesafe_scala_logging_scala_logging_2_13",
"@maven//:io_grpc_grpc_api",
"@maven//:io_opentelemetry_opentelemetry_api",
"@maven//:io_opentelemetry_opentelemetry_context",
"@maven//:io_opentelemetry_opentelemetry_exporter_jaeger",
"@maven//:io_opentelemetry_opentelemetry_exporter_otlp_trace",
"@maven//:io_opentelemetry_opentelemetry_exporter_prometheus",
"@maven//:io_opentelemetry_opentelemetry_exporter_zipkin",
"@maven//:io_opentelemetry_opentelemetry_sdk",
"@maven//:io_opentelemetry_opentelemetry_sdk_common",
"@maven//:io_opentelemetry_opentelemetry_sdk_logs",
"@maven//:io_opentelemetry_opentelemetry_sdk_metrics",
"@maven//:io_opentelemetry_opentelemetry_sdk_trace",
"@maven//:io_opentelemetry_opentelemetry_semconv",
"@maven//:io_prometheus_simpleclient",
"@maven//:org_apache_pekko_pekko_actor_2_13",
"@maven//:org_scalaz_scalaz_core_2_13",
"@maven//:org_slf4j_slf4j_api",
"@maven//:org_typelevel_cats_core_2_13",
"@maven//:org_typelevel_cats_kernel_2_13",
],
)
### community/util-external ###
scala_library(
name = "community_util-external",
srcs = glob(["community/util-external/src/main/scala/**/*.scala"]),
scalacopts = [
"-Xsource:3",
"-language:postfixOps",
],
unused_dependency_checker_mode = "error",
deps = [
"//canton:community_util-logging",
"//canton:daml-common-staging_daml-errors",
"//daml-lf/data",
"//ledger-api/grpc-definitions:ledger_api_proto_scala",
"//libs-scala/nonempty",
"@maven//:com_chuusai_shapeless_2_13",
"@maven//:com_github_pureconfig_pureconfig_core_2_13",
"@maven//:com_github_pureconfig_pureconfig_generic_2_13",
"@maven//:com_thesamet_scalapb_scalapb_runtime_2_13",
"@maven//:com_typesafe_config",
"@maven//:com_typesafe_slick_slick_2_13",
"@maven//:io_grpc_grpc_api",
"@maven//:org_scalaz_scalaz_core_2_13",
"@maven//:org_slf4j_slf4j_api",
"@maven//:org_typelevel_cats_core_2_13",
],
)
### community/ledger/ledger-common ###
proto_jars(
name = "community_ledger_ledger-common_configuration_proto",
srcs = glob(["community/ledger/ledger-common/src/main/protobuf/**/*.proto"]),
maven_artifact_prefix = "ledger.configuration.protobuf",
maven_group = "com.daml",
deps = [
"@com_google_protobuf//:duration_proto",
],
)
scala_library(
name = "community_ledger_ledger-common",
srcs = glob(["community/ledger/ledger-common/src/main/scala/**/*.scala"]),
resource_strip_prefix = "canton/community/ledger/ledger-common/src/resources",
resources = glob(["community/ledger/ledger-common/src/resources/**"]),
scalacopts = [
"-Xsource:3",
"-language:postfixOps",
],
unused_dependency_checker_mode = "error",
deps = [
":community_ledger_ledger-common_configuration_proto_java",
":pekko-stream-minus-patched-classes",
"//canton:daml-common-staging_daml-errors",
"//daml-lf/archive:daml_lf_archive_reader",
"//daml-lf/data",
"//daml-lf/engine",
"//daml-lf/language",
"//daml-lf/transaction",
"//daml-lf/validation",
"//ledger-api/grpc-definitions:ledger_api_proto_scala",
"//libs-scala/contextualized-logging",
"//libs-scala/grpc-utils",
"//libs-scala/ledger-resources",
"//libs-scala/logging-entries",
"//libs-scala/resources",
"//libs-scala/resources-grpc",
"//libs-scala/resources-pekko",
"//libs-scala/scala-utils",
"//libs-scala/timer-utils",
"//observability/metrics",
"@maven//:com_github_ben_manes_caffeine_caffeine",
"@maven//:com_google_guava_guava",
"@maven//:com_google_protobuf_protobuf_java",
"@maven//:com_thesamet_scalapb_scalapb_runtime_2_13",
"@maven//:commons_codec_commons_codec",
"@maven//:commons_io_commons_io",
"@maven//:io_dropwizard_metrics_metrics_core",
"@maven//:io_grpc_grpc_api",
"@maven//:io_grpc_grpc_netty",
"@maven//:io_grpc_grpc_protobuf",
"@maven//:io_netty_netty_buffer",
"@maven//:io_netty_netty_handler",
"@maven//:io_opentelemetry_opentelemetry_api",
"@maven//:io_spray_spray_json_2_13",
"@maven//:org_apache_pekko_pekko_actor_2_13",
"@maven//:org_scalaz_scalaz_core_2_13",
"@maven//:org_slf4j_slf4j_api",
],
)
### community/base ###
proto_library(
name = "community_base_proto",
srcs = glob(["community/base/src/main/protobuf/**/*.proto"]),
strip_import_prefix = "community/base/src/main/protobuf",
deps = [
"@com_google_protobuf//:duration_proto",
"@com_google_protobuf//:empty_proto",
"@com_google_protobuf//:timestamp_proto",
"@com_google_protobuf//:wrappers_proto",
"@go_googleapis//google/rpc:status_proto",
"@scalapb//:scalapb_proto",
],
)
proto_gen(
name = "community_base_proto_scala",
srcs = [":community_base_proto"],
plugin_exec = "//scala-protoc-plugins/scalapb:protoc-gen-scalapb",
plugin_name = "scalapb",
plugin_options = [
"flat_package",
"grpc",
],
)
scala_library(
name = "community_base",
srcs = glob(["community/base/src/main/scala/**/*.scala"]) + [":community_base_proto_scala"],
plugins = [kind_projector_plugin],
resource_strip_prefix = "canton/community/base/src/main/resources",
resources = glob(["community/base/src/main/resources/**"]),
scalacopts = [
"-Xsource:3",
"-language:postfixOps",
],
unused_dependency_checker_mode = "error",
runtime_deps = [
# not used at compile time, but required by com.digitalasset.canton.util.PekkoUtil.createActorSystem
"@maven//:org_apache_pekko_pekko_slf4j_2_13",
],
deps = [
":pekko-stream-minus-patched-classes",
"//canton:bindings-java",
"//canton:community_buildinfo",
"//canton:community_ledger_ledger-common",
"//canton:community_lib_slick_slick-fork",
"//canton:community_lib_wartremover",
"//canton:community_util-external",
"//canton:community_util-logging",
"//canton:daml-common-staging_daml-errors",
"//daml-lf/data",
"//daml-lf/language",
"//daml-lf/transaction",
"//daml-lf/transaction:transaction_proto_java",
"//daml-lf/transaction:value_proto_java",
"//ledger-api/grpc-definitions:ledger_api_proto_scala",
"//libs-scala/concurrent",
"//libs-scala/contextualized-logging",
"//libs-scala/executors",
"//libs-scala/logging-entries",
"//libs-scala/nameof",
"//libs-scala/nonempty",
"//libs-scala/nonempty-cats",
"//libs-scala/rs-grpc-bridge",
"//libs-scala/rs-grpc-pekko",
"//libs-scala/scala-utils",
"//observability/metrics",
"@canton_maven//:org_flywaydb_flyway_core",
"@maven//:ch_qos_logback_logback_classic",
"@maven//:ch_qos_logback_logback_core",
"@maven//:com_chuusai_shapeless_2_13",
"@maven//:com_github_ben_manes_caffeine_caffeine",
"@maven//:com_github_blemale_scaffeine_2_13",
"@maven//:com_github_pathikrit_better_files_2_13",
"@maven//:com_github_pureconfig_pureconfig_core_2_13",
"@maven//:com_google_guava_guava",
"@maven//:com_google_protobuf_protobuf_java",
"@maven//:com_lihaoyi_fansi_2_13",
"@maven//:com_lihaoyi_pprint_2_13",
"@maven//:com_thesamet_scalapb_scalapb_runtime_2_13",
"@maven//:com_typesafe_config",
"@maven//:com_typesafe_scala_logging_scala_logging_2_13",
"@maven//:com_typesafe_slick_slick_2_13",
"@maven//:com_typesafe_slick_slick_hikaricp_2_13",
"@maven//:com_zaxxer_HikariCP",
"@maven//:dev_optics_monocle_core_2_13",
"@maven//:dev_optics_monocle_macro_2_13",
"@maven//:io_circe_circe_core_2_13",
"@maven//:io_circe_circe_generic_2_13",
"@maven//:io_dropwizard_metrics_metrics_core",
"@maven//:io_grpc_grpc_api",
"@maven//:io_grpc_grpc_core",
"@maven//:io_grpc_grpc_netty",
"@maven//:io_grpc_grpc_protobuf",
"@maven//:io_grpc_grpc_services",
"@maven//:io_grpc_grpc_stub",
"@maven//:io_grpc_grpc_util",
"@maven//:io_netty_netty_handler",
"@maven//:io_opentelemetry_opentelemetry_api",
"@maven//:io_opentelemetry_opentelemetry_context",
"@maven//:io_scalaland_chimney_2_13",
"@maven//:junit_junit",
"@maven//:org_apache_pekko_pekko_actor_2_13",
"@maven//:org_bouncycastle_bcpkix_jdk15on",
"@maven//:org_bouncycastle_bcprov_jdk15on",
"@maven//:org_postgresql_postgresql",
"@maven//:org_scala_lang_modules_scala_collection_compat_2_13",
"@maven//:org_scala_lang_modules_scala_collection_contrib_2_13",
"@maven//:org_scalaz_scalaz_core_2_13",
"@maven//:org_slf4j_slf4j_api",
"@maven//:org_typelevel_cats_core_2_13",
"@maven//:org_typelevel_cats_kernel_2_13",
],
)
### community/common ###
scala_library(
name = "community_common",
srcs = glob(["community/common/src/main/scala/**/*.scala"]),
plugins = [kind_projector_plugin],
resource_strip_prefix = "canton/community/common/src/main/resources",
resources = glob(["community/common/src/main/resources/**"]),
scalacopts = [
"-Xsource:3",
"-language:postfixOps",
],
unused_dependency_checker_mode = "error",
runtime_deps = [
# not used at compile time, but required by com.digitalasset.canton.util.PekkoUtil.createActorSystem
"@maven//:org_apache_pekko_pekko_slf4j_2_13",
],
deps = [
":pekko-stream-minus-patched-classes",
"//canton:bindings-java",
"//canton:community_base",
"//canton:community_buildinfo",
"//canton:community_ledger_ledger-common",
"//canton:community_lib_Blake2b",
"//canton:community_lib_slick_slick-fork",
"//canton:community_lib_wartremover",
"//canton:community_util-external",
"//canton:community_util-logging",
"//canton:daml-common-staging_daml-errors",
"//daml-lf/archive:daml_lf_archive_reader",
"//daml-lf/data",
"//daml-lf/interpreter",
"//daml-lf/language",
"//daml-lf/transaction",
"//daml-lf/transaction:transaction_proto_java",
"//ledger-api/grpc-definitions:ledger_api_proto_scala",
"//libs-scala/concurrent",
"//libs-scala/contextualized-logging",
"//libs-scala/executors",
"//libs-scala/nameof",
"//libs-scala/nonempty",
"//observability/metrics",
"//observability/tracing",
"@maven//:ch_qos_logback_logback_classic",
"@maven//:ch_qos_logback_logback_core",
"@maven//:com_github_pathikrit_better_files_2_13",
"@maven//:com_github_pureconfig_pureconfig_core_2_13",
"@maven//:com_github_pureconfig_pureconfig_generic_2_13",
"@maven//:com_google_crypto_tink_tink",
"@maven//:com_google_guava_guava",
"@maven//:com_google_protobuf_protobuf_java",
"@maven//:com_lihaoyi_pprint_2_13",
"@maven//:com_thesamet_scalapb_scalapb_runtime_2_13",
"@maven//:com_typesafe_config",
"@maven//:com_typesafe_scala_logging_scala_logging_2_13",
"@maven//:com_typesafe_slick_slick_2_13",
"@maven//:dev_optics_monocle_core_2_13",
"@maven//:dev_optics_monocle_macro_2_13",
"@maven//:io_circe_circe_core_2_13",
"@maven//:io_grpc_grpc_api",
"@maven//:io_grpc_grpc_netty",
"@maven//:io_grpc_grpc_services",
"@maven//:io_grpc_grpc_stub",
"@maven//:io_netty_netty_handler",
"@maven//:io_opentelemetry_opentelemetry_api",
"@maven//:io_scalaland_chimney_2_13",
"@maven//:junit_junit",
"@maven//:net_logstash_logback_logstash_logback_encoder",
"@maven//:org_apache_logging_log4j_log4j_core",
"@maven//:org_apache_pekko_pekko_actor_2_13",
"@maven//:org_bouncycastle_bcprov_jdk15on",
"@maven//:org_scala_lang_scala_reflect",
"@maven//:org_scalaz_scalaz_core_2_13",
"@maven//:org_slf4j_slf4j_api",
"@maven//:org_typelevel_cats_core_2_13",
"@maven//:org_typelevel_cats_kernel_2_13",
],
)
### community/ledger/ledger-api-core ###
proto_library(
name = "community_ledger_ledger-api-core_proto",
srcs = glob(["community/ledger/ledger-api-core/src/main/protobuf/**/*.proto"]),
strip_import_prefix = "community/ledger/ledger-api-core/src/main/protobuf",
deps = [
"@com_google_protobuf//:any_proto",
"@com_google_protobuf//:duration_proto",
"@com_google_protobuf//:empty_proto",
"@com_google_protobuf//:timestamp_proto",
"@com_google_protobuf//:wrappers_proto",
"@go_googleapis//google/rpc:status_proto",
"@scalapb//:scalapb_proto",
],
)
proto_gen(
name = "community_ledger_ledger-api-core_proto_scala",
srcs = [":community_ledger_ledger-api-core_proto"],
plugin_exec = "//scala-protoc-plugins/scalapb:protoc-gen-scalapb",
plugin_name = "scalapb",
plugin_options = [
"grpc",
],
)
scala_library(
name = "community_ledger_ledger-api-core",
srcs = glob([
"community/ledger/ledger-api-core/src/main/scala/**/*.scala",
"community/ledger/ledger-api-core/src/main/scala/**/*.java",
]) + [":community_ledger_ledger-api-core_proto_scala"],
resource_strip_prefix = "canton/community/ledger/ledger-api-core/src/main/resources",
resources = glob(["community/ledger/ledger-api-core/src/main/resources/**"]),
scalacopts = [
"-Xsource:3",
"-language:postfixOps",
],
unused_dependency_checker_mode = "error",
deps = [
":pekko-stream-minus-patched-classes",
":pekko-stream-patch",
"//canton:bindings-java",
"//canton:community_base",
"//canton:community_common",
"//canton:community_ledger_ledger-common",
"//canton:community_ledger_ledger-common_configuration_proto_java",
"//canton:community_util-external",
"//canton:community_util-logging",
"//canton:daml-common-staging_daml-errors",
"//daml-lf/archive:daml_lf_archive_reader",
"//daml-lf/archive:daml_lf_dev_archive_proto_java",
"//daml-lf/data",
"//daml-lf/engine",
"//daml-lf/language",
"//daml-lf/transaction",
"//daml-lf/transaction:value_proto_java",
"//daml-lf/validation",
"//ledger-api/grpc-definitions:ledger_api_proto_scala",
"//libs-scala/build-info",
"//libs-scala/concurrent",
"//libs-scala/contextualized-logging",
"//libs-scala/crypto",
"//libs-scala/executors",
"//libs-scala/grpc-utils",
"//libs-scala/jwt",
"//libs-scala/ledger-resources",
"//libs-scala/logging-entries",
"//libs-scala/nameof",
"//libs-scala/nonempty",
"//libs-scala/ports",
"//libs-scala/resources",
"//libs-scala/resources-grpc",
"//libs-scala/resources-pekko",
"//libs-scala/rs-grpc-bridge",
"//libs-scala/rs-grpc-pekko",
"//libs-scala/scala-utils",
"//libs-scala/struct-json/struct-spray-json",
"//libs-scala/timer-utils",
"//observability/metrics",
"//observability/tracing",
"@canton_maven//:org_flywaydb_flyway_core",
"@maven//:com_auth0_java_jwt",
"@maven//:com_auth0_jwks_rsa",
"@maven//:com_chuusai_shapeless_2_13",
"@maven//:com_github_ben_manes_caffeine_caffeine",
"@maven//:com_github_pureconfig_pureconfig_core_2_13",
"@maven//:com_github_pureconfig_pureconfig_generic_2_13",
"@maven//:com_github_scopt_scopt_2_13",
"@maven//:com_google_guava_guava",
"@maven//:com_google_protobuf_protobuf_java",
"@maven//:com_h2database_h2",
"@maven//:com_lihaoyi_pprint_2_13",
"@maven//:com_oracle_database_jdbc_ojdbc8",
"@maven//:com_thesamet_scalapb_scalapb_runtime_2_13",
"@maven//:com_typesafe_config",
"@maven//:com_typesafe_scala_logging_scala_logging_2_13",
"@maven//:com_typesafe_slick_slick_2_13",
"@maven//:com_zaxxer_HikariCP",
"@maven//:io_circe_circe_core_2_13",
"@maven//:io_dropwizard_metrics_metrics_core",
"@maven//:io_grpc_grpc_api",
"@maven//:io_grpc_grpc_context",
"@maven//:io_grpc_grpc_core",
"@maven//:io_grpc_grpc_netty",
"@maven//:io_grpc_grpc_protobuf",
"@maven//:io_grpc_grpc_services",
"@maven//:io_grpc_grpc_stub",
"@maven//:io_netty_netty_handler",
"@maven//:io_netty_netty_transport",
"@maven//:io_opentelemetry_opentelemetry_api",
"@maven//:io_opentelemetry_opentelemetry_context",
"@maven//:io_scalaland_chimney_2_13",
"@maven//:io_spray_spray_json_2_13",
"@maven//:junit_junit",
"@maven//:org_apache_pekko_pekko_actor_2_13",
"@maven//:org_playframework_anorm_anorm_2_13",
"@maven//:org_playframework_anorm_anorm_tokenizer_2_13",
"@maven//:org_postgresql_postgresql",
"@maven//:org_reflections_reflections",
"@maven//:org_scalaz_scalaz_core_2_13",
"@maven//:org_slf4j_slf4j_api",
"@maven//:org_typelevel_cats_core_2_13",
"@maven//:org_typelevel_cats_kernel_2_13",
],
)
### community/ledger/ledger-json-api ###
scala_library(
name = "community_ledger_ledger-json-api",
srcs = glob(["community/ledger/ledger-json-api/src/main/scala/**/*.scala"]),
plugins = [kind_projector_plugin],
resource_strip_prefix = "canton/community/ledger/ledger-json-api/src/main/resources",
resources = glob(["community/ledger/ledger-json-api/src/main/resources/**"]),
scalacopts = [
"-Xsource:3",
"-language:postfixOps",
],
unused_dependency_checker_mode = "error",
deps = [
":pekko-stream-minus-patched-classes",
"//canton:bindings-java",
"//canton:community_base",
"//canton:community_ledger_ledger-api-core",
"//canton:community_ledger_ledger-common",
"//canton:community_util-logging",
"//canton:daml-common-staging_daml-errors",
"//daml-lf/api-type-signature",
"//daml-lf/archive:daml_lf_archive_reader",
"//daml-lf/archive:daml_lf_dev_archive_proto_java",
"//daml-lf/data",
"//daml-lf/language",
"//daml-lf/transaction",
"//ledger-api/grpc-definitions:ledger_api_proto_scala",
"//libs-scala/concurrent",
"//libs-scala/contextualized-logging",
"//libs-scala/jwt",
"//libs-scala/ledger-resources",
"//libs-scala/logging-entries",
"//libs-scala/nonempty",
"//libs-scala/ports",
"//libs-scala/resources",
"//libs-scala/resources-grpc",
"//libs-scala/resources-pekko",
"//libs-scala/rs-grpc-bridge",
"//libs-scala/rs-grpc-pekko",
"//libs-scala/scala-utils",
"//libs-scala/struct-json/struct-spray-json",
"//libs-scala/timer-utils",
"//observability/metrics",
"//observability/pekko-http-metrics",
"@maven//:ch_qos_logback_logback_classic",
"@maven//:ch_qos_logback_logback_core",
"@maven//:com_auth0_java_jwt",
"@maven//:com_chuusai_shapeless_2_13",
"@maven//:com_github_ben_manes_caffeine_caffeine",
"@maven//:com_github_pureconfig_pureconfig_core_2_13",
"@maven//:com_github_scopt_scopt_2_13",
"@maven//:com_google_guava_guava",
"@maven//:com_google_protobuf_protobuf_java",
"@maven//:com_thesamet_scalapb_scalapb_runtime_2_13",
"@maven//:com_typesafe_config",
"@maven//:com_typesafe_scala_logging_scala_logging_2_13",
"@maven//:io_github_paoloboni_spray_json_derived_codecs_2_13",
"@maven//:io_grpc_grpc_api",
"@maven//:io_grpc_grpc_stub",
"@maven//:io_spray_spray_json_2_13",
"@maven//:junit_junit",
"@maven//:org_apache_pekko_pekko_actor_2_13",
"@maven//:org_apache_pekko_pekko_http_2_13",
"@maven//:org_apache_pekko_pekko_http_core_2_13",
"@maven//:org_parboiled_parboiled_2_13",
"@maven//:org_scala_lang_scala_reflect",
"@maven//:org_scalaz_scalaz_core_2_13",
"@maven//:org_slf4j_slf4j_api",
],
)
### community/domain ###
proto_library(
name = "community_domain_proto",
srcs = glob(["community/domain/src/main/protobuf/**/*.proto"]),
strip_import_prefix = "community/domain/src/main/protobuf",
deps = [
"//canton:community_base_proto",
"@com_google_protobuf//:duration_proto",
"@com_google_protobuf//:empty_proto",
"@com_google_protobuf//:timestamp_proto",
"@com_google_protobuf//:wrappers_proto",
"@go_googleapis//google/rpc:status_proto",
"@scalapb//:scalapb_proto",
],
)
proto_gen(
name = "community_domain_proto_scala",
srcs = [":community_domain_proto"],
plugin_exec = "//scala-protoc-plugins/scalapb:protoc-gen-scalapb",
plugin_name = "scalapb",
plugin_options = [
"flat_package",
"grpc",
],
)
scala_library(
name = "community_domain",
srcs = glob(["community/domain/src/main/scala/**/*.scala"]) + [":community_domain_proto_scala"],
plugins = [kind_projector_plugin],
scalacopts = [
"-Xsource:3",
"-language:postfixOps",
],
unused_dependency_checker_mode = "error",
deps = [
":pekko-stream-minus-patched-classes",
":pekko-stream-patch",
"//canton:bindings-java",
"//canton:community_base",
"//canton:community_common",
"//canton:community_ledger_ledger-common",
"//canton:community_lib_slick_slick-fork",
"//canton:community_lib_wartremover",
"//canton:community_util-external",
"//canton:community_util-logging",
"//canton:daml-common-staging_daml-errors",
"//daml-lf/data",
"//daml-lf/transaction",
"//ledger-api/grpc-definitions:ledger_api_proto_scala",
"//libs-scala/executors",
"//libs-scala/nameof",
"//libs-scala/nonempty",
"//libs-scala/nonempty-cats",
"//libs-scala/rs-grpc-bridge",
"//libs-scala/scala-utils",
"//observability/metrics",
"@maven//:com_github_ben_manes_caffeine_caffeine",
"@maven//:com_github_blemale_scaffeine_2_13",
"@maven//:com_github_pathikrit_better_files_2_13",
"@maven//:com_github_pureconfig_pureconfig_core_2_13",
"@maven//:com_google_guava_guava",
"@maven//:com_google_protobuf_protobuf_java",
"@maven//:com_h2database_h2",
"@maven//:com_lihaoyi_pprint_2_13",
"@maven//:com_oracle_database_jdbc_ojdbc8",
"@maven//:com_thesamet_scalapb_scalapb_runtime_2_13",
"@maven//:com_typesafe_config",
"@maven//:com_typesafe_scala_logging_scala_logging_2_13",
"@maven//:com_typesafe_slick_slick_2_13",
"@maven//:com_zaxxer_HikariCP",
"@maven//:dev_optics_monocle_core_2_13",
"@maven//:dev_optics_monocle_macro_2_13",
"@maven//:io_circe_circe_core_2_13",
"@maven//:io_grpc_grpc_api",
"@maven//:io_grpc_grpc_services",
"@maven//:io_grpc_grpc_stub",
"@maven//:io_netty_netty_handler",
"@maven//:io_opentelemetry_opentelemetry_api",
"@maven//:junit_junit",
"@maven//:org_apache_pekko_pekko_actor_2_13",
"@maven//:org_postgresql_postgresql",
"@maven//:org_scala_lang_scala_reflect",
"@maven//:org_scalaz_scalaz_core_2_13",
"@maven//:org_slf4j_slf4j_api",
"@maven//:org_typelevel_cats_core_2_13",
"@maven//:org_typelevel_cats_kernel_2_13",
],
)
### community/participant/ ###
# For now we include only the package service as the rest is not standalone
proto_library(
name = "community_participant_admin_proto",
srcs = glob(["community/participant/src/main/protobuf/com/digitalasset/canton/participant/admin/v0/package_service.proto"]),
strip_import_prefix = "community/participant/src/main/protobuf",
deps = [
"@com_google_protobuf//:empty_proto",
],
)
proto_gen(
name = "community_participant_admin_proto_scala",
srcs = [":community_participant_admin_proto"],
plugin_exec = "//scala-protoc-plugins/scalapb:protoc-gen-scalapb",
plugin_name = "scalapb",
plugin_options = [
"grpc",
"flat_package",
],
visibility = ["//daml-script:__subpackages__"],
)
proto_library(
name = "community_participant_proto",
srcs = glob(["community/participant/src/main/protobuf/**/*.proto"]),
strip_import_prefix = "community/participant/src/main/protobuf",
deps = [
"//canton:community_base_proto",
"@com_google_protobuf//:duration_proto",
"@com_google_protobuf//:empty_proto",
"@com_google_protobuf//:timestamp_proto",
"@com_google_protobuf//:wrappers_proto",
"@go_googleapis//google/rpc:status_proto",
"@scalapb//:scalapb_proto",
],
)
proto_gen(
name = "community_participant_proto_scala",
srcs = [":community_participant_proto"],
plugin_exec = "//scala-protoc-plugins/scalapb:protoc-gen-scalapb",
plugin_name = "scalapb",
plugin_options = [
"flat_package",
"grpc",
],
)
copy_file(
name = "community_participant_admin-workflows_dar",
src = "community/participant/src/main/resources/dar/AdminWorkflows.dar",
out = "AdminWorkflows.dar",
)
genrule(
name = "community_participant_admin-workflows-with-vacuuming_dar",
srcs = glob(["community/participant/src/main/daml/ping-pong-vacuum/*"]) + [
":community_participant_admin-workflows_dar",
"//daml-script/daml:daml-script-1.14.dar",
],
outs = ["AdminWorkflowsWithVacuuming.dar"],
cmd = """
set -euo pipefail
project_dir=$$(dirname $(location community/participant/src/main/daml/ping-pong-vacuum/daml.yaml))
tmpdir=$$(mktemp -d)
trap "rm -rf $$tmpdir" EXIT
cp -r $$project_dir/* $$tmpdir
cp $(location :community_participant_admin-workflows_dar) $$tmpdir
cp $(location //daml-script/daml:daml-script-1.14.dar) $$tmpdir
sed -i 's/sdk-version:.*/sdk-version: {sdk_version}/' $$tmpdir/daml.yaml
sed -i 's/-.*AdminWorkflows.dar/- AdminWorkflows.dar/' $$tmpdir/daml.yaml
sed -i 's/daml-script/daml-script-1.14.dar/' $$tmpdir/daml.yaml
$(location //compiler/damlc) build --project-root=$$tmpdir --ghc-option=-Werror -o $$PWD/$@
""".format(sdk_version = sdk_version),
tools = ["//compiler/damlc"],
visibility = ["//visibility:public"],
)
dar_to_java(
name = "community_participant_admin-workflows-with-vacuuming_java",
src = ":community_participant_admin-workflows-with-vacuuming_dar",
package_prefix = "com.digitalasset.canton.participant.admin.workflows.java",
)
copy_file(
name = "ledger-api-version-file",
src = "//ledger-api:api-version-files",
out = "VERSION",
)
scala_library(
name = "community_participant",
srcs = glob(["community/participant/src/main/scala/**/*.scala"]) + [
":community_participant_proto_scala",
],
plugins = [kind_projector_plugin],
resource_strip_prefix = "canton",
resources = [
":community_participant_admin-workflows-with-vacuuming_dar",
":community_participant_admin-workflows_dar",
":ledger-api-version-file",
],
scalacopts = [
"-Xsource:3",
"-language:postfixOps",
],
unused_dependency_checker_mode = "error",
exports = [
"@maven//:io_netty_netty_handler",
],
deps = [
":community_participant_admin-workflows-with-vacuuming_java",
":pekko-stream-minus-patched-classes",
"//canton:bindings-java",
"//canton:community_base",
"//canton:community_common",
"//canton:community_ledger_ledger-api-core",
"//canton:community_ledger_ledger-common",
"//canton:community_ledger_ledger-json-api",
"//canton:community_lib_slick_slick-fork",
"//canton:community_lib_wartremover",
"//canton:community_util-external",
"//canton:community_util-logging",
"//canton:daml-common-staging_daml-errors",
"//daml-lf/archive:daml_lf_archive_reader",
"//daml-lf/archive:daml_lf_dev_archive_proto_java",
"//daml-lf/data",
"//daml-lf/engine",
"//daml-lf/language",
"//daml-lf/transaction",
"//daml-lf/transaction:transaction_proto_java",
"//ledger-api/grpc-definitions:ledger_api_proto_scala",
"//libs-scala/contextualized-logging",
"//libs-scala/executors",
"//libs-scala/jwt",
"//libs-scala/ledger-resources",
"//libs-scala/logging-entries",
"//libs-scala/nameof",
"//libs-scala/nonempty",
"//libs-scala/nonempty-cats",
"//libs-scala/resources",
"//libs-scala/resources-grpc",
"//libs-scala/resources-pekko",
"//libs-scala/rs-grpc-bridge",
"//libs-scala/scala-utils",
"//observability/metrics",
"//observability/tracing",
"@maven//:com_auth0_java_jwt",
"@maven//:com_github_ben_manes_caffeine_caffeine",
"@maven//:com_github_blemale_scaffeine_2_13",
"@maven//:com_github_pathikrit_better_files_2_13",
"@maven//:com_github_pureconfig_pureconfig_core_2_13",
"@maven//:com_google_guava_guava",
"@maven//:com_google_protobuf_protobuf_java",
"@maven//:com_lihaoyi_pprint_2_13",
"@maven//:com_thesamet_scalapb_scalapb_runtime_2_13",
"@maven//:com_typesafe_config",
"@maven//:com_typesafe_scala_logging_scala_logging_2_13",
"@maven//:com_typesafe_slick_slick_2_13",
"@maven//:dev_optics_monocle_core_2_13",
"@maven//:dev_optics_monocle_macro_2_13",
"@maven//:io_circe_circe_core_2_13",
"@maven//:io_dropwizard_metrics_metrics_core",
"@maven//:io_grpc_grpc_api",
"@maven//:io_grpc_grpc_netty",
"@maven//:io_grpc_grpc_services",
"@maven//:io_grpc_grpc_stub",
"@maven//:io_netty_netty_handler",
"@maven//:io_opentelemetry_instrumentation_opentelemetry_grpc_1_6",
"@maven//:io_opentelemetry_opentelemetry_api",
"@maven//:io_scalaland_chimney_2_13",
"@maven//:junit_junit",
"@maven//:org_apache_pekko_pekko_actor_2_13",
"@maven//:org_scala_lang_modules_scala_collection_compat_2_13",
"@maven//:org_scala_lang_scala_reflect",
"@maven//:org_scalaz_scalaz_core_2_13",
"@maven//:org_slf4j_slf4j_api",
"@maven//:org_typelevel_cats_core_2_13",
"@maven//:org_typelevel_cats_kernel_2_13",
],
)
### community/app-base ###
scala_library(
name = "community_app-base",
srcs = glob(["community/app-base/src/main/scala/**/*.scala"]),
resource_strip_prefix = "/canton/community/app-base/src/main/resources",
resources = glob(["community/app-base/src/main/resources/**"]),
scalacopts = [
"-Xsource:3",
"-language:postfixOps",
],
unused_dependency_checker_mode = "error",
deps = [
":pekko-stream-minus-patched-classes",
"//canton:bindings-java",
"//canton:community_base",
"//canton:community_buildinfo",
"//canton:community_common",
"//canton:community_domain",
"//canton:community_ledger_ledger-api-core",
"//canton:community_ledger_ledger-common",
"//canton:community_ledger_ledger-json-api",
"//canton:community_lib_wartremover",
"//canton:community_participant",
"//canton:community_util-external",
"//canton:community_util-logging",
"//canton:daml-common-staging_daml-errors",
"//daml-lf/data",
"//daml-lf/transaction",
"//ledger-api/grpc-definitions:ledger_api_proto_scala",
"//libs-scala/contextualized-logging",
"//libs-scala/executors",
"//libs-scala/jwt",
"//libs-scala/logging-entries",
"//libs-scala/nameof",
"//libs-scala/nonempty",
"//libs-scala/nonempty-cats",
"//libs-scala/rs-grpc-bridge",
"//libs-scala/scala-utils",
"//observability/metrics",
"@maven//:ch_qos_logback_logback_classic",
"@maven//:ch_qos_logback_logback_core",
"@maven//:com_chuusai_shapeless_2_13",
"@maven//:com_fasterxml_jackson_core_jackson_core",
"@maven//:com_github_pathikrit_better_files_2_13",
"@maven//:com_github_pureconfig_pureconfig_cats_2_13",
"@maven//:com_github_pureconfig_pureconfig_core_2_13",
"@maven//:com_github_pureconfig_pureconfig_generic_2_13",
"@maven//:com_google_api_grpc_proto_google_common_protos",
"@maven//:com_google_guava_guava",
"@maven//:com_google_protobuf_protobuf_java",
"@maven//:com_lihaoyi_ammonite_2_13_11",
"@maven//:com_lihaoyi_ammonite_compiler_interface_2_13_11",
"@maven//:com_lihaoyi_ammonite_repl_2_13_11",
"@maven//:com_lihaoyi_ammonite_runtime_2_13_11",
"@maven//:com_lihaoyi_ammonite_util_2_13",
"@maven//:com_lihaoyi_os_lib_2_13",
"@maven//:com_lihaoyi_pprint_2_13",
"@maven//:com_thesamet_scalapb_scalapb_runtime_2_13",
"@maven//:com_typesafe_config",
"@maven//:com_typesafe_scala_logging_scala_logging_2_13",
"@maven//:com_typesafe_slick_slick_2_13",
"@maven//:dev_optics_monocle_core_2_13",
"@maven//:dev_optics_monocle_macro_2_13",
"@maven//:io_circe_circe_core_2_13",
"@maven//:io_circe_circe_generic_2_13",
"@maven//:io_circe_circe_jawn_2_13",
"@maven//:io_dropwizard_metrics_metrics_core",
"@maven//:io_dropwizard_metrics_metrics_graphite",
"@maven//:io_dropwizard_metrics_metrics_jmx",
"@maven//:io_grpc_grpc_api",
"@maven//:io_grpc_grpc_services",
"@maven//:io_grpc_grpc_stub",
"@maven//:io_opentelemetry_opentelemetry_api",
"@maven//:io_opentelemetry_opentelemetry_exporter_otlp_common",
"@maven//:io_opentelemetry_opentelemetry_sdk",
"@maven//:io_opentelemetry_opentelemetry_sdk_metrics",
"@maven//:io_prometheus_simpleclient",
"@maven//:io_prometheus_simpleclient_dropwizard",
"@maven//:io_prometheus_simpleclient_httpserver",
"@maven//:io_scalaland_chimney_2_13",
"@maven//:junit_junit",
"@maven//:org_apache_pekko_pekko_actor_2_13",
"@maven//:org_apache_pekko_pekko_http_2_13",
"@maven//:org_apache_pekko_pekko_http_core_2_13",
"@maven//:org_scalaz_scalaz_core_2_13",
"@maven//:org_slf4j_jul_to_slf4j",
"@maven//:org_slf4j_slf4j_api",
"@maven//:org_typelevel_cats_core_2_13",
"@maven//:org_typelevel_cats_kernel_2_13",
],
)
### community/app ###
scala_library(
name = "community_app-lib",
srcs = glob(["community/app/src/main/scala/**/*.scala"]),
resource_strip_prefix = "/canton/community/app/src/main/resources",
resources = glob(["community/app/src/main/resources/**"]),
scalacopts = [
"-Xsource:3",
"-language:postfixOps",
],
unused_dependency_checker_mode = "error",
visibility = ["//visibility:public"],
runtime_deps = [
"@maven//:org_codehaus_janino_janino", # for parsing conditionals in logback configuration
],
deps = [
":pekko-stream-minus-patched-classes",
"//canton:community_app-base",
"//canton:community_base",
"//canton:community_buildinfo",
"//canton:community_common",
"//canton:community_domain",
"//canton:community_ledger_ledger-api-core",
"//canton:community_ledger_ledger-json-api",
"//canton:community_participant",
"//canton:community_util-external",
"//canton:community_util-logging",
"//canton:daml-common-staging_daml-errors",
"//daml-lf/data",
"//libs-scala/jwt",
"//libs-scala/nonempty",
"//libs-scala/rs-grpc-bridge",
"//observability/metrics",
"@maven//:ch_qos_logback_logback_classic",
"@maven//:ch_qos_logback_logback_core",
"@maven//:com_github_pathikrit_better_files_2_13",
"@maven//:com_github_pureconfig_pureconfig_core_2_13",
"@maven//:com_github_scopt_scopt_2_13",
"@maven//:com_lihaoyi_ammonite_2_13_11",
"@maven//:com_lihaoyi_ammonite_compiler_2_13_11",
"@maven//:com_lihaoyi_ammonite_compiler_interface_2_13_11",
"@maven//:com_lihaoyi_ammonite_interp_2_13_11",
"@maven//:com_lihaoyi_ammonite_interp_api_2_13_11",
"@maven//:com_lihaoyi_ammonite_repl_2_13_11",
"@maven//:com_lihaoyi_ammonite_runtime_2_13_11",
"@maven//:com_lihaoyi_ammonite_util_2_13",
"@maven//:com_lihaoyi_os_lib_2_13",
"@maven//:com_typesafe_config",
"@maven//:com_typesafe_scala_logging_scala_logging_2_13",
"@maven//:io_get_coursier_interface",
"@maven//:io_opentelemetry_opentelemetry_api",
"@maven//:junit_junit",
"@maven//:org_apache_pekko_pekko_actor_2_13",
"@maven//:org_scalaz_scalaz_core_2_13",
"@maven//:org_slf4j_slf4j_api",
"@maven//:org_typelevel_cats_core_2_13",
],
)
scala_binary(
name = "community_app",
main_class = "com.digitalasset.canton.CantonCommunityApp",
visibility = ["//visibility:public"],
deps = [":community_app-lib"],
)
proto_gen(
name = "ledger-api-java",
srcs = ["//ledger-api/grpc-definitions:ledger_api_proto"],
plugin_name = "java",
visibility = [
"//visibility:public",
],
)
# this is only needed for the uber-javadoc in //language-support/java:javadoc
java_library(
name = "ledger-api-java-lib-for-javadocs",
srcs = [
":ledger-api-java",
":ledger-api-java-grpc",
],
visibility = [
"//visibility:public",
],
deps = [
"@maven//:com_google_api_grpc_proto_google_common_protos",
"@maven//:com_google_guava_guava",
"@maven//:com_google_protobuf_protobuf_java",
"@maven//:io_grpc_grpc_api",
"@maven//:io_grpc_grpc_core",
"@maven//:io_grpc_grpc_netty",
"@maven//:io_grpc_grpc_protobuf",
"@maven//:io_grpc_grpc_stub",
"@maven//:javax_annotation_javax_annotation_api",
],
)
proto_gen(
name = "ledger-api-java-grpc",
srcs = ["//ledger-api/grpc-definitions:ledger_api_proto"],
plugin_exec = "@io_grpc_grpc_java//compiler:grpc_java_plugin",
plugin_name = "java-grpc",
visibility = [
"//visibility:public",
],
)
da_java_library(
name = "bindings-java",
srcs = glob(["community/bindings-java/src/main/java/**/*.java"]) + [
":ledger-api-java",
":ledger-api-java-grpc",
],
javacopts = da_java_bindings_javacopts,
tags = [
"javadoc_root_packages=com.daml.ledger.javaapi.data",
"maven_coordinates=com.daml:bindings-java:__VERSION__",
],
visibility = [
"//visibility:public",
],
deps = [
"@maven//:com_fasterxml_jackson_core_jackson_core",
"@maven//:com_google_api_grpc_proto_google_common_protos",
"@maven//:com_google_code_findbugs_jsr305",
"@maven//:com_google_guava_guava",
"@maven//:com_google_protobuf_protobuf_java",
"@maven//:io_grpc_grpc_api",
"@maven//:io_grpc_grpc_core",
"@maven//:io_grpc_grpc_netty",
"@maven//:io_grpc_grpc_protobuf",
"@maven//:io_grpc_grpc_stub",
"@maven//:javax_annotation_javax_annotation_api",
"@maven//:org_checkerframework_checker_qual",
"@maven//:org_slf4j_slf4j_api",
],
)
java_test_suite(
name = "bindings-java-java-tests",
srcs = glob(["community/bindings-java/src/test/java/**/*Test.java"]),
strip = "src/test/java/",
use_short_names = is_windows,
deps = [
":bindings-java",
":bindings-java-test-helpers",
"@maven//:com_google_protobuf_protobuf_java",
"@maven//:org_junit_jupiter_junit_jupiter_api",
"@maven//:org_junit_jupiter_junit_jupiter_engine",
"@maven//:org_junit_platform_junit_platform_runner",
],
)
java_library(
name = "bindings-java-test-helpers",
testonly = True,
srcs = glob(["community/bindings-java/src/test/java/**/TestHelpers.java"]),
deps = [":bindings-java"],
)
da_scala_library(
name = "bindings-java-tests-lib",
srcs = glob(
["community/bindings-java/src/test/**/*.scala"],
exclude = [
"community/bindings-java/src/test/**/*Spec.scala",
"community/bindings-java/src/test/**/*Test.scala",
],
),
scala_deps = [
"@maven//:org_scalacheck_scalacheck",
],
visibility = [
"//ledger-service/http-json:__subpackages__",
],
deps = [
":bindings-java",
"@maven//:com_google_api_grpc_proto_google_common_protos",
"@maven//:com_google_protobuf_protobuf_java",
],
)
da_scala_test_suite(
name = "bindings-java-tests",
srcs = glob([
"community/bindings-java/src/test/**/*Spec.scala",
"community/bindings-java/src/test/**/*Test.scala",
]),
scala_deps = [
"@maven//:org_scalacheck_scalacheck",
"@maven//:org_scalatest_scalatest_core",
"@maven//:org_scalatest_scalatest_matchers_core",
"@maven//:org_scalatest_scalatest_shouldmatchers",
"@maven//:org_scalatest_scalatest_wordspec",
"@maven//:org_scalatestplus_scalacheck_1_15",
],
deps = [
":bindings-java",
":bindings-java-tests-lib",
"@maven//:com_google_api_grpc_proto_google_common_protos",
"@maven//:com_google_protobuf_protobuf_java",
"@maven//:org_scalatest_scalatest_compatible",
],
)
filegroup(
name = "bindings-java-sources",
srcs = glob(["community/bindings-java/src/main/java/**/*.java"]),
visibility = ["//visibility:public"],
)