Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .bazelci/presubmit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,9 +36,9 @@
# bazelci pipeline
matrix:
integration_shard_flags:
- ["--test_tag_filters=shard_0"]
- ["--test_tag_filters=shard_1"]
- ["--test_tag_filters=shard_2"]
- ["--test_tag_filters=shard_0", "--local_test_jobs=3" ]
- ["--test_tag_filters=shard_1", "--local_test_jobs=3" ]
- ["--test_tag_filters=shard_2", "--local_test_jobs=3" ]
test_flags:
- ["--enable_bzlmod=true"]
validate_config: 1
Expand Down
7 changes: 3 additions & 4 deletions .bazelrc
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
common --enable_bzlmod=true
common --incompatible_use_plus_in_repo_names
common --incompatible_disallow_empty_glob=false
common --incompatible_disable_native_repo_rules=true
common --incompatible_autoload_externally=

common --java_runtime_version=remotejdk_17
common --tool_java_runtime_version=remotejdk_17

# TODO[https://github.com/bazelbuild/rules_kotlin/issues/1395]: Uncomment when all rules support not using native repo rules.
# common --incompatible_disable_native_repo_rules=true
# common --incompatible_autoload_externally=

build --strategy=KotlinCompile=worker
build --test_output=all
build --verbose_failures
Expand Down
2 changes: 1 addition & 1 deletion .bazelversion
Original file line number Diff line number Diff line change
@@ -1 +1 @@
8.4.2
9.0.0
20 changes: 17 additions & 3 deletions MODULE.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ module(
repo_name = "rules_kotlin",
)

proto_version = "4.33.1"
proto_version = "4.33.4"

proto_version_parts = proto_version.split(".")

Expand All @@ -19,7 +19,7 @@ bazel_dep(name = "platforms", version = "0.0.11")
bazel_dep(name = "bazel_skylib", version = "1.8.2")
bazel_dep(name = "rules_java", version = "8.9.0")
bazel_dep(name = "rules_python", version = "0.23.1")
bazel_dep(name = "rules_android", version = "0.7.0")
bazel_dep(name = "rules_android", version = "0.7.1")

remote_android_extensions = use_extension(
"@rules_android//bzlmod_extensions:android_extensions.bzl",
Expand Down Expand Up @@ -130,20 +130,34 @@ maven.override(
coordinates = "org.jetbrains.kotlin.kotlin:kotlin-stdlib-jdk8",
target = "@rules_kotlin//kotlin/compiler:kotlin-stdlib-jdk8",
)
maven.override(
name = "override_target_in_deps_protobuf_java",
coordinates = "com.google.protobuf:protobuf-java",
target = "@com_google_protobuf//:protobuf_java",
)
maven.override(
name = "override_target_in_deps_protobuf_java_util",
coordinates = "com.google.protobuf:protobuf-java-util",
target = "@com_google_protobuf//:protobuf_java_util",
)
use_repo(maven, "kotlin_rules_maven", "unpinned_kotlin_rules_maven")

bazel_dep(name = "rules_pkg", version = "1.0.1")

bazel_dep(name = "stardoc", version = "0.8.0", dev_dependency = True, repo_name = "io_bazel_stardoc")
bazel_dep(name = "aspect_bazel_lib", version = "2.22.0", dev_dependency = True)
bazel_dep(name = "rules_testing", version = "0.9.0", dev_dependency = True)
bazel_dep(name = "rules_bazel_integration_test", version = "0.34.0", dev_dependency = True)
bazel_dep(name = "rules_bazel_integration_test", version = "0.35.0", dev_dependency = True)

bazel_binaries = use_extension("@rules_bazel_integration_test//:extensions.bzl", "bazel_binaries", dev_dependency = True)
bazel_binaries.download(version = "7.x")
bazel_binaries.download(version = "8.x")
bazel_binaries.download(version_file = "//:.bazelversion")
use_repo(
bazel_binaries,
"bazel_binaries",
"bazel_binaries_bazelisk",
"build_bazel_bazel_.bazelversion",
"build_bazel_bazel_7_x",
"build_bazel_bazel_8_x",
)
24 changes: 22 additions & 2 deletions MODULE.release.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -5,17 +5,37 @@ module(
repo_name = "rules_kotlin",
)

proto_version = "4.33.4"

proto_version_parts = proto_version.split(".")

proto_module_version = ".".join(proto_version_parts[-2:]) # Last 2 parts

bazel_dep(name = "platforms", version = "0.0.11")
bazel_dep(name = "bazel_skylib", version = "1.7.1")
bazel_dep(name = "rules_java", version = "8.9.0")
bazel_dep(name = "rules_android", version = "0.7.0")
bazel_dep(name = "rules_android", version = "0.7.1")
bazel_dep(name = "bazel_features", version = "1.30.0")
bazel_dep(name = "protobuf", version = "29.0", repo_name = "com_google_protobuf")
bazel_dep(name = "protobuf", version = proto_module_version, repo_name = "com_google_protobuf")
bazel_dep(name = "rules_proto", version = "6.0.2", repo_name = "rules_proto")
bazel_dep(name = "abseil-py", version = "2.1.0", repo_name = "py_absl")
bazel_dep(name = "rules_cc", version = "0.0.16")
bazel_dep(name = "bazel_worker_api", version = "0.0.8")
bazel_dep(name = "bazel_worker_java", version = "0.0.8")
bazel_dep(name = "rules_jvm_external", version = "6.6")

maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven")

maven.override(
name = "override_target_in_deps_protobuf_java",
coordinates = "com.google.protobuf:protobuf-java",
target = "@com_google_protobuf//:protobuf_java",
)
maven.override(
name = "override_target_in_deps_protobuf_java_util",
coordinates = "com.google.protobuf:protobuf-java-util",
target = "@com_google_protobuf//:protobuf_java_util",
)

rules_java_toolchains = use_extension("@rules_java//java:extensions.bzl", "toolchains")
use_repo(rules_java_toolchains, "remote_java_tools")
Expand Down
4 changes: 4 additions & 0 deletions examples/android/.bazelrc
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,10 @@ common --lockfile_mode=off
test --test_output=all
build --config=android_worker

# Required for abseil-cpp which requires C++17
build --cxxopt=-std=c++17
build --host_cxxopt=-std=c++17

# Worker configuration
build:android_worker \
--worker_max_instances=auto \
Expand Down
7 changes: 0 additions & 7 deletions examples/android/MODULE.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,6 @@ use_repo(android_sdk_repository_extension, "androidsdk")

register_toolchains("@androidsdk//:sdk-toolchain", "@androidsdk//:all")

bazel_dep(name = "rules_android_ndk", version = "0.1.2")

android_ndk_repository_extension = use_extension("@rules_android_ndk//:extension.bzl", "android_ndk_repository_extension")
use_repo(android_ndk_repository_extension, "androidndk")

register_toolchains("@androidndk//:all")

maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven")
maven.install(
name = "maven_rules_kotlin_example",
Expand Down
75 changes: 75 additions & 0 deletions examples/anvil/MODULE.bazel
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
module(name = "anvil-example")

bazel_dep(name = "rules_android", version = "0.7.0")
bazel_dep(name = "bazel_skylib", version = "1.7.1")
bazel_dep(name = "rules_java", version = "8.9.0")
bazel_dep(name = "rules_kotlin", version = "2.2.0")
bazel_dep(name = "rules_jvm_external", version = "6.6")

android_sdk_repository_extension = use_extension("@rules_android//rules/android_sdk_repository:rule.bzl", "android_sdk_repository_extension")
use_repo(android_sdk_repository_extension, "androidsdk")

register_toolchains("@androidsdk//:sdk-toolchain", "@androidsdk//:all")

maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven")
maven.install(
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pinning this will help improve test perf a ton.

name = "maven_rules_kotlin_example",
aar_import_bzl_label = "@rules_android//rules:rules.bzl",
artifacts = [
"com.google.dagger:dagger:2.50",
"com.google.dagger:dagger-compiler:2.50",
"com.google.dagger:dagger-producers:2.50",
"com.squareup.anvil:compiler:2.4.9",
"com.squareup.anvil:annotations:2.4.9",
"androidx.activity:activity:1.0.0",
"androidx.annotation:annotation:1.1.0",
"androidx.appcompat:appcompat-resources:1.1.0",
"androidx.appcompat:appcompat:1.1.0",
"androidx.arch.core:core-common:2.1.0",
"androidx.arch.core:core-runtime:2.0.0",
"androidx.cardview:cardview:1.0.0",
"androidx.collection:collection:1.1.0",
"androidx.coordinatorlayout:coordinatorlayout:1.1.0",
"androidx.core:core-ktx:1.3.0",
"androidx.core:core:1.3.0",
"androidx.cursoradapter:cursoradapter:1.0.0",
"androidx.customview:customview:1.0.0",
"androidx.drawerlayout:drawerlayout:1.0.0",
"androidx.fragment:fragment:1.1.0",
"androidx.interpolator:interpolator:1.0.0",
"androidx.lifecycle:lifecycle-common:2.1.0",
"androidx.lifecycle:lifecycle-livedata-core:2.0.0",
"androidx.lifecycle:lifecycle-livedata:2.0.0",
"androidx.lifecycle:lifecycle-runtime:2.1.0",
"androidx.lifecycle:lifecycle-viewmodel:2.1.0",
"androidx.loader:loader:1.0.0",
"androidx.recyclerview:recyclerview:1.1.0",
"androidx.savedstate:savedstate:1.0.0",
"androidx.transition:transition:1.2.0",
"androidx.vectordrawable:vectordrawable-animated:1.1.0",
"androidx.vectordrawable:vectordrawable:1.1.0",
"androidx.versionedparcelable:versionedparcelable:1.1.0",
"androidx.viewpager2:viewpager2:1.0.0",
"androidx.viewpager:viewpager:1.0.0",
"com.google.android.material:material:1.1.0",
"javax.inject:javax.inject:1",
"junit:junit:4.13",
"org.jetbrains.kotlin:kotlin-test:1.5.10",
"com.google.truth:truth:1.0.1",
"org.jetbrains:annotations:13.0",
],
excluded_artifacts = [
"org.jetbrains.kotlin:kotlin-stdlib",
"org.jetbrains.kotlin:kotlin-stdlib-jdk8",
"org.jetbrains.kotlin:kotlin-stdlib-jdk7",
"org.jetbrains.kotlin:kotlin-compiler-embeddable",
"org.jetbrains.kotlin:kotlin-reflect",
"org.jetbrains.kotlin:kotlin-script-runtime",
],
repositories = [
"https://maven.google.com",
"https://repo1.maven.org/maven2",
],
use_starlark_android_rules = True,
)
use_repo(maven, "maven_rules_kotlin_example")
18 changes: 18 additions & 0 deletions examples/associates/MODULE.bazel
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
module(name = "associates-example")

bazel_dep(name = "bazel_skylib", version = "1.7.1")
bazel_dep(name = "rules_java", version = "8.9.0")
bazel_dep(name = "rules_kotlin", version = "2.2.0")
bazel_dep(name = "rules_jvm_external", version = "6.6")

maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven")
maven.install(
name = "maven_rules_kotlin_example",
artifacts = [
"junit:junit:4.13",
],
repositories = [
"https://repo1.maven.org/maven2",
],
)
use_repo(maven, "maven_rules_kotlin_example")
23 changes: 23 additions & 0 deletions examples/dagger/MODULE.bazel
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
module(name = "dagger-example")

bazel_dep(name = "bazel_skylib", version = "1.7.1")
bazel_dep(name = "rules_java", version = "8.9.0")
bazel_dep(name = "rules_kotlin", version = "2.2.0")
bazel_dep(name = "rules_jvm_external", version = "6.6")

maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven")
maven.install(
name = "maven_rules_kotlin_example",
artifacts = [
"com.google.dagger:dagger:2.57.2",
"com.google.dagger:dagger-compiler:2.57.2",
"com.google.dagger:dagger-producers:2.57.2",
"javax.inject:javax.inject:1",
"org.jetbrains.kotlinx:kotlinx-coroutines-core:1.10.2",
"org.jetbrains.kotlin:kotlin-metadata-jvm:2.3.0",
],
repositories = [
"https://repo1.maven.org/maven2",
],
)
use_repo(maven, "maven_rules_kotlin_example")
10 changes: 6 additions & 4 deletions examples/deps/.bazelrc
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
common --java_runtime_version=remotejdk_21
common --tool_java_runtime_version=remotejdk_21
common --incompatible_enable_android_toolchain_resolution
common --enable_workspace=true
common --enable_bzlmod=false
common --incompatible_enable_android_toolchain_resolution # Required for bazel 7
common --android_platforms=//:arm64-v8a
common --toolchain_resolution_debug=.*
common --toolchain_resolution_debug=.*

# Required for abseil-cpp which requires C++17
build --cxxopt=-std=c++17
build --host_cxxopt=-std=c++17
30 changes: 30 additions & 0 deletions examples/deps/MODULE.bazel
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
module(name = "deps-example")

bazel_dep(name = "rules_android", version = "0.7.0")
bazel_dep(name = "bazel_skylib", version = "1.7.1")
bazel_dep(name = "rules_java", version = "8.9.0")
bazel_dep(name = "rules_kotlin", version = "2.2.0")
bazel_dep(name = "rules_jvm_external", version = "6.6")

android_sdk_repository_extension = use_extension("@rules_android//rules/android_sdk_repository:rule.bzl", "android_sdk_repository_extension")
use_repo(android_sdk_repository_extension, "androidsdk")

register_toolchains("@androidsdk//:sdk-toolchain", "@androidsdk//:all")

register_toolchains("//bzl:experimental_toolchain")

maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven")
maven.install(
name = "maven_rules_kotlin_example",
aar_import_bzl_label = "@rules_android//rules:rules.bzl",
artifacts = [
"com.google.auto.value:auto-value:1.6.5",
"com.google.auto.value:auto-value-annotations:1.6.5",
],
repositories = [
"https://maven.google.com",
"https://repo1.maven.org/maven2",
],
use_starlark_android_rules = True,
)
use_repo(maven, "maven_rules_kotlin_example")
Loading