From 91e699550e18cf80599ffaae50bd46520cd7d83e Mon Sep 17 00:00:00 2001 From: Markus Lottmann Date: Mon, 6 Jul 2026 12:01:47 +0200 Subject: [PATCH] Add bazel build. --- .bazelrc | 4 + .bazelversion | 1 + .gitignore | 5 + .scalafmt.conf | 1 + BUILD | 11 + MODULE.bazel | 77 + MODULE.bazel.lock | 1422 +++++++++++++++++ bazel/BUILD | 0 bazel/format/BUILD | 17 + bazel/java.bzl | 17 + bazel/scala.bzl | 19 + codepropertygraph/BUILD | 28 + .../cpgloading/ProtoCpgLoader.scala | 2 +- format_maven_install.json | 892 +++++++++++ maven_install.json | 951 +++++++++++ .../shiftleft/passes/mypass/SamplePass.scala | 11 +- schema/BUILD | 128 ++ schema2json/BUILD | 15 + 18 files changed, 3594 insertions(+), 7 deletions(-) create mode 100644 .bazelrc create mode 100644 .bazelversion create mode 100644 BUILD create mode 100644 MODULE.bazel create mode 100644 MODULE.bazel.lock create mode 100644 bazel/BUILD create mode 100644 bazel/format/BUILD create mode 100644 bazel/java.bzl create mode 100644 bazel/scala.bzl create mode 100644 codepropertygraph/BUILD create mode 100644 format_maven_install.json create mode 100644 maven_install.json create mode 100644 schema/BUILD create mode 100644 schema2json/BUILD diff --git a/.bazelrc b/.bazelrc new file mode 100644 index 000000000..5b7bd5de9 --- /dev/null +++ b/.bazelrc @@ -0,0 +1,4 @@ +common --tool_java_language_version=21 +common --tool_java_runtime_version=remotejdk_21 +common --java_runtime_version=remotejdk_21 +try-import user.bazelrc diff --git a/.bazelversion b/.bazelversion new file mode 100644 index 000000000..47da986f8 --- /dev/null +++ b/.bazelversion @@ -0,0 +1 @@ +9.1.0 diff --git a/.gitignore b/.gitignore index 261c8d7b7..d4fb1f945 100644 --- a/.gitignore +++ b/.gitignore @@ -104,3 +104,8 @@ _deps .nfs* # End of https://www.gitignore.io/api/c++,cmake,linux +############## +# Bazel # +############## +user.bazelrc +bazel-* diff --git a/.scalafmt.conf b/.scalafmt.conf index 16080b8b1..24691b3db 100644 --- a/.scalafmt.conf +++ b/.scalafmt.conf @@ -3,3 +3,4 @@ runner.dialect = scala3 preset = IntelliJ maxColumn = 120 align.preset = true +project.excludeFilters = [".*\\.sbt$", ".*\\.sc$", "project/.*\\.scala"] diff --git a/BUILD b/BUILD new file mode 100644 index 000000000..b811fe5c9 --- /dev/null +++ b/BUILD @@ -0,0 +1,11 @@ +exports_files([".scalafmt.conf"]) + +alias( + name = "format", + actual = "//bazel/format", +) + +alias( + name = "formatCheck", + actual = "//bazel/format:format.check", +) diff --git a/MODULE.bazel b/MODULE.bazel new file mode 100644 index 000000000..fedbefea3 --- /dev/null +++ b/MODULE.bazel @@ -0,0 +1,77 @@ +module(name = "codepropertygraph") + +bazel_dep(name = "protobuf", version = "34.1") +bazel_dep(name = "bazel_tooling") +bazel_dep(name = "rules_jvm_external", version = "7.0") +bazel_dep(name = "aspect_rules_lint", version = "2.5.2") +bazel_dep(name = "buildifier_prebuilt", version = "8.5.1.2") + +JOERN_VERSION = "db325972fdf72e53f76beba77b72e84b2c469905" + +git_override( + module_name = "bazel_tooling", + commit = "{}".format(JOERN_VERSION), + remote = "git@github.com:joernio/joern.git", + strip_prefix = "bazel/tooling", +) + +bazel_dep(name = "rules_scala", version = "7.2.4") + +scala_config = use_extension( + "@rules_scala//scala/extensions:config.bzl", + "scala_config", +) +scala_config.settings( + scala_version = "3.7.4", +) + +scala_deps = use_extension( + "@rules_scala//scala/extensions:deps.bzl", + "scala_deps", +) +scala_deps.scala() +scala_deps.scalatest() + +register_toolchains("@bazel_tooling//scala_toolchain:plus_one_toolchain") + +maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven") +maven.install( + name = "maven", + artifacts = [ + "org.slf4j:slf4j-api:2.0.17", + "io.joern:flatgraph-core_3:0.1.31", + "io.joern:flatgraph-help_3:0.1.31", + "io.joern:flatgraph-domain-classes-generator_3:0.1.31", + "io.joern:flatgraph-odb-convert_3:0.1.31", + "net.sf.trove4j:core:3.1.0", + "com.google.protobuf:protobuf-java:4.34.1", + "org.json4s:json4s-native_3:4.0.3", + "com.lihaoyi:os-lib_3:0.11.4", + ], + excluded_artifacts = [ + # Exclude any scala libraries which might come in transitively. + # rules_scala will add the correct scala library for the configured Scala version. + # That way we do not have conflicts between different scala library versions on + # the build classpath. + "org.scala-lang:scala3-library_3", + "org.scala-lang:scala-library", + ], + fetch_sources = True, + lock_file = "//:maven_install.json", + repositories = [ + "https://repo1.maven.org/maven2", + ], +) +use_repo(maven, "maven") + +maven.install( + name = "format_maven", + artifacts = [ + "org.scalameta:scalafmt-cli_2.13:3.9.6", + ], + lock_file = "//:format_maven_install.json", + repositories = [ + "https://repo1.maven.org/maven2", + ], +) +use_repo(maven, "format_maven") diff --git a/MODULE.bazel.lock b/MODULE.bazel.lock new file mode 100644 index 000000000..9816f50f0 --- /dev/null +++ b/MODULE.bazel.lock @@ -0,0 +1,1422 @@ +{ + "lockFileVersion": 26, + "registryFileHashes": { + "https://bcr.bazel.build/bazel_registry.json": "8a28e4aff06ee60aed2a8c281907fb8bcbf3b753c91fb5a5c57da3215d5b3497", + "https://bcr.bazel.build/modules/abseil-cpp/20210324.2/MODULE.bazel": "7cd0312e064fde87c8d1cd79ba06c876bd23630c83466e9500321be55c96ace2", + "https://bcr.bazel.build/modules/abseil-cpp/20211102.0/MODULE.bazel": "70390338f7a5106231d20620712f7cccb659cd0e9d073d1991c038eb9fc57589", + "https://bcr.bazel.build/modules/abseil-cpp/20230125.1/MODULE.bazel": "89047429cb0207707b2dface14ba7f8df85273d484c2572755be4bab7ce9c3a0", + "https://bcr.bazel.build/modules/abseil-cpp/20230802.0.bcr.1/MODULE.bazel": "1c8cec495288dccd14fdae6e3f95f772c1c91857047a098fad772034264cc8cb", + "https://bcr.bazel.build/modules/abseil-cpp/20230802.0/MODULE.bazel": "d253ae36a8bd9ee3c5955384096ccb6baf16a1b1e93e858370da0a3b94f77c16", + "https://bcr.bazel.build/modules/abseil-cpp/20230802.1/MODULE.bazel": "fa92e2eb41a04df73cdabeec37107316f7e5272650f81d6cc096418fe647b915", + "https://bcr.bazel.build/modules/abseil-cpp/20240116.1/MODULE.bazel": "37bcdb4440fbb61df6a1c296ae01b327f19e9bb521f9b8e26ec854b6f97309ed", + "https://bcr.bazel.build/modules/abseil-cpp/20240116.2/MODULE.bazel": "73939767a4686cd9a520d16af5ab440071ed75cec1a876bf2fcfaf1f71987a16", + "https://bcr.bazel.build/modules/abseil-cpp/20250127.0/MODULE.bazel": "d1086e248cda6576862b4b3fe9ad76a214e08c189af5b42557a6e1888812c5d5", + "https://bcr.bazel.build/modules/abseil-cpp/20250127.1/MODULE.bazel": "c4a89e7ceb9bf1e25cf84a9f830ff6b817b72874088bf5141b314726e46a57c1", + "https://bcr.bazel.build/modules/abseil-cpp/20250512.1/MODULE.bazel": "d209fdb6f36ffaf61c509fcc81b19e81b411a999a934a032e10cd009a0226215", + "https://bcr.bazel.build/modules/abseil-cpp/20250814.1/MODULE.bazel": "51f2312901470cdab0dbdf3b88c40cd21c62a7ed58a3de45b365ddc5b11bcab2", + "https://bcr.bazel.build/modules/abseil-cpp/20250814.1/source.json": "cea3901d7e299da7320700abbaafe57a65d039f10d0d7ea601c4a66938ea4b0c", + "https://bcr.bazel.build/modules/abseil-py/2.1.0/MODULE.bazel": "5ebe5bf853769c65707e5c28f216798f7a4b1042015e6a36e6d03094d94bec8a", + "https://bcr.bazel.build/modules/abseil-py/2.1.0/source.json": "0e8fc4f088ce07099c1cd6594c20c7ddbb48b4b3c0849b7d94ba94be88ff042b", + "https://bcr.bazel.build/modules/apple_support/1.11.1/MODULE.bazel": "1843d7cd8a58369a444fc6000e7304425fba600ff641592161d9f15b179fb896", + "https://bcr.bazel.build/modules/apple_support/1.13.0/MODULE.bazel": "7c8cdea7e031b7f9f67f0b497adf6d2c6a2675e9304ca93a9af6ed84eef5a524", + "https://bcr.bazel.build/modules/apple_support/1.15.1/MODULE.bazel": "a0556fefca0b1bb2de8567b8827518f94db6a6e7e7d632b4c48dc5f865bc7c85", + "https://bcr.bazel.build/modules/apple_support/1.16.0/MODULE.bazel": "e785295d21ccab339c3af131752bfbe50fc33dd8215b357492d05bfad0232400", + "https://bcr.bazel.build/modules/apple_support/1.21.0/MODULE.bazel": "ac1824ed5edf17dee2fdd4927ada30c9f8c3b520be1b5fd02a5da15bc10bff3e", + "https://bcr.bazel.build/modules/apple_support/1.21.1/MODULE.bazel": "5809fa3efab15d1f3c3c635af6974044bac8a4919c62238cce06acee8a8c11f1", + "https://bcr.bazel.build/modules/apple_support/1.24.1/MODULE.bazel": "f46e8ddad60aef170ee92b2f3d00ef66c147ceafea68b6877cb45bd91737f5f8", + "https://bcr.bazel.build/modules/apple_support/1.24.2/MODULE.bazel": "0e62471818affb9f0b26f128831d5c40b074d32e6dda5a0d3852847215a41ca4", + "https://bcr.bazel.build/modules/apple_support/1.24.2/source.json": "2c22c9827093250406c5568da6c54e6fdf0ef06238def3d99c71b12feb057a8d", + "https://bcr.bazel.build/modules/aspect_bazel_lib/1.31.2/MODULE.bazel": "7bee702b4862612f29333590f4b658a5832d433d6f8e4395f090e8f4e85d442f", + "https://bcr.bazel.build/modules/aspect_bazel_lib/1.38.0/MODULE.bazel": "6307fec451ba9962c1c969eb516ebfe1e46528f7fa92e1c9ac8646bef4cdaa3f", + "https://bcr.bazel.build/modules/aspect_bazel_lib/1.40.3/MODULE.bazel": "668e6bcb4d957fc0e284316dba546b705c8d43c857f87119619ee83c4555b859", + "https://bcr.bazel.build/modules/aspect_bazel_lib/1.42.2/MODULE.bazel": "2e0d8ab25c57a14f56ace1c8e881b69050417ff91b2fb7718dc00d201f3c3478", + "https://bcr.bazel.build/modules/aspect_bazel_lib/2.14.0/MODULE.bazel": "2b31ffcc9bdc8295b2167e07a757dbbc9ac8906e7028e5170a3708cecaac119f", + "https://bcr.bazel.build/modules/aspect_bazel_lib/2.19.3/MODULE.bazel": "253d739ba126f62a5767d832765b12b59e9f8d2bc88cc1572f4a73e46eb298ca", + "https://bcr.bazel.build/modules/aspect_bazel_lib/2.22.0/MODULE.bazel": "7fe0191f047d4fe4a4a46c1107e2350cbb58a8fc2e10913aa4322d3190dec0bf", + "https://bcr.bazel.build/modules/aspect_bazel_lib/2.22.5/MODULE.bazel": "004ba890363d05372a97248c37205ae64b6fa31047629cd2c0895a9d0c7779e8", + "https://bcr.bazel.build/modules/aspect_bazel_lib/2.22.5/source.json": "ac2c3213df8f985785f1d0aeb7f0f73d5324e6e67d593d9b9470fb74a25d4a9b", + "https://bcr.bazel.build/modules/aspect_bazel_lib/2.8.1/MODULE.bazel": "812d2dd42f65dca362152101fbec418029cc8fd34cbad1a2fde905383d705838", + "https://bcr.bazel.build/modules/aspect_rules_js/1.33.1/MODULE.bazel": "db3e7f16e471cf6827059d03af7c21859e7a0d2bc65429a3a11f005d46fc501b", + "https://bcr.bazel.build/modules/aspect_rules_js/1.39.0/MODULE.bazel": "aece421d479e3c31dc3e5f6d49a12acc2700457c03c556650ec7a0ff23fc0d95", + "https://bcr.bazel.build/modules/aspect_rules_js/1.40.0/MODULE.bazel": "01a1014e95e6816b68ecee2584ae929c7d6a1b72e4333ab1ff2d2c6c30babdf1", + "https://bcr.bazel.build/modules/aspect_rules_js/1.40.0/source.json": "b6fd491369e9ef888fdef64b839023a2360caaea8eb370d2cfbfdd2a96721311", + "https://bcr.bazel.build/modules/aspect_rules_lint/0.12.0/MODULE.bazel": "e767c5dbfeb254ec03275a7701b5cfde2c4d2873676804bc7cb27ddff3728fed", + "https://bcr.bazel.build/modules/aspect_rules_lint/2.5.2/MODULE.bazel": "50d9a42d387ed065f41cdf515cad200e0d95bf3daaa8fd7b5470a72a5a51742b", + "https://bcr.bazel.build/modules/aspect_rules_lint/2.5.2/source.json": "243edc336b5a01ea54d001a54608128a8b2385650be9b734a3765d7380f40ee0", + "https://bcr.bazel.build/modules/aspect_tools_telemetry/0.3.3/MODULE.bazel": "37c764292861c2f70314efa9846bb6dbb44fc0308903b3285da6528305450183", + "https://bcr.bazel.build/modules/aspect_tools_telemetry/0.3.3/source.json": "605086bbc197743a0d360f7ddc550a1d4dfa0441bc807236e17170f636153348", + "https://bcr.bazel.build/modules/bazel_features/0.1.0/MODULE.bazel": "47011d645b0f949f42ee67f2e8775188a9cf4a0a1528aa2fa4952f2fd00906fd", + "https://bcr.bazel.build/modules/bazel_features/1.0.0/MODULE.bazel": "d7f022dc887efb96e1ee51cec7b2e48d41e36ff59a6e4f216c40e4029e1585bf", + "https://bcr.bazel.build/modules/bazel_features/1.1.0/MODULE.bazel": "cfd42ff3b815a5f39554d97182657f8c4b9719568eb7fded2b9135f084bf760b", + "https://bcr.bazel.build/modules/bazel_features/1.1.1/MODULE.bazel": "27b8c79ef57efe08efccbd9dd6ef70d61b4798320b8d3c134fd571f78963dbcd", + "https://bcr.bazel.build/modules/bazel_features/1.10.0/MODULE.bazel": "f75e8807570484a99be90abcd52b5e1f390362c258bcb73106f4544957a48101", + "https://bcr.bazel.build/modules/bazel_features/1.11.0/MODULE.bazel": "f9382337dd5a474c3b7d334c2f83e50b6eaedc284253334cf823044a26de03e8", + "https://bcr.bazel.build/modules/bazel_features/1.13.0/MODULE.bazel": "c14c33c7c3c730612bdbe14ebbb5e61936b6f11322ea95a6e91cd1ba962f94df", + "https://bcr.bazel.build/modules/bazel_features/1.15.0/MODULE.bazel": "d38ff6e517149dc509406aca0db3ad1efdd890a85e049585b7234d04238e2a4d", + "https://bcr.bazel.build/modules/bazel_features/1.17.0/MODULE.bazel": "039de32d21b816b47bd42c778e0454217e9c9caac4a3cf8e15c7231ee3ddee4d", + "https://bcr.bazel.build/modules/bazel_features/1.18.0/MODULE.bazel": "1be0ae2557ab3a72a57aeb31b29be347bcdc5d2b1eb1e70f39e3851a7e97041a", + "https://bcr.bazel.build/modules/bazel_features/1.19.0/MODULE.bazel": "59adcdf28230d220f0067b1f435b8537dd033bfff8db21335ef9217919c7fb58", + "https://bcr.bazel.build/modules/bazel_features/1.21.0/MODULE.bazel": "675642261665d8eea09989aa3b8afb5c37627f1be178382c320d1b46afba5e3b", + "https://bcr.bazel.build/modules/bazel_features/1.23.0/MODULE.bazel": "fd1ac84bc4e97a5a0816b7fd7d4d4f6d837b0047cf4cbd81652d616af3a6591a", + "https://bcr.bazel.build/modules/bazel_features/1.25.0/MODULE.bazel": "e2e60a10a6da64bbf533f15ca652bf61a033e41c2ed734d79a9a08ba87f68c1a", + "https://bcr.bazel.build/modules/bazel_features/1.27.0/MODULE.bazel": "621eeee06c4458a9121d1f104efb80f39d34deff4984e778359c60eaf1a8cb65", + "https://bcr.bazel.build/modules/bazel_features/1.28.0/MODULE.bazel": "4b4200e6cbf8fa335b2c3f43e1d6ef3e240319c33d43d60cc0fbd4b87ece299d", + "https://bcr.bazel.build/modules/bazel_features/1.3.0/MODULE.bazel": "cdcafe83ec318cda34e02948e81d790aab8df7a929cec6f6969f13a489ccecd9", + "https://bcr.bazel.build/modules/bazel_features/1.30.0/MODULE.bazel": "a14b62d05969a293b80257e72e597c2da7f717e1e69fa8b339703ed6731bec87", + "https://bcr.bazel.build/modules/bazel_features/1.32.0/MODULE.bazel": "095d67022a58cb20f7e20e1aefecfa65257a222c18a938e2914fd257b5f1ccdc", + "https://bcr.bazel.build/modules/bazel_features/1.33.0/MODULE.bazel": "8b8dc9d2a4c88609409c3191165bccec0e4cb044cd7a72ccbe826583303459f6", + "https://bcr.bazel.build/modules/bazel_features/1.36.0/MODULE.bazel": "596cb62090b039caf1cad1d52a8bc35cf188ca9a4e279a828005e7ee49a1bec3", + "https://bcr.bazel.build/modules/bazel_features/1.39.0/MODULE.bazel": "28739425c1fc283c91931619749c832b555e60bcd1010b40d8441ce0a5cf726d", + "https://bcr.bazel.build/modules/bazel_features/1.4.1/MODULE.bazel": "e45b6bb2350aff3e442ae1111c555e27eac1d915e77775f6fdc4b351b758b5d7", + "https://bcr.bazel.build/modules/bazel_features/1.42.1/MODULE.bazel": "275a59b5406ff18c01739860aa70ad7ccb3cfb474579411decca11c93b951080", + "https://bcr.bazel.build/modules/bazel_features/1.42.1/source.json": "fcd4396b2df85f64f2b3bb436ad870793ecf39180f1d796f913cc9276d355309", + "https://bcr.bazel.build/modules/bazel_features/1.9.0/MODULE.bazel": "885151d58d90d8d9c811eb75e3288c11f850e1d6b481a8c9f766adee4712358b", + "https://bcr.bazel.build/modules/bazel_features/1.9.1/MODULE.bazel": "8f679097876a9b609ad1f60249c49d68bfab783dd9be012faf9d82547b14815a", + "https://bcr.bazel.build/modules/bazel_lib/3.0.0-rc.0/MODULE.bazel": "d6e00979a98ac14ada5e31c8794708b41434d461e7e7ca39b59b765e6d233b18", + "https://bcr.bazel.build/modules/bazel_lib/3.0.0/MODULE.bazel": "22b70b80ac89ad3f3772526cd9feee2fa412c2b01933fea7ed13238a448d370d", + "https://bcr.bazel.build/modules/bazel_lib/3.0.0/source.json": "895f21909c6fba01d7c17914bb6c8e135982275a1b18cdaa4e62272217ef1751", + "https://bcr.bazel.build/modules/bazel_skylib/1.0.3/MODULE.bazel": "bcb0fd896384802d1ad283b4e4eb4d718eebd8cb820b0a2c3a347fb971afd9d8", + "https://bcr.bazel.build/modules/bazel_skylib/1.1.1/MODULE.bazel": "1add3e7d93ff2e6998f9e118022c84d163917d912f5afafb3058e3d2f1545b5e", + "https://bcr.bazel.build/modules/bazel_skylib/1.2.0/MODULE.bazel": "44fe84260e454ed94ad326352a698422dbe372b21a1ac9f3eab76eb531223686", + "https://bcr.bazel.build/modules/bazel_skylib/1.2.1/MODULE.bazel": "f35baf9da0efe45fa3da1696ae906eea3d615ad41e2e3def4aeb4e8bc0ef9a7a", + "https://bcr.bazel.build/modules/bazel_skylib/1.3.0/MODULE.bazel": "20228b92868bf5cfc41bda7afc8a8ba2a543201851de39d990ec957b513579c5", + "https://bcr.bazel.build/modules/bazel_skylib/1.4.1/MODULE.bazel": "a0dcb779424be33100dcae821e9e27e4f2901d9dfd5333efe5ac6a8d7ab75e1d", + "https://bcr.bazel.build/modules/bazel_skylib/1.4.2/MODULE.bazel": "3bd40978e7a1fac911d5989e6b09d8f64921865a45822d8b09e815eaa726a651", + "https://bcr.bazel.build/modules/bazel_skylib/1.5.0/MODULE.bazel": "32880f5e2945ce6a03d1fbd588e9198c0a959bb42297b2cfaf1685b7bc32e138", + "https://bcr.bazel.build/modules/bazel_skylib/1.6.1/MODULE.bazel": "8fdee2dbaace6c252131c00e1de4b165dc65af02ea278476187765e1a617b917", + "https://bcr.bazel.build/modules/bazel_skylib/1.7.0/MODULE.bazel": "0db596f4563de7938de764cc8deeabec291f55e8ec15299718b93c4423e9796d", + "https://bcr.bazel.build/modules/bazel_skylib/1.7.1/MODULE.bazel": "3120d80c5861aa616222ec015332e5f8d3171e062e3e804a2a0253e1be26e59b", + "https://bcr.bazel.build/modules/bazel_skylib/1.8.0/MODULE.bazel": "2fb3fb53675f6adfc1ca5bfbd5cfb655ae350fba4706d924a8ec7e3ba945671c", + "https://bcr.bazel.build/modules/bazel_skylib/1.8.1/MODULE.bazel": "88ade7293becda963e0e3ea33e7d54d3425127e0a326e0d17da085a5f1f03ff6", + "https://bcr.bazel.build/modules/bazel_skylib/1.8.2/MODULE.bazel": "69ad6927098316848b34a9142bcc975e018ba27f08c4ff403f50c1b6e646ca67", + "https://bcr.bazel.build/modules/bazel_skylib/1.9.0/MODULE.bazel": "72997b29dfd95c3fa0d0c48322d05590418edef451f8db8db5509c57875fb4b7", + "https://bcr.bazel.build/modules/bazel_skylib/1.9.0/source.json": "7ad77c1e8c1b84222d9b3f3cae016a76639435744c19330b0b37c0a3c9da7dc0", + "https://bcr.bazel.build/modules/bazel_worker_api/0.0.1/MODULE.bazel": "02a13b77321773b2042e70ee5e4c5e099c8ddee4cf2da9cd420442c36938d4bd", + "https://bcr.bazel.build/modules/bazel_worker_api/0.0.10/MODULE.bazel": "a426df551b40c3997c351d05f00f0d1f86b618ddb646012f1e9c72efce8ed939", + "https://bcr.bazel.build/modules/bazel_worker_api/0.0.10/source.json": "7f220d3edfeba5d1f61535fd8400338df74f8bdeb241ebe660534c6926a5a645", + "https://bcr.bazel.build/modules/bazel_worker_api/0.0.4/MODULE.bazel": "460aa12d01231a80cce03c548287b433b321d205b0028ae596728c35e5ee442e", + "https://bcr.bazel.build/modules/bazel_worker_api/0.0.8/MODULE.bazel": "396c1ef53835aafe3d42ce6619080531ee770648303731f16cfaa33fa056bf0c", + "https://bcr.bazel.build/modules/bazel_worker_java/0.0.4/MODULE.bazel": "82494a01018bb7ef06d4a17ec4cd7a758721f10eb8b6c820a818e70d669500db", + "https://bcr.bazel.build/modules/bazel_worker_java/0.0.8/MODULE.bazel": "e76479eae70bd4e8f5f4c2dfc5d03ab971cfb18750246c7b3f3454c5c2ee6629", + "https://bcr.bazel.build/modules/bazel_worker_java/0.0.8/source.json": "9395c4679444bc47bf7e51a710366a4480aa371c6f6bed01868e2fabcf11acec", + "https://bcr.bazel.build/modules/buildifier_prebuilt/6.4.0/MODULE.bazel": "37389c6b5a40c59410b4226d3bb54b08637f393d66e2fa57925c6fcf68e64bf4", + "https://bcr.bazel.build/modules/buildifier_prebuilt/8.5.1.2/MODULE.bazel": "9a6e0a2e87d1e3da679e157da5192ea351d5739ca1ff51831c2b736d5b6034de", + "https://bcr.bazel.build/modules/buildifier_prebuilt/8.5.1.2/source.json": "33e11b3bf11e39cb762480a7e6ea1d24d044636135cdd8b8e74b07ebcd3b8d8b", + "https://bcr.bazel.build/modules/buildozer/8.5.1/MODULE.bazel": "a35d9561b3fc5b18797c330793e99e3b834a473d5fbd3d7d7634aafc9bdb6f8f", + "https://bcr.bazel.build/modules/buildozer/8.5.1/source.json": "e3386e6ff4529f2442800dee47ad28d3e6487f36a1f75ae39ae56c70f0cd2fbd", + "https://bcr.bazel.build/modules/diff.bzl/0.5.1/MODULE.bazel": "bad8dd444e512b6fcbcd969d6385cd6bc093d4c12e5640fb1f0ace2282f99ef9", + "https://bcr.bazel.build/modules/diff.bzl/0.5.1/source.json": "64571044143273ff8adb322c0f7acefca36f9589ff37a743e3cac9c35ce6b010", + "https://bcr.bazel.build/modules/gawk/5.3.2.bcr.1/MODULE.bazel": "cdf8cbe5ee750db04b78878c9633cc76e80dcf4416cbe982ac3a9222f80713c8", + "https://bcr.bazel.build/modules/gawk/5.3.2.bcr.1/source.json": "fa7b512dfcb5eafd90ce3959cf42a2a6fe96144ebbb4b3b3928054895f2afac2", + "https://bcr.bazel.build/modules/gazelle/0.27.0/MODULE.bazel": "3446abd608295de6d90b4a8a118ed64a9ce11dcb3dda2dc3290a22056bd20996", + "https://bcr.bazel.build/modules/gazelle/0.30.0/MODULE.bazel": "f888a1effe338491f35f0e0e85003b47bb9d8295ccba73c37e07702d8d31c65b", + "https://bcr.bazel.build/modules/gazelle/0.32.0/MODULE.bazel": "b499f58a5d0d3537f3cf5b76d8ada18242f64ec474d8391247438bf04f58c7b8", + "https://bcr.bazel.build/modules/gazelle/0.33.0/MODULE.bazel": "a13a0f279b462b784fb8dd52a4074526c4a2afe70e114c7d09066097a46b3350", + "https://bcr.bazel.build/modules/gazelle/0.34.0/MODULE.bazel": "abdd8ce4d70978933209db92e436deb3a8b737859e9354fb5fd11fb5c2004c8a", + "https://bcr.bazel.build/modules/gazelle/0.36.0/MODULE.bazel": "e375d5d6e9a6ca59b0cb38b0540bc9a05b6aa926d322f2de268ad267a2ee74c0", + "https://bcr.bazel.build/modules/gazelle/0.40.0/MODULE.bazel": "42ba5378ebe845fca43989a53186ab436d956db498acde790685fe0e8f9c6146", + "https://bcr.bazel.build/modules/gazelle/0.47.0/MODULE.bazel": "b61bb007c4efad134aa30ee7f4a8e2a39b22aa5685f005edaa022fbd1de43ebc", + "https://bcr.bazel.build/modules/gazelle/0.47.0/source.json": "aeb2e5df14b7fb298625d75d08b9c65bdb0b56014c5eb89da9e5dd0572280ae6", + "https://bcr.bazel.build/modules/google_benchmark/1.8.2/MODULE.bazel": "a70cf1bba851000ba93b58ae2f6d76490a9feb74192e57ab8e8ff13c34ec50cb", + "https://bcr.bazel.build/modules/googletest/1.11.0/MODULE.bazel": "3a83f095183f66345ca86aa13c58b59f9f94a2f81999c093d4eeaa2d262d12f4", + "https://bcr.bazel.build/modules/googletest/1.14.0.bcr.1/MODULE.bazel": "22c31a561553727960057361aa33bf20fb2e98584bc4fec007906e27053f80c6", + "https://bcr.bazel.build/modules/googletest/1.14.0/MODULE.bazel": "cfbcbf3e6eac06ef9d85900f64424708cc08687d1b527f0ef65aa7517af8118f", + "https://bcr.bazel.build/modules/googletest/1.15.2/MODULE.bazel": "6de1edc1d26cafb0ea1a6ab3f4d4192d91a312fd2d360b63adaa213cd00b2108", + "https://bcr.bazel.build/modules/googletest/1.17.0/MODULE.bazel": "dbec758171594a705933a29fcf69293d2468c49ec1f2ebca65c36f504d72df46", + "https://bcr.bazel.build/modules/googletest/1.17.0/source.json": "38e4454b25fc30f15439c0378e57909ab1fd0a443158aa35aec685da727cd713", + "https://bcr.bazel.build/modules/jq.bzl/0.1.0/MODULE.bazel": "2ce69b1af49952cd4121a9c3055faa679e748ce774c7f1fda9657f936cae902f", + "https://bcr.bazel.build/modules/jq.bzl/0.6.0/MODULE.bazel": "26ec5118e66a55fef36f8ea39d6415d55fc966671fe4d61a6b9ef0cd6bc7b6a1", + "https://bcr.bazel.build/modules/jq.bzl/0.6.0/source.json": "2ed4e35b9fa9505495784114f7637fbde5846ec14af917841b6c045d877f20eb", + "https://bcr.bazel.build/modules/jsoncpp/1.9.5/MODULE.bazel": "31271aedc59e815656f5736f282bb7509a97c7ecb43e927ac1a37966e0578075", + "https://bcr.bazel.build/modules/jsoncpp/1.9.6.bcr.1/MODULE.bazel": "be2a0db3289111ad410f91ca7e9a84da2dec4441a53a4026892cb29c92a60ca7", + "https://bcr.bazel.build/modules/jsoncpp/1.9.6.bcr.1/source.json": "089bd0e9656760a0b872bb78d6e2694820170a76edd10adf368f08ab2d246360", + "https://bcr.bazel.build/modules/jsoncpp/1.9.6/MODULE.bazel": "2f8d20d3b7d54143213c4dfc3d98225c42de7d666011528dc8fe91591e2e17b0", + "https://bcr.bazel.build/modules/libpfm/4.11.0/MODULE.bazel": "45061ff025b301940f1e30d2c16bea596c25b176c8b6b3087e92615adbd52902", + "https://bcr.bazel.build/modules/nlohmann_json/3.6.1/MODULE.bazel": "6f7b417dcc794d9add9e556673ad25cb3ba835224290f4f848f8e2db1e1fca74", + "https://bcr.bazel.build/modules/package_metadata/0.0.2/MODULE.bazel": "fb8d25550742674d63d7b250063d4580ca530499f045d70748b1b142081ebb92", + "https://bcr.bazel.build/modules/package_metadata/0.0.3/MODULE.bazel": "77890552ecea9e284b5424c9de827a58099348763a4359e975c359a83d4faa83", + "https://bcr.bazel.build/modules/package_metadata/0.0.5/MODULE.bazel": "ef4f9439e3270fdd6b9fd4dbc3d2f29d13888e44c529a1b243f7a31dfbc2e8e4", + "https://bcr.bazel.build/modules/package_metadata/0.0.6/MODULE.bazel": "341dab6f417197494517d54c8e557c0baee1de7aec83543a4fbefe57900acb7e", + "https://bcr.bazel.build/modules/package_metadata/0.0.7/MODULE.bazel": "7adb03933fc8401f495800cf4eafcff0edc6da0ff55c7db223ef69d19f689486", + "https://bcr.bazel.build/modules/package_metadata/0.0.7/source.json": "50639625e937b56115012674c797cca7a05a96b4878c87d803c13dc2b31de8a0", + "https://bcr.bazel.build/modules/platforms/0.0.10/MODULE.bazel": "8cb8efaf200bdeb2150d93e162c40f388529a25852b332cec879373771e48ed5", + "https://bcr.bazel.build/modules/platforms/0.0.11/MODULE.bazel": "0daefc49732e227caa8bfa834d65dc52e8cc18a2faf80df25e8caea151a9413f", + "https://bcr.bazel.build/modules/platforms/0.0.4/MODULE.bazel": "9b328e31ee156f53f3c416a64f8491f7eb731742655a47c9eec4703a71644aee", + "https://bcr.bazel.build/modules/platforms/0.0.5/MODULE.bazel": "5733b54ea419d5eaf7997054bb55f6a1d0b5ff8aedf0176fef9eea44f3acda37", + "https://bcr.bazel.build/modules/platforms/0.0.6/MODULE.bazel": "ad6eeef431dc52aefd2d77ed20a4b353f8ebf0f4ecdd26a807d2da5aa8cd0615", + "https://bcr.bazel.build/modules/platforms/0.0.7/MODULE.bazel": "72fd4a0ede9ee5c021f6a8dd92b503e089f46c227ba2813ff183b71616034814", + "https://bcr.bazel.build/modules/platforms/0.0.8/MODULE.bazel": "9f142c03e348f6d263719f5074b21ef3adf0b139ee4c5133e2aa35664da9eb2d", + "https://bcr.bazel.build/modules/platforms/0.0.9/MODULE.bazel": "4a87a60c927b56ddd67db50c89acaa62f4ce2a1d2149ccb63ffd871d5ce29ebc", + "https://bcr.bazel.build/modules/platforms/1.0.0/MODULE.bazel": "f05feb42b48f1b3c225e4ccf351f367be0371411a803198ec34a389fb22aa580", + "https://bcr.bazel.build/modules/platforms/1.1.0/MODULE.bazel": "1c0c09f5bdcf4b3f924720d2478a3711cb39f4977019ca5988685e5b7e18b3d2", + "https://bcr.bazel.build/modules/platforms/1.1.0/source.json": "fcf351c47596c939140ab0d333dfdd08ed1ea6ce33c2fe70c12493a301cf1344", + "https://bcr.bazel.build/modules/protobuf/21.7/MODULE.bazel": "a5a29bb89544f9b97edce05642fac225a808b5b7be74038ea3640fae2f8e66a7", + "https://bcr.bazel.build/modules/protobuf/23.1/MODULE.bazel": "88b393b3eb4101d18129e5db51847cd40a5517a53e81216144a8c32dfeeca52a", + "https://bcr.bazel.build/modules/protobuf/24.4/MODULE.bazel": "7bc7ce5f2abf36b3b7b7c8218d3acdebb9426aeb35c2257c96445756f970eb12", + "https://bcr.bazel.build/modules/protobuf/27.0/MODULE.bazel": "7873b60be88844a0a1d8f80b9d5d20cfbd8495a689b8763e76c6372998d3f64c", + "https://bcr.bazel.build/modules/protobuf/27.1/MODULE.bazel": "703a7b614728bb06647f965264967a8ef1c39e09e8f167b3ca0bb1fd80449c0d", + "https://bcr.bazel.build/modules/protobuf/27.2/MODULE.bazel": "32450b50673882e4c8c3d10a83f3bc82161b213ed2f80d17e38bece8f165c295", + "https://bcr.bazel.build/modules/protobuf/28.2/MODULE.bazel": "c0c8e51757df486d0314fa290e174d707bad4a6c2aa5ccb08a4b4abd76a23e90", + "https://bcr.bazel.build/modules/protobuf/29.0-rc2.bcr.1/MODULE.bazel": "52f4126f63a2f0bbf36b99c2a87648f08467a4eaf92ba726bc7d6a500bbf770c", + "https://bcr.bazel.build/modules/protobuf/29.0-rc2/MODULE.bazel": "6241d35983510143049943fc0d57937937122baf1b287862f9dc8590fc4c37df", + "https://bcr.bazel.build/modules/protobuf/29.0-rc3/MODULE.bazel": "33c2dfa286578573afc55a7acaea3cada4122b9631007c594bf0729f41c8de92", + "https://bcr.bazel.build/modules/protobuf/29.0/MODULE.bazel": "319dc8bf4c679ff87e71b1ccfb5a6e90a6dbc4693501d471f48662ac46d04e4e", + "https://bcr.bazel.build/modules/protobuf/29.1/MODULE.bazel": "557c3457560ff49e122ed76c0bc3397a64af9574691cb8201b4e46d4ab2ecb95", + "https://bcr.bazel.build/modules/protobuf/29.3/MODULE.bazel": "77480eea5fb5541903e49683f24dc3e09f4a79e0eea247414887bb9fc0066e94", + "https://bcr.bazel.build/modules/protobuf/3.19.0/MODULE.bazel": "6b5fbb433f760a99a22b18b6850ed5784ef0e9928a72668b66e4d7ccd47db9b0", + "https://bcr.bazel.build/modules/protobuf/3.19.2/MODULE.bazel": "532ffe5f2186b69fdde039efe6df13ba726ff338c6bc82275ad433013fa10573", + "https://bcr.bazel.build/modules/protobuf/3.19.6/MODULE.bazel": "9233edc5e1f2ee276a60de3eaa47ac4132302ef9643238f23128fea53ea12858", + "https://bcr.bazel.build/modules/protobuf/31.1/MODULE.bazel": "379a389bb330b7b8c1cdf331cc90bf3e13de5614799b3b52cdb7c6f389f6b38e", + "https://bcr.bazel.build/modules/protobuf/32.1/MODULE.bazel": "89cd2866a9cb07fee9ff74c41ceace11554f32e0d849de4e23ac55515cfada4d", + "https://bcr.bazel.build/modules/protobuf/33.4/MODULE.bazel": "114775b816b38b6d0ca620450d6b02550c60ceedfdc8d9a229833b34a223dc42", + "https://bcr.bazel.build/modules/protobuf/34.1/MODULE.bazel": "41b4bf342b86021f7be1ee912cd140ef300fe527c4949b435f037cda74677f90", + "https://bcr.bazel.build/modules/protobuf/34.1/source.json": "9cf0686caa5d920a7e7c0401f76f075df76ea7ad7c064df442b6c029106a6d06", + "https://bcr.bazel.build/modules/pybind11_bazel/2.11.1/MODULE.bazel": "88af1c246226d87e65be78ed49ecd1e6f5e98648558c14ce99176da041dc378e", + "https://bcr.bazel.build/modules/pybind11_bazel/2.12.0/MODULE.bazel": "e6f4c20442eaa7c90d7190d8dc539d0ab422f95c65a57cc59562170c58ae3d34", + "https://bcr.bazel.build/modules/pybind11_bazel/3.0.0/MODULE.bazel": "a2bfa6020ed603a00d944161c63173c7f109774e99bee0c2cd8dbf24159f8134", + "https://bcr.bazel.build/modules/pybind11_bazel/3.0.0/source.json": "d8f5104d4c21d272bf327ebe44366fb0b4c036cdaa1f5cceb21a408ca4ef2ef8", + "https://bcr.bazel.build/modules/re2/2023-09-01/MODULE.bazel": "cb3d511531b16cfc78a225a9e2136007a48cf8a677e4264baeab57fe78a80206", + "https://bcr.bazel.build/modules/re2/2024-07-02.bcr.1/MODULE.bazel": "b4963dda9b31080be1905ef085ecd7dd6cd47c05c79b9cdf83ade83ab2ab271a", + "https://bcr.bazel.build/modules/re2/2024-07-02/MODULE.bazel": "0eadc4395959969297cbcf31a249ff457f2f1d456228c67719480205aa306daa", + "https://bcr.bazel.build/modules/re2/2025-11-05.bcr.1/MODULE.bazel": "3d9d4995833fc0334fc5c88b56a05288dd25d651544cd7b2233bbd6357bbeba0", + "https://bcr.bazel.build/modules/re2/2025-11-05.bcr.1/source.json": "7df1394aabda1c9bc188a302f5d54b1c657924edd04ebc57d2be29dbd7efd141", + "https://bcr.bazel.build/modules/rules_android/0.1.1/MODULE.bazel": "48809ab0091b07ad0182defb787c4c5328bd3a278938415c00a7b69b50c4d3a8", + "https://bcr.bazel.build/modules/rules_android/0.6.4/MODULE.bazel": "b4cde12d506dd65d82b2be39761f49f5797303343a3d5b4ee191c0cdf9ef387c", + "https://bcr.bazel.build/modules/rules_android/0.7.1/MODULE.bazel": "a806fc382a774252f228a40e3b11b9fcc6276f8778c7fb33e9f72937c6258363", + "https://bcr.bazel.build/modules/rules_android/0.7.1/source.json": "151440aed3f0f73a00d4ed5cec5d31f63a6fef9b95d8fab1eb1810150fa525f2", + "https://bcr.bazel.build/modules/rules_apple/3.16.0/MODULE.bazel": "0d1caf0b8375942ce98ea944be754a18874041e4e0459401d925577624d3a54a", + "https://bcr.bazel.build/modules/rules_apple/4.1.0/MODULE.bazel": "76e10fd4a48038d3fc7c5dc6e63b7063bbf5304a2e3bd42edda6ec660eebea68", + "https://bcr.bazel.build/modules/rules_buf/0.1.1/MODULE.bazel": "6189aec18a4f7caff599ad41b851ab7645d4f1e114aa6431acf9b0666eb92162", + "https://bcr.bazel.build/modules/rules_buf/0.5.2/MODULE.bazel": "5f2492d284ab9bedf2668178303abf5f3cd7d8cdf85d768951008e88456e9c6a", + "https://bcr.bazel.build/modules/rules_buf/0.5.2/source.json": "41876d4834c0832de4b393de6e55dfd1cb3b25d3109e4ba90eb7fb57c560e0d9", + "https://bcr.bazel.build/modules/rules_cc/0.0.1/MODULE.bazel": "cb2aa0747f84c6c3a78dad4e2049c154f08ab9d166b1273835a8174940365647", + "https://bcr.bazel.build/modules/rules_cc/0.0.10/MODULE.bazel": "ec1705118f7eaedd6e118508d3d26deba2a4e76476ada7e0e3965211be012002", + "https://bcr.bazel.build/modules/rules_cc/0.0.13/MODULE.bazel": "0e8529ed7b323dad0775ff924d2ae5af7640b23553dfcd4d34344c7e7a867191", + "https://bcr.bazel.build/modules/rules_cc/0.0.15/MODULE.bazel": "6704c35f7b4a72502ee81f61bf88706b54f06b3cbe5558ac17e2e14666cd5dcc", + "https://bcr.bazel.build/modules/rules_cc/0.0.16/MODULE.bazel": "7661303b8fc1b4d7f532e54e9d6565771fea666fbdf839e0a86affcd02defe87", + "https://bcr.bazel.build/modules/rules_cc/0.0.17/MODULE.bazel": "2ae1d8f4238ec67d7185d8861cb0a2cdf4bc608697c331b95bf990e69b62e64a", + "https://bcr.bazel.build/modules/rules_cc/0.0.2/MODULE.bazel": "6915987c90970493ab97393024c156ea8fb9f3bea953b2f3ec05c34f19b5695c", + "https://bcr.bazel.build/modules/rules_cc/0.0.6/MODULE.bazel": "abf360251023dfe3efcef65ab9d56beefa8394d4176dd29529750e1c57eaa33f", + "https://bcr.bazel.build/modules/rules_cc/0.0.8/MODULE.bazel": "964c85c82cfeb6f3855e6a07054fdb159aced38e99a5eecf7bce9d53990afa3e", + "https://bcr.bazel.build/modules/rules_cc/0.0.9/MODULE.bazel": "836e76439f354b89afe6a911a7adf59a6b2518fafb174483ad78a2a2fde7b1c5", + "https://bcr.bazel.build/modules/rules_cc/0.1.1/MODULE.bazel": "2f0222a6f229f0bf44cd711dc13c858dad98c62d52bd51d8fc3a764a83125513", + "https://bcr.bazel.build/modules/rules_cc/0.1.2/MODULE.bazel": "557ddc3a96858ec0d465a87c0a931054d7dcfd6583af2c7ed3baf494407fd8d0", + "https://bcr.bazel.build/modules/rules_cc/0.1.5/MODULE.bazel": "88dfc9361e8b5ae1008ac38f7cdfd45ad738e4fa676a3ad67d19204f045a1fd8", + "https://bcr.bazel.build/modules/rules_cc/0.2.0/MODULE.bazel": "b5c17f90458caae90d2ccd114c81970062946f49f355610ed89bebf954f5783c", + "https://bcr.bazel.build/modules/rules_cc/0.2.13/MODULE.bazel": "eecdd666eda6be16a8d9dc15e44b5c75133405e820f620a234acc4b1fdc5aa37", + "https://bcr.bazel.build/modules/rules_cc/0.2.14/MODULE.bazel": "353c99ed148887ee89c54a17d4100ae7e7e436593d104b668476019023b58df8", + "https://bcr.bazel.build/modules/rules_cc/0.2.16/MODULE.bazel": "9242fa89f950c6ef7702801ab53922e99c69b02310c39fb6e62b2bd30df2a1d4", + "https://bcr.bazel.build/modules/rules_cc/0.2.17/MODULE.bazel": "1849602c86cb60da8613d2de887f9566a6d354a6df6d7009f9d04a14402f9a84", + "https://bcr.bazel.build/modules/rules_cc/0.2.17/source.json": "3832f45d145354049137c0090df04629d9c2b5493dc5c2bf46f1834040133a07", + "https://bcr.bazel.build/modules/rules_cc/0.2.4/MODULE.bazel": "1ff1223dfd24f3ecf8f028446d4a27608aa43c3f41e346d22838a4223980b8cc", + "https://bcr.bazel.build/modules/rules_cc/0.2.8/MODULE.bazel": "f1df20f0bf22c28192a794f29b501ee2018fa37a3862a1a2132ae2940a23a642", + "https://bcr.bazel.build/modules/rules_cc/0.2.9/MODULE.bazel": "34263f1dca62ea664265438cef714d7db124c03e1ed55ebb4f1dc860164308d1", + "https://bcr.bazel.build/modules/rules_foreign_cc/0.9.0/MODULE.bazel": "c9e8c682bf75b0e7c704166d79b599f93b72cfca5ad7477df596947891feeef6", + "https://bcr.bazel.build/modules/rules_fuzzing/0.5.2/MODULE.bazel": "40c97d1144356f52905566c55811f13b299453a14ac7769dfba2ac38192337a8", + "https://bcr.bazel.build/modules/rules_go/0.33.0/MODULE.bazel": "a2b11b64cd24bf94f57454f53288a5dacfe6cb86453eee7761b7637728c1910c", + "https://bcr.bazel.build/modules/rules_go/0.38.1/MODULE.bazel": "fb8e73dd3b6fc4ff9d260ceacd830114891d49904f5bda1c16bc147bcc254f71", + "https://bcr.bazel.build/modules/rules_go/0.39.1/MODULE.bazel": "d34fb2a249403a5f4339c754f1e63dc9e5ad70b47c5e97faee1441fc6636cd61", + "https://bcr.bazel.build/modules/rules_go/0.41.0/MODULE.bazel": "55861d8e8bb0e62cbd2896f60ff303f62ffcb0eddb74ecb0e5c0cbe36fc292c8", + "https://bcr.bazel.build/modules/rules_go/0.42.0/MODULE.bazel": "8cfa875b9aa8c6fce2b2e5925e73c1388173ea3c32a0db4d2b4804b453c14270", + "https://bcr.bazel.build/modules/rules_go/0.46.0/MODULE.bazel": "3477df8bdcc49e698b9d25f734c4f3a9f5931ff34ee48a2c662be168f5f2d3fd", + "https://bcr.bazel.build/modules/rules_go/0.50.1/MODULE.bazel": "b91a308dc5782bb0a8021ad4330c81fea5bda77f96b9e4c117b9b9c8f6665ee0", + "https://bcr.bazel.build/modules/rules_go/0.51.0-rc2/MODULE.bazel": "edfc3a9cea7bedb0eaaff37b0d7817c1a4bf72b3c615580b0ffcee6c52690fd4", + "https://bcr.bazel.build/modules/rules_go/0.53.0/MODULE.bazel": "a4ed760d3ac0dbc0d7b967631a9a3fd9100d28f7d9fcf214b4df87d4bfff5f9a", + "https://bcr.bazel.build/modules/rules_go/0.59.0/MODULE.bazel": "b7e43e7414a3139a7547d1b4909b29085fbe5182b6c58cbe1ed4c6272815aeae", + "https://bcr.bazel.build/modules/rules_go/0.59.0/source.json": "1df17bb7865cfc029492c30163cee891d0dd8658ea0d5bfdf252c4b6db5c1ef6", + "https://bcr.bazel.build/modules/rules_java/4.0.0/MODULE.bazel": "5a78a7ae82cd1a33cef56dc578c7d2a46ed0dca12643ee45edbb8417899e6f74", + "https://bcr.bazel.build/modules/rules_java/5.3.5/MODULE.bazel": "a4ec4f2db570171e3e5eb753276ee4b389bae16b96207e9d3230895c99644b86", + "https://bcr.bazel.build/modules/rules_java/6.0.0/MODULE.bazel": "8a43b7df601a7ec1af61d79345c17b31ea1fedc6711fd4abfd013ea612978e39", + "https://bcr.bazel.build/modules/rules_java/6.3.0/MODULE.bazel": "a97c7678c19f236a956ad260d59c86e10a463badb7eb2eda787490f4c969b963", + "https://bcr.bazel.build/modules/rules_java/6.4.0/MODULE.bazel": "e986a9fe25aeaa84ac17ca093ef13a4637f6107375f64667a15999f77db6c8f6", + "https://bcr.bazel.build/modules/rules_java/6.5.2/MODULE.bazel": "1d440d262d0e08453fa0c4d8f699ba81609ed0e9a9a0f02cd10b3e7942e61e31", + "https://bcr.bazel.build/modules/rules_java/7.0.6/MODULE.bazel": "6ddb07d9857a1a3accc9f6d005f20c969c4659c7710e6269a51db3527e0ea969", + "https://bcr.bazel.build/modules/rules_java/7.1.0/MODULE.bazel": "30d9135a2b6561c761bd67bd4990da591e6bdc128790ce3e7afd6a3558b2fb64", + "https://bcr.bazel.build/modules/rules_java/7.10.0/MODULE.bazel": "530c3beb3067e870561739f1144329a21c851ff771cd752a49e06e3dc9c2e71a", + "https://bcr.bazel.build/modules/rules_java/7.12.2/MODULE.bazel": "579c505165ee757a4280ef83cda0150eea193eed3bef50b1004ba88b99da6de6", + "https://bcr.bazel.build/modules/rules_java/7.2.0/MODULE.bazel": "06c0334c9be61e6cef2c8c84a7800cef502063269a5af25ceb100b192453d4ab", + "https://bcr.bazel.build/modules/rules_java/7.3.2/MODULE.bazel": "50dece891cfdf1741ea230d001aa9c14398062f2b7c066470accace78e412bc2", + "https://bcr.bazel.build/modules/rules_java/7.4.0/MODULE.bazel": "a592852f8a3dd539e82ee6542013bf2cadfc4c6946be8941e189d224500a8934", + "https://bcr.bazel.build/modules/rules_java/7.6.0/MODULE.bazel": "14cd36d05b60aa53c345b5b436c1c4a1f1dec58e82e480ffb9657038e323d330", + "https://bcr.bazel.build/modules/rules_java/7.6.1/MODULE.bazel": "2f14b7e8a1aa2f67ae92bc69d1ec0fa8d9f827c4e17ff5e5f02e91caa3b2d0fe", + "https://bcr.bazel.build/modules/rules_java/8.3.2/MODULE.bazel": "7336d5511ad5af0b8615fdc7477535a2e4e723a357b6713af439fe8cf0195017", + "https://bcr.bazel.build/modules/rules_java/8.5.1/MODULE.bazel": "d8a9e38cc5228881f7055a6079f6f7821a073df3744d441978e7a43e20226939", + "https://bcr.bazel.build/modules/rules_java/8.6.0/MODULE.bazel": "9c064c434606d75a086f15ade5edb514308cccd1544c2b2a89bbac4310e41c71", + "https://bcr.bazel.build/modules/rules_java/8.6.1/MODULE.bazel": "f4808e2ab5b0197f094cabce9f4b006a27766beb6a9975931da07099560ca9c2", + "https://bcr.bazel.build/modules/rules_java/8.6.3/MODULE.bazel": "e90505b7a931d194245ffcfb6ff4ca8ef9d46b4e830d12e64817752e0198e2ed", + "https://bcr.bazel.build/modules/rules_java/8.9.0/MODULE.bazel": "e17c876cb53dcd817b7b7f0d2985b710610169729e8c371b2221cacdcd3dce4a", + "https://bcr.bazel.build/modules/rules_java/9.1.0/MODULE.bazel": "ee63f27e36a3fada80342869361182f120a9819c74320e8e65b1e04ba0cd7a9d", + "https://bcr.bazel.build/modules/rules_java/9.3.0/MODULE.bazel": "f657c72d65ac449caae9abf2e68e66c0d36f9416848c4c4903d0b3234229e7f2", + "https://bcr.bazel.build/modules/rules_java/9.6.1/MODULE.bazel": "6b0b7172ce598e37e31d1e24f2a492a5249b88304bd25b02b465ee22e3aa3752", + "https://bcr.bazel.build/modules/rules_java/9.6.1/source.json": "d577c30fe3005821ac39c6ed43eb5accc77ff67c7b80f4043101aef4b027a903", + "https://bcr.bazel.build/modules/rules_jvm_external/4.4.2/MODULE.bazel": "a56b85e418c83eb1839819f0b515c431010160383306d13ec21959ac412d2fe7", + "https://bcr.bazel.build/modules/rules_jvm_external/5.1/MODULE.bazel": "33f6f999e03183f7d088c9be518a63467dfd0be94a11d0055fe2d210f89aa909", + "https://bcr.bazel.build/modules/rules_jvm_external/5.2/MODULE.bazel": "d9351ba35217ad0de03816ef3ed63f89d411349353077348a45348b096615036", + "https://bcr.bazel.build/modules/rules_jvm_external/5.3/MODULE.bazel": "bf93870767689637164657731849fb887ad086739bd5d360d90007a581d5527d", + "https://bcr.bazel.build/modules/rules_jvm_external/6.1/MODULE.bazel": "75b5fec090dbd46cf9b7d8ea08cf84a0472d92ba3585b476f44c326eda8059c4", + "https://bcr.bazel.build/modules/rules_jvm_external/6.2/MODULE.bazel": "36a6e52487a855f33cb960724eb56547fa87e2c98a0474c3acad94339d7f8e99", + "https://bcr.bazel.build/modules/rules_jvm_external/6.3/MODULE.bazel": "c998e060b85f71e00de5ec552019347c8bca255062c990ac02d051bb80a38df0", + "https://bcr.bazel.build/modules/rules_jvm_external/6.6/MODULE.bazel": "153042249c7060536dc95b6bb9f9bb8063b8a0b0cb7acdb381bddbc2374aed55", + "https://bcr.bazel.build/modules/rules_jvm_external/6.7/MODULE.bazel": "e717beabc4d091ecb2c803c2d341b88590e9116b8bf7947915eeb33aab4f96dd", + "https://bcr.bazel.build/modules/rules_jvm_external/6.9/MODULE.bazel": "07c5db05527db7744a54fcffd653e1550d40e0540207a7f7e6d0a4de5bef8274", + "https://bcr.bazel.build/modules/rules_jvm_external/7.0/MODULE.bazel": "421482bdbcf05709f933c96b867a599deb517f2804ceb3e74511880610cfbf71", + "https://bcr.bazel.build/modules/rules_jvm_external/7.0/source.json": "714cd003eadf5be5c83268311fe8e951db39f802babeaddc536b3560dc8f6faf", + "https://bcr.bazel.build/modules/rules_kotlin/1.9.0/MODULE.bazel": "ef85697305025e5a61f395d4eaede272a5393cee479ace6686dba707de804d59", + "https://bcr.bazel.build/modules/rules_kotlin/1.9.5/MODULE.bazel": "043a16a572f610558ec2030db3ff0c9938574e7dd9f58bded1bb07c0192ef025", + "https://bcr.bazel.build/modules/rules_kotlin/1.9.6/MODULE.bazel": "d269a01a18ee74d0335450b10f62c9ed81f2321d7958a2934e44272fe82dcef3", + "https://bcr.bazel.build/modules/rules_kotlin/2.2.2/MODULE.bazel": "00d39c5e0fa78cd86193946265bb849e7878c24e44260f9525108428852b315c", + "https://bcr.bazel.build/modules/rules_kotlin/2.2.2/source.json": "7a32c2259c79ae0c9a036121f120de825e3ba5f0f3a209ffbbdccf4dc62489b9", + "https://bcr.bazel.build/modules/rules_license/0.0.3/MODULE.bazel": "627e9ab0247f7d1e05736b59dbb1b6871373de5ad31c3011880b4133cafd4bd0", + "https://bcr.bazel.build/modules/rules_license/0.0.7/MODULE.bazel": "088fbeb0b6a419005b89cf93fe62d9517c0a2b8bb56af3244af65ecfe37e7d5d", + "https://bcr.bazel.build/modules/rules_license/0.0.8/MODULE.bazel": "5669c6fe49b5134dbf534db681ad3d67a2d49cfc197e4a95f1ca2fd7f3aebe96", + "https://bcr.bazel.build/modules/rules_license/1.0.0/MODULE.bazel": "a7fda60eefdf3d8c827262ba499957e4df06f659330bbe6cdbdb975b768bb65c", + "https://bcr.bazel.build/modules/rules_license/1.0.0/source.json": "a52c89e54cc311196e478f8382df91c15f7a2bfdf4c6cd0e2675cc2ff0b56efb", + "https://bcr.bazel.build/modules/rules_multirun/0.9.0/MODULE.bazel": "32d628ef586b5b23f67e55886b7bc38913ea4160420d66ae90521dda2ff37df0", + "https://bcr.bazel.build/modules/rules_multirun/0.9.0/source.json": "e882ba77962fa6c5fe68619e5c7d0374ec9a219fb8d03c42eadaf6d0243771bd", + "https://bcr.bazel.build/modules/rules_multitool/0.11.0/MODULE.bazel": "8d9dda78d2398e136300d3ef4fbcc89ede7c32c158d8c016fa7d032df41c4aaf", + "https://bcr.bazel.build/modules/rules_multitool/0.11.0/source.json": "0b86574a1eaff37c33aafaff095ea16d6ac846beb94ffc74c4fcf626f8f80681", + "https://bcr.bazel.build/modules/rules_nodejs/5.8.2/MODULE.bazel": "6bc03c8f37f69401b888023bf511cb6ee4781433b0cb56236b2e55a21e3a026a", + "https://bcr.bazel.build/modules/rules_nodejs/6.7.3/MODULE.bazel": "c22a48b2a0dbf05a9dc5f83837bbc24c226c1f6e618de3c3a610044c9f336056", + "https://bcr.bazel.build/modules/rules_nodejs/6.7.3/source.json": "a3f966f4415a8a6545e560ee5449eac95cc633f96429d08e87c87775c72f5e09", + "https://bcr.bazel.build/modules/rules_pkg/0.7.0/MODULE.bazel": "df99f03fc7934a4737122518bb87e667e62d780b610910f0447665a7e2be62dc", + "https://bcr.bazel.build/modules/rules_pkg/1.0.1/MODULE.bazel": "5b1df97dbc29623bccdf2b0dcd0f5cb08e2f2c9050aab1092fd39a41e82686ff", + "https://bcr.bazel.build/modules/rules_pkg/1.0.1/source.json": "bd82e5d7b9ce2d31e380dd9f50c111d678c3bdaca190cb76b0e1c71b05e1ba8a", + "https://bcr.bazel.build/modules/rules_proto/4.0.0/MODULE.bazel": "a7a7b6ce9bee418c1a760b3d84f83a299ad6952f9903c67f19e4edd964894e06", + "https://bcr.bazel.build/modules/rules_proto/5.3.0-21.7/MODULE.bazel": "e8dff86b0971688790ae75528fe1813f71809b5afd57facb44dad9e8eca631b7", + "https://bcr.bazel.build/modules/rules_proto/6.0.0-rc1/MODULE.bazel": "1e5b502e2e1a9e825eef74476a5a1ee524a92297085015a052510b09a1a09483", + "https://bcr.bazel.build/modules/rules_proto/6.0.0/MODULE.bazel": "b531d7f09f58dce456cd61b4579ce8c86b38544da75184eadaf0a7cb7966453f", + "https://bcr.bazel.build/modules/rules_proto/6.0.2/MODULE.bazel": "ce916b775a62b90b61888052a416ccdda405212b6aaeb39522f7dc53431a5e73", + "https://bcr.bazel.build/modules/rules_proto/7.0.2/MODULE.bazel": "bf81793bd6d2ad89a37a40693e56c61b0ee30f7a7fdbaf3eabbf5f39de47dea2", + "https://bcr.bazel.build/modules/rules_proto/7.1.0/MODULE.bazel": "002d62d9108f75bb807cd56245d45648f38275cb3a99dcd45dfb864c5d74cb96", + "https://bcr.bazel.build/modules/rules_proto/7.1.0/source.json": "39f89066c12c24097854e8f57ab8558929f9c8d474d34b2c00ac04630ad8940e", + "https://bcr.bazel.build/modules/rules_python/0.10.2/MODULE.bazel": "cc82bc96f2997baa545ab3ce73f196d040ffb8756fd2d66125a530031cd90e5f", + "https://bcr.bazel.build/modules/rules_python/0.23.1/MODULE.bazel": "49ffccf0511cb8414de28321f5fcf2a31312b47c40cc21577144b7447f2bf300", + "https://bcr.bazel.build/modules/rules_python/0.25.0/MODULE.bazel": "72f1506841c920a1afec76975b35312410eea3aa7b63267436bfb1dd91d2d382", + "https://bcr.bazel.build/modules/rules_python/0.26.0/MODULE.bazel": "42cb98cd15954e83b96b540dcc6d5a618eb061f056147ac4ea46e687a066a7c7", + "https://bcr.bazel.build/modules/rules_python/0.27.1/MODULE.bazel": "65dc875cc1a06c30d5bbdba7ab021fd9e551a6579e408a3943a61303e2228a53", + "https://bcr.bazel.build/modules/rules_python/0.28.0/MODULE.bazel": "cba2573d870babc976664a912539b320cbaa7114cd3e8f053c720171cde331ed", + "https://bcr.bazel.build/modules/rules_python/0.31.0/MODULE.bazel": "93a43dc47ee570e6ec9f5779b2e64c1476a6ce921c48cc9a1678a91dd5f8fd58", + "https://bcr.bazel.build/modules/rules_python/0.33.2/MODULE.bazel": "3e036c4ad8d804a4dad897d333d8dce200d943df4827cb849840055be8d2e937", + "https://bcr.bazel.build/modules/rules_python/0.37.1/MODULE.bazel": "3faeb2d9fa0a81f8980643ee33f212308f4d93eea4b9ce6f36d0b742e71e9500", + "https://bcr.bazel.build/modules/rules_python/0.37.2/MODULE.bazel": "b5ffde91410745750b6c13be1c5dc4555ef5bc50562af4a89fd77807fdde626a", + "https://bcr.bazel.build/modules/rules_python/0.4.0/MODULE.bazel": "9208ee05fd48bf09ac60ed269791cf17fb343db56c8226a720fbb1cdf467166c", + "https://bcr.bazel.build/modules/rules_python/1.0.0/MODULE.bazel": "898a3d999c22caa585eb062b600f88654bf92efb204fa346fb55f6f8edffca43", + "https://bcr.bazel.build/modules/rules_python/1.3.0/MODULE.bazel": "8361d57eafb67c09b75bf4bbe6be360e1b8f4f18118ab48037f2bd50aa2ccb13", + "https://bcr.bazel.build/modules/rules_python/1.4.1/MODULE.bazel": "8991ad45bdc25018301d6b7e1d3626afc3c8af8aaf4bc04f23d0b99c938b73a6", + "https://bcr.bazel.build/modules/rules_python/1.6.0/MODULE.bazel": "7e04ad8f8d5bea40451cf80b1bd8262552aa73f841415d20db96b7241bd027d8", + "https://bcr.bazel.build/modules/rules_python/1.6.3/MODULE.bazel": "a7b80c42cb3de5ee2a5fa1abc119684593704fcd2fec83165ebe615dec76574f", + "https://bcr.bazel.build/modules/rules_python/1.7.0/MODULE.bazel": "d01f995ecd137abf30238ad9ce97f8fc3ac57289c8b24bd0bf53324d937a14f8", + "https://bcr.bazel.build/modules/rules_python/1.7.0/source.json": "028a084b65dcf8f4dc4f82f8778dbe65df133f234b316828a82e060d81bdce32", + "https://bcr.bazel.build/modules/rules_robolectric/4.14.1.2/MODULE.bazel": "d44fec647d0aeb67b9f3b980cf68ba634976f3ae7ccd6c07d790b59b87a4f251", + "https://bcr.bazel.build/modules/rules_robolectric/4.14.1.2/source.json": "37c10335f2361c337c5c1f34ed36d2da70534c23088062b33a8bdaab68aa9dea", + "https://bcr.bazel.build/modules/rules_rust/0.45.1/MODULE.bazel": "a69d0db3a958fab2c6520961e1b2287afcc8b36690fd31bbc4f6f7391397150d", + "https://bcr.bazel.build/modules/rules_rust/0.67.0/MODULE.bazel": "87c3816c4321352dcfd9e9e26b58e84efc5b21351ae3ef8fb5d0d57bde7237f5", + "https://bcr.bazel.build/modules/rules_rust/0.67.0/source.json": "a8ef4d3be30eb98e060cad9e5875a55b603195487f76e01b619b51a1df4641cc", + "https://bcr.bazel.build/modules/rules_scala/7.2.4/MODULE.bazel": "12f23fa4ab6ec5c32ea6d16991d33903ab2e6817a2dba4bf20ee1c3c0cbad228", + "https://bcr.bazel.build/modules/rules_scala/7.2.4/source.json": "a54b3306e4dd935b3514a38f914e2a2075e6047861e5b0674fb53955b40d5e6d", + "https://bcr.bazel.build/modules/rules_shell/0.1.2/MODULE.bazel": "66e4ca3ce084b04af0b9ff05ff14cab4e5df7503973818bb91cbc6cda08d32fc", + "https://bcr.bazel.build/modules/rules_shell/0.2.0/MODULE.bazel": "fda8a652ab3c7d8fee214de05e7a9916d8b28082234e8d2c0094505c5268ed3c", + "https://bcr.bazel.build/modules/rules_shell/0.3.0/MODULE.bazel": "de4402cd12f4cc8fda2354fce179fdb068c0b9ca1ec2d2b17b3e21b24c1a937b", + "https://bcr.bazel.build/modules/rules_shell/0.4.1/MODULE.bazel": "00e501db01bbf4e3e1dd1595959092c2fadf2087b2852d3f553b5370f5633592", + "https://bcr.bazel.build/modules/rules_shell/0.5.0/MODULE.bazel": "8c8447370594d45539f66858b602b0bb2cb2d3401a4ebb9ad25830c59c0f366d", + "https://bcr.bazel.build/modules/rules_shell/0.6.1/MODULE.bazel": "72e76b0eea4e81611ef5452aa82b3da34caca0c8b7b5c0c9584338aa93bae26b", + "https://bcr.bazel.build/modules/rules_shell/0.6.1/source.json": "20ec05cd5e592055e214b2da8ccb283c7f2a421ea0dc2acbf1aa792e11c03d0c", + "https://bcr.bazel.build/modules/rules_swift/1.16.0/MODULE.bazel": "4a09f199545a60d09895e8281362b1ff3bb08bbde69c6fc87aff5b92fcc916ca", + "https://bcr.bazel.build/modules/rules_swift/2.1.1/MODULE.bazel": "494900a80f944fc7aa61500c2073d9729dff0b764f0e89b824eb746959bc1046", + "https://bcr.bazel.build/modules/rules_swift/2.4.0/MODULE.bazel": "1639617eb1ede28d774d967a738b4a68b0accb40650beadb57c21846beab5efd", + "https://bcr.bazel.build/modules/rules_swift/3.1.2/MODULE.bazel": "72c8f5cf9d26427cee6c76c8e3853eb46ce6b0412a081b2b6db6e8ad56267400", + "https://bcr.bazel.build/modules/stardoc/0.5.0/MODULE.bazel": "f9f1f46ba8d9c3362648eea571c6f9100680efc44913618811b58cc9c02cd678", + "https://bcr.bazel.build/modules/stardoc/0.5.1/MODULE.bazel": "1a05d92974d0c122f5ccf09291442580317cdd859f07a8655f1db9a60374f9f8", + "https://bcr.bazel.build/modules/stardoc/0.5.3/MODULE.bazel": "c7f6948dae6999bf0db32c1858ae345f112cacf98f174c7a8bb707e41b974f1c", + "https://bcr.bazel.build/modules/stardoc/0.5.4/MODULE.bazel": "6569966df04610b8520957cb8e97cf2e9faac2c0309657c537ab51c16c18a2a4", + "https://bcr.bazel.build/modules/stardoc/0.5.6/MODULE.bazel": "c43dabc564990eeab55e25ed61c07a1aadafe9ece96a4efabb3f8bf9063b71ef", + "https://bcr.bazel.build/modules/stardoc/0.6.2/MODULE.bazel": "7060193196395f5dd668eda046ccbeacebfd98efc77fed418dbe2b82ffaa39fd", + "https://bcr.bazel.build/modules/stardoc/0.7.0/MODULE.bazel": "05e3d6d30c099b6770e97da986c53bd31844d7f13d41412480ea265ac9e8079c", + "https://bcr.bazel.build/modules/stardoc/0.7.1/MODULE.bazel": "3548faea4ee5dda5580f9af150e79d0f6aea934fc60c1cc50f4efdd9420759e7", + "https://bcr.bazel.build/modules/stardoc/0.7.2/MODULE.bazel": "fc152419aa2ea0f51c29583fab1e8c99ddefd5b3778421845606ee628629e0e5", + "https://bcr.bazel.build/modules/stardoc/0.7.2/source.json": "58b029e5e901d6802967754adf0a9056747e8176f017cfe3607c0851f4d42216", + "https://bcr.bazel.build/modules/swift_argument_parser/1.3.1.1/MODULE.bazel": "5e463fbfba7b1701d957555ed45097d7f984211330106ccd1352c6e0af0dcf91", + "https://bcr.bazel.build/modules/swift_argument_parser/1.3.1.2/MODULE.bazel": "75aab2373a4bbe2a1260b9bf2a1ebbdbf872d3bd36f80bff058dccd82e89422f", + "https://bcr.bazel.build/modules/tar.bzl/0.2.1/MODULE.bazel": "52d1c00a80a8cc67acbd01649e83d8dd6a9dc426a6c0b754a04fe8c219c76468", + "https://bcr.bazel.build/modules/tar.bzl/0.5.1/MODULE.bazel": "7c2eb3dcfc53b0f3d6f9acdfd911ca803eaf92aadf54f8ca6e4c1f3aee288351", + "https://bcr.bazel.build/modules/tar.bzl/0.5.1/source.json": "deed3094f7cc779ed1d37a68403847b0e38d9dd9d931e03cb90825f3368b515f", + "https://bcr.bazel.build/modules/toml.bzl/0.3.0/MODULE.bazel": "5016e5dd1ad2200e119a4b28b2b3935e276c4b480f2fe3e952bea7eeba88f578", + "https://bcr.bazel.build/modules/toml.bzl/0.3.0/source.json": "0cf7c878c419b37ddb55f3dd93dd7c0c409bd7c4efacb3da504e0748780b2fa9", + "https://bcr.bazel.build/modules/upb/0.0.0-20220923-a547704/MODULE.bazel": "7298990c00040a0e2f121f6c32544bab27d4452f80d9ce51349b1a28f3005c43", + "https://bcr.bazel.build/modules/upb/0.0.0-20230516-61a97ef/MODULE.bazel": "c0df5e35ad55e264160417fd0875932ee3c9dda63d9fccace35ac62f45e1b6f9", + "https://bcr.bazel.build/modules/yq.bzl/0.1.1/MODULE.bazel": "9039681f9bcb8958ee2c87ffc74bdafba9f4369096a2b5634b88abc0eaefa072", + "https://bcr.bazel.build/modules/yq.bzl/0.1.1/source.json": "2d2bad780a9f2b9195a4a370314d2c17ae95eaa745cefc2e12fbc49759b15aa3", + "https://bcr.bazel.build/modules/zlib/1.2.11/MODULE.bazel": "07b389abc85fdbca459b69e2ec656ae5622873af3f845e1c9d80fe179f3effa0", + "https://bcr.bazel.build/modules/zlib/1.2.12/MODULE.bazel": "3b1a8834ada2a883674be8cbd36ede1b6ec481477ada359cd2d3ddc562340b27", + "https://bcr.bazel.build/modules/zlib/1.3.1.bcr.5/MODULE.bazel": "eec517b5bbe5492629466e11dae908d043364302283de25581e3eb944326c4ca", + "https://bcr.bazel.build/modules/zlib/1.3.1.bcr.5/source.json": "22bc55c47af97246cfc093d0acf683a7869377de362b5d1c552c2c2e16b7a806", + "https://bcr.bazel.build/modules/zlib/1.3.1/MODULE.bazel": "751c9940dcfe869f5f7274e1295422a34623555916eb98c174c1e945594bf198" + }, + "selectedYankedVersions": {}, + "moduleExtensions": { + "@@aspect_rules_js+//npm:extensions.bzl%pnpm": { + "general": { + "bzlTransitiveDigest": "NoKJK2nhdY2qPq1PrRxfbpdE/MIt3808NO2QI7vdBt4=", + "usagesDigest": "ZYGEy1FrDUNPBzAzD+ujlHkMEsVPMYOvpHm9RhUexUE=", + "recordedInputs": [ + "REPO_MAPPING:aspect_bazel_lib+,bazel_lib bazel_lib+", + "REPO_MAPPING:aspect_bazel_lib+,bazel_skylib bazel_skylib+", + "REPO_MAPPING:aspect_bazel_lib+,bazel_tools bazel_tools", + "REPO_MAPPING:aspect_rules_js+,aspect_bazel_lib aspect_bazel_lib+", + "REPO_MAPPING:aspect_rules_js+,bazel_features bazel_features+", + "REPO_MAPPING:aspect_rules_js+,bazel_skylib bazel_skylib+", + "REPO_MAPPING:aspect_rules_js+,bazel_tools bazel_tools", + "REPO_MAPPING:bazel_features+,bazel_tools bazel_tools", + "REPO_MAPPING:bazel_lib+,bazel_tools bazel_tools" + ], + "generatedRepoSpecs": { + "pnpm": { + "repoRuleId": "@@aspect_rules_js+//npm/private:npm_import.bzl%npm_import_rule", + "attributes": { + "package": "pnpm", + "version": "8.6.7", + "root_package": "", + "link_workspace": "", + "link_packages": {}, + "integrity": "sha512-vRIWpD/L4phf9Bk2o/O2TDR8fFoJnpYrp2TKqTIZF/qZ2/rgL3qKXzHofHgbXsinwMoSEigz28sqk3pQ+yMEQQ==", + "url": "", + "commit": "", + "patch_args": [ + "-p0" + ], + "patches": [], + "custom_postinstall": "", + "npm_auth": "", + "npm_auth_basic": "", + "npm_auth_username": "", + "npm_auth_password": "", + "lifecycle_hooks": [], + "extra_build_content": "load(\"@aspect_rules_js//js:defs.bzl\", \"js_binary\")\njs_binary(name = \"pnpm\", data = glob([\"package/**\"]), entry_point = \"package/dist/pnpm.cjs\", visibility = [\"//visibility:public\"])", + "extract_full_archive": true + } + }, + "pnpm__links": { + "repoRuleId": "@@aspect_rules_js+//npm/private:npm_import.bzl%npm_import_links", + "attributes": { + "package": "pnpm", + "version": "8.6.7", + "dev": false, + "root_package": "", + "link_packages": {}, + "deps": {}, + "transitive_closure": {}, + "lifecycle_build_target": false, + "lifecycle_hooks_env": [], + "lifecycle_hooks_execution_requirements": [ + "no-sandbox" + ], + "lifecycle_hooks_use_default_shell_env": false, + "bins": {}, + "package_visibility": [ + "//visibility:public" + ] + } + } + } + } + }, + "@@aspect_tools_telemetry+//:extension.bzl%telemetry": { + "general": { + "bzlTransitiveDigest": "cl5A2O84vDL6Tt+Qga8FCj1DUDGqn+e7ly5rZ+4xvcc=", + "usagesDigest": "z1YJrufKJsDmD436ZzCjIchZxFrQaNUsCeY5kiMNy6s=", + "recordedInputs": [ + "REPO_MAPPING:aspect_tools_telemetry+,bazel_lib bazel_lib+", + "REPO_MAPPING:aspect_tools_telemetry+,bazel_skylib bazel_skylib+" + ], + "generatedRepoSpecs": { + "aspect_tools_telemetry_report": { + "repoRuleId": "@@aspect_tools_telemetry+//:extension.bzl%tel_repository", + "attributes": { + "deps": { + "aspect_rules_lint": "2.5.2", + "aspect_tools_telemetry": "0.3.3" + } + } + } + } + } + }, + "@@protobuf+//python/dist:system_python.bzl%system_python_extension": { + "general": { + "bzlTransitiveDigest": "qh0n9IrXU/xS94wxKQrG1J63zrLkA1Wy2Y3BQxptPcI=", + "usagesDigest": "AF5a9lHFrJtHw1GTt3jJOs7ZYl1+N2bkn1LbPFLoguA=", + "recordedInputs": [], + "generatedRepoSpecs": { + "system_python": { + "repoRuleId": "@@protobuf+//python/dist:system_python.bzl%system_python", + "attributes": { + "minimum_python_version": "3.9" + } + } + } + } + }, + "@@rules_android+//bzlmod_extensions:apksig.bzl%apksig_extension": { + "general": { + "bzlTransitiveDigest": "IiT2UgJGnHaKiyP2A1yh3U/QWN4W9g/Byolrm78hC/s=", + "usagesDigest": "zr/niBQ/s2fHozWAsg4vI70wAxcuFjG+QtM15qGkq9o=", + "recordedInputs": [ + "REPO_MAPPING:rules_android+,bazel_tools bazel_tools" + ], + "generatedRepoSpecs": { + "apksig": { + "repoRuleId": "@@bazel_tools//tools/build_defs/repo:http.bzl%http_archive", + "attributes": { + "url": "https://android.googlesource.com/platform/tools/apksig/+archive/24e3075e68ebe17c0b529bb24bfda819db5e2f3b.tar.gz", + "build_file": "@@rules_android+//bzlmod_extensions:apksig.BUILD" + } + } + } + } + }, + "@@rules_android+//bzlmod_extensions:com_android_dex.bzl%com_android_dex_extension": { + "general": { + "bzlTransitiveDigest": "toD4gOZwGNfBEM+xec6eRi3BM2Z9EZ4oQrORZQH3sNY=", + "usagesDigest": "c1Y/KGGjUYCyd8zNIVTUh1bynVXRFz6xGKaSCBpQANM=", + "recordedInputs": [ + "REPO_MAPPING:rules_android+,bazel_tools bazel_tools" + ], + "generatedRepoSpecs": { + "com_android_dex": { + "repoRuleId": "@@bazel_tools//tools/build_defs/repo:http.bzl%http_archive", + "attributes": { + "url": "https://android.googlesource.com/platform/dalvik/+archive/5a81c499a569731e2395f7c8d13c0e0d4e17a2b6.tar.gz", + "build_file": "@@rules_android+//bzlmod_extensions:com_android_dex.BUILD" + } + } + } + } + }, + "@@rules_android+//rules/android_sdk_repository:rule.bzl%android_sdk_repository_extension": { + "general": { + "bzlTransitiveDigest": "+rMrzIrv7sImYmkbXJYv+gFpTJQ79X3MpwwMLI2A+oA=", + "usagesDigest": "iEGI2aNDMkHt9LXCdViLNUUOslpiVj2DrevWWXZEFnU=", + "recordedInputs": [], + "generatedRepoSpecs": { + "androidsdk": { + "repoRuleId": "@@rules_android+//rules/android_sdk_repository:rule.bzl%_android_sdk_repository", + "attributes": {} + } + } + } + }, + "@@rules_buf+//buf:extensions.bzl%buf": { + "general": { + "bzlTransitiveDigest": "dSWqckK2ILN7aDIDHfv+Qrl1fb1hF7o7MDXY6T8C41s=", + "usagesDigest": "vxN6C2h72rUERbAmd1476FWpxdxo1NhYoY5JSFXJT3g=", + "recordedInputs": [ + "REPO_MAPPING:rules_buf+,bazel_tools bazel_tools" + ], + "generatedRepoSpecs": { + "rules_buf_toolchains": { + "repoRuleId": "@@rules_buf+//buf/internal:toolchain.bzl%buf_download_releases", + "attributes": { + "version": "v1.47.2", + "sha256": "1b37b75dc0a777a0cba17fa2604bc9906e55bb4c578823d8b7a8fe3fc9fe4439" + } + } + } + } + }, + "@@rules_multitool+//multitool:extension.bzl%multitool": { + "general": { + "bzlTransitiveDigest": "4avMykFfU7yKLcNGDrP0DjyoXjCsFZPCwsEYp3ik6dA=", + "usagesDigest": "ZVm5YLWTHZE8lFq+UcA2T2lhKEur8bIVk9tvjn8SO2U=", + "recordedInputs": [ + "REPO_MAPPING:bazel_features+,bazel_features_globals bazel_features++version_extension+bazel_features_globals", + "REPO_MAPPING:bazel_features+,bazel_features_version bazel_features++version_extension+bazel_features_version", + "REPO_MAPPING:rules_multitool+,bazel_features bazel_features+" + ], + "generatedRepoSpecs": { + "multitool.linux_arm64": { + "repoRuleId": "@@rules_multitool+//multitool/private:multitool.bzl%_env_specific_tools", + "attributes": { + "lockfiles": [ + "@@aspect_rules_lint+//format:multitool.lock.json", + "@@aspect_rules_lint+//lint:multitool.lock.json" + ], + "os": "linux", + "cpu": "arm64" + } + }, + "multitool.linux_x86_64": { + "repoRuleId": "@@rules_multitool+//multitool/private:multitool.bzl%_env_specific_tools", + "attributes": { + "lockfiles": [ + "@@aspect_rules_lint+//format:multitool.lock.json", + "@@aspect_rules_lint+//lint:multitool.lock.json" + ], + "os": "linux", + "cpu": "x86_64" + } + }, + "multitool.macos_arm64": { + "repoRuleId": "@@rules_multitool+//multitool/private:multitool.bzl%_env_specific_tools", + "attributes": { + "lockfiles": [ + "@@aspect_rules_lint+//format:multitool.lock.json", + "@@aspect_rules_lint+//lint:multitool.lock.json" + ], + "os": "macos", + "cpu": "arm64" + } + }, + "multitool.macos_x86_64": { + "repoRuleId": "@@rules_multitool+//multitool/private:multitool.bzl%_env_specific_tools", + "attributes": { + "lockfiles": [ + "@@aspect_rules_lint+//format:multitool.lock.json", + "@@aspect_rules_lint+//lint:multitool.lock.json" + ], + "os": "macos", + "cpu": "x86_64" + } + }, + "multitool.windows_arm64": { + "repoRuleId": "@@rules_multitool+//multitool/private:multitool.bzl%_env_specific_tools", + "attributes": { + "lockfiles": [ + "@@aspect_rules_lint+//format:multitool.lock.json", + "@@aspect_rules_lint+//lint:multitool.lock.json" + ], + "os": "windows", + "cpu": "arm64" + } + }, + "multitool.windows_x86_64": { + "repoRuleId": "@@rules_multitool+//multitool/private:multitool.bzl%_env_specific_tools", + "attributes": { + "lockfiles": [ + "@@aspect_rules_lint+//format:multitool.lock.json", + "@@aspect_rules_lint+//lint:multitool.lock.json" + ], + "os": "windows", + "cpu": "x86_64" + } + }, + "multitool": { + "repoRuleId": "@@rules_multitool+//multitool/private:multitool.bzl%_multitool_hub", + "attributes": { + "lockfiles": [ + "@@aspect_rules_lint+//format:multitool.lock.json", + "@@aspect_rules_lint+//lint:multitool.lock.json" + ] + } + } + } + } + }, + "@@rules_nodejs+//nodejs:extensions.bzl%node": { + "general": { + "bzlTransitiveDigest": "4pUxCNc22K4I+6+4Nxu52Hur12tFRfa1JMsN5mdDv60=", + "usagesDigest": "8XPUny1bxzJ7obP0mjmmW7ro7QqiDbWpganfU+uF27Q=", + "recordedInputs": [], + "generatedRepoSpecs": { + "nodejs_linux_amd64": { + "repoRuleId": "@@rules_nodejs+//nodejs:repositories.bzl%_nodejs_repositories", + "attributes": { + "node_download_auth": {}, + "node_repositories": {}, + "node_urls": [ + "https://nodejs.org/dist/v{version}/{filename}" + ], + "node_version": "22.22.0", + "include_headers": false, + "platform": "linux_amd64" + } + }, + "nodejs_linux_arm64": { + "repoRuleId": "@@rules_nodejs+//nodejs:repositories.bzl%_nodejs_repositories", + "attributes": { + "node_download_auth": {}, + "node_repositories": {}, + "node_urls": [ + "https://nodejs.org/dist/v{version}/{filename}" + ], + "node_version": "22.22.0", + "include_headers": false, + "platform": "linux_arm64" + } + }, + "nodejs_linux_s390x": { + "repoRuleId": "@@rules_nodejs+//nodejs:repositories.bzl%_nodejs_repositories", + "attributes": { + "node_download_auth": {}, + "node_repositories": {}, + "node_urls": [ + "https://nodejs.org/dist/v{version}/{filename}" + ], + "node_version": "22.22.0", + "include_headers": false, + "platform": "linux_s390x" + } + }, + "nodejs_linux_ppc64le": { + "repoRuleId": "@@rules_nodejs+//nodejs:repositories.bzl%_nodejs_repositories", + "attributes": { + "node_download_auth": {}, + "node_repositories": {}, + "node_urls": [ + "https://nodejs.org/dist/v{version}/{filename}" + ], + "node_version": "22.22.0", + "include_headers": false, + "platform": "linux_ppc64le" + } + }, + "nodejs_darwin_amd64": { + "repoRuleId": "@@rules_nodejs+//nodejs:repositories.bzl%_nodejs_repositories", + "attributes": { + "node_download_auth": {}, + "node_repositories": {}, + "node_urls": [ + "https://nodejs.org/dist/v{version}/{filename}" + ], + "node_version": "22.22.0", + "include_headers": false, + "platform": "darwin_amd64" + } + }, + "nodejs_darwin_arm64": { + "repoRuleId": "@@rules_nodejs+//nodejs:repositories.bzl%_nodejs_repositories", + "attributes": { + "node_download_auth": {}, + "node_repositories": {}, + "node_urls": [ + "https://nodejs.org/dist/v{version}/{filename}" + ], + "node_version": "22.22.0", + "include_headers": false, + "platform": "darwin_arm64" + } + }, + "nodejs_windows_amd64": { + "repoRuleId": "@@rules_nodejs+//nodejs:repositories.bzl%_nodejs_repositories", + "attributes": { + "node_download_auth": {}, + "node_repositories": {}, + "node_urls": [ + "https://nodejs.org/dist/v{version}/{filename}" + ], + "node_version": "22.22.0", + "include_headers": false, + "platform": "windows_amd64" + } + }, + "nodejs_windows_arm64": { + "repoRuleId": "@@rules_nodejs+//nodejs:repositories.bzl%_nodejs_repositories", + "attributes": { + "node_download_auth": {}, + "node_repositories": {}, + "node_urls": [ + "https://nodejs.org/dist/v{version}/{filename}" + ], + "node_version": "22.22.0", + "include_headers": false, + "platform": "windows_arm64" + } + }, + "nodejs": { + "repoRuleId": "@@rules_nodejs+//nodejs/private:nodejs_repo_host_os_alias.bzl%nodejs_repo_host_os_alias", + "attributes": { + "user_node_repository_name": "nodejs" + } + }, + "nodejs_host": { + "repoRuleId": "@@rules_nodejs+//nodejs/private:nodejs_repo_host_os_alias.bzl%nodejs_repo_host_os_alias", + "attributes": { + "user_node_repository_name": "nodejs" + } + }, + "nodejs_toolchains": { + "repoRuleId": "@@rules_nodejs+//nodejs/private:nodejs_toolchains_repo.bzl%nodejs_toolchains_repo", + "attributes": { + "user_node_repository_name": "nodejs" + } + } + } + } + }, + "@@rules_python+//python/extensions:config.bzl%config": { + "general": { + "bzlTransitiveDigest": "iibnRYgg8LpcfmH7EAnVwYePC3jsVaJ6Id8XxUjSZps=", + "usagesDigest": "ZVSXMAGpD+xzVNPuvF1IoLBkty7TROO0+akMapt1pAg=", + "recordedInputs": [ + "REPO_MAPPING:rules_python+,bazel_tools bazel_tools", + "REPO_MAPPING:rules_python+,pypi__build rules_python++config+pypi__build", + "REPO_MAPPING:rules_python+,pypi__click rules_python++config+pypi__click", + "REPO_MAPPING:rules_python+,pypi__colorama rules_python++config+pypi__colorama", + "REPO_MAPPING:rules_python+,pypi__importlib_metadata rules_python++config+pypi__importlib_metadata", + "REPO_MAPPING:rules_python+,pypi__installer rules_python++config+pypi__installer", + "REPO_MAPPING:rules_python+,pypi__more_itertools rules_python++config+pypi__more_itertools", + "REPO_MAPPING:rules_python+,pypi__packaging rules_python++config+pypi__packaging", + "REPO_MAPPING:rules_python+,pypi__pep517 rules_python++config+pypi__pep517", + "REPO_MAPPING:rules_python+,pypi__pip rules_python++config+pypi__pip", + "REPO_MAPPING:rules_python+,pypi__pip_tools rules_python++config+pypi__pip_tools", + "REPO_MAPPING:rules_python+,pypi__pyproject_hooks rules_python++config+pypi__pyproject_hooks", + "REPO_MAPPING:rules_python+,pypi__setuptools rules_python++config+pypi__setuptools", + "REPO_MAPPING:rules_python+,pypi__tomli rules_python++config+pypi__tomli", + "REPO_MAPPING:rules_python+,pypi__wheel rules_python++config+pypi__wheel", + "REPO_MAPPING:rules_python+,pypi__zipp rules_python++config+pypi__zipp" + ], + "generatedRepoSpecs": { + "rules_python_internal": { + "repoRuleId": "@@rules_python+//python/private:internal_config_repo.bzl%internal_config_repo", + "attributes": { + "transition_setting_generators": {}, + "transition_settings": [] + } + }, + "pypi__build": { + "repoRuleId": "@@bazel_tools//tools/build_defs/repo:http.bzl%http_archive", + "attributes": { + "url": "https://files.pythonhosted.org/packages/e2/03/f3c8ba0a6b6e30d7d18c40faab90807c9bb5e9a1e3b2fe2008af624a9c97/build-1.2.1-py3-none-any.whl", + "sha256": "75e10f767a433d9a86e50d83f418e83efc18ede923ee5ff7df93b6cb0306c5d4", + "type": "zip", + "build_file_content": "package(default_visibility = [\"//visibility:public\"])\n\nload(\"@rules_python//python:py_library.bzl\", \"py_library\")\n\npy_library(\n name = \"lib\",\n srcs = glob([\"**/*.py\"]),\n data = glob([\"**/*\"], exclude=[\n # These entries include those put into user-installed dependencies by\n # data_exclude to avoid non-determinism.\n \"**/*.py\",\n \"**/*.pyc\",\n \"**/*.pyc.*\", # During pyc creation, temp files named *.pyc.NNN are created\n \"**/*.dist-info/RECORD\",\n \"BUILD\",\n \"WORKSPACE\",\n ]),\n # This makes this directory a top-level in the python import\n # search path for anything that depends on this.\n imports = [\".\"],\n)\n" + } + }, + "pypi__click": { + "repoRuleId": "@@bazel_tools//tools/build_defs/repo:http.bzl%http_archive", + "attributes": { + "url": "https://files.pythonhosted.org/packages/00/2e/d53fa4befbf2cfa713304affc7ca780ce4fc1fd8710527771b58311a3229/click-8.1.7-py3-none-any.whl", + "sha256": "ae74fb96c20a0277a1d615f1e4d73c8414f5a98db8b799a7931d1582f3390c28", + "type": "zip", + "build_file_content": "package(default_visibility = [\"//visibility:public\"])\n\nload(\"@rules_python//python:py_library.bzl\", \"py_library\")\n\npy_library(\n name = \"lib\",\n srcs = glob([\"**/*.py\"]),\n data = glob([\"**/*\"], exclude=[\n # These entries include those put into user-installed dependencies by\n # data_exclude to avoid non-determinism.\n \"**/*.py\",\n \"**/*.pyc\",\n \"**/*.pyc.*\", # During pyc creation, temp files named *.pyc.NNN are created\n \"**/*.dist-info/RECORD\",\n \"BUILD\",\n \"WORKSPACE\",\n ]),\n # This makes this directory a top-level in the python import\n # search path for anything that depends on this.\n imports = [\".\"],\n)\n" + } + }, + "pypi__colorama": { + "repoRuleId": "@@bazel_tools//tools/build_defs/repo:http.bzl%http_archive", + "attributes": { + "url": "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl", + "sha256": "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6", + "type": "zip", + "build_file_content": "package(default_visibility = [\"//visibility:public\"])\n\nload(\"@rules_python//python:py_library.bzl\", \"py_library\")\n\npy_library(\n name = \"lib\",\n srcs = glob([\"**/*.py\"]),\n data = glob([\"**/*\"], exclude=[\n # These entries include those put into user-installed dependencies by\n # data_exclude to avoid non-determinism.\n \"**/*.py\",\n \"**/*.pyc\",\n \"**/*.pyc.*\", # During pyc creation, temp files named *.pyc.NNN are created\n \"**/*.dist-info/RECORD\",\n \"BUILD\",\n \"WORKSPACE\",\n ]),\n # This makes this directory a top-level in the python import\n # search path for anything that depends on this.\n imports = [\".\"],\n)\n" + } + }, + "pypi__importlib_metadata": { + "repoRuleId": "@@bazel_tools//tools/build_defs/repo:http.bzl%http_archive", + "attributes": { + "url": "https://files.pythonhosted.org/packages/2d/0a/679461c511447ffaf176567d5c496d1de27cbe34a87df6677d7171b2fbd4/importlib_metadata-7.1.0-py3-none-any.whl", + "sha256": "30962b96c0c223483ed6cc7280e7f0199feb01a0e40cfae4d4450fc6fab1f570", + "type": "zip", + "build_file_content": "package(default_visibility = [\"//visibility:public\"])\n\nload(\"@rules_python//python:py_library.bzl\", \"py_library\")\n\npy_library(\n name = \"lib\",\n srcs = glob([\"**/*.py\"]),\n data = glob([\"**/*\"], exclude=[\n # These entries include those put into user-installed dependencies by\n # data_exclude to avoid non-determinism.\n \"**/*.py\",\n \"**/*.pyc\",\n \"**/*.pyc.*\", # During pyc creation, temp files named *.pyc.NNN are created\n \"**/*.dist-info/RECORD\",\n \"BUILD\",\n \"WORKSPACE\",\n ]),\n # This makes this directory a top-level in the python import\n # search path for anything that depends on this.\n imports = [\".\"],\n)\n" + } + }, + "pypi__installer": { + "repoRuleId": "@@bazel_tools//tools/build_defs/repo:http.bzl%http_archive", + "attributes": { + "url": "https://files.pythonhosted.org/packages/e5/ca/1172b6638d52f2d6caa2dd262ec4c811ba59eee96d54a7701930726bce18/installer-0.7.0-py3-none-any.whl", + "sha256": "05d1933f0a5ba7d8d6296bb6d5018e7c94fa473ceb10cf198a92ccea19c27b53", + "type": "zip", + "build_file_content": "package(default_visibility = [\"//visibility:public\"])\n\nload(\"@rules_python//python:py_library.bzl\", \"py_library\")\n\npy_library(\n name = \"lib\",\n srcs = glob([\"**/*.py\"]),\n data = glob([\"**/*\"], exclude=[\n # These entries include those put into user-installed dependencies by\n # data_exclude to avoid non-determinism.\n \"**/*.py\",\n \"**/*.pyc\",\n \"**/*.pyc.*\", # During pyc creation, temp files named *.pyc.NNN are created\n \"**/*.dist-info/RECORD\",\n \"BUILD\",\n \"WORKSPACE\",\n ]),\n # This makes this directory a top-level in the python import\n # search path for anything that depends on this.\n imports = [\".\"],\n)\n" + } + }, + "pypi__more_itertools": { + "repoRuleId": "@@bazel_tools//tools/build_defs/repo:http.bzl%http_archive", + "attributes": { + "url": "https://files.pythonhosted.org/packages/50/e2/8e10e465ee3987bb7c9ab69efb91d867d93959095f4807db102d07995d94/more_itertools-10.2.0-py3-none-any.whl", + "sha256": "686b06abe565edfab151cb8fd385a05651e1fdf8f0a14191e4439283421f8684", + "type": "zip", + "build_file_content": "package(default_visibility = [\"//visibility:public\"])\n\nload(\"@rules_python//python:py_library.bzl\", \"py_library\")\n\npy_library(\n name = \"lib\",\n srcs = glob([\"**/*.py\"]),\n data = glob([\"**/*\"], exclude=[\n # These entries include those put into user-installed dependencies by\n # data_exclude to avoid non-determinism.\n \"**/*.py\",\n \"**/*.pyc\",\n \"**/*.pyc.*\", # During pyc creation, temp files named *.pyc.NNN are created\n \"**/*.dist-info/RECORD\",\n \"BUILD\",\n \"WORKSPACE\",\n ]),\n # This makes this directory a top-level in the python import\n # search path for anything that depends on this.\n imports = [\".\"],\n)\n" + } + }, + "pypi__packaging": { + "repoRuleId": "@@bazel_tools//tools/build_defs/repo:http.bzl%http_archive", + "attributes": { + "url": "https://files.pythonhosted.org/packages/49/df/1fceb2f8900f8639e278b056416d49134fb8d84c5942ffaa01ad34782422/packaging-24.0-py3-none-any.whl", + "sha256": "2ddfb553fdf02fb784c234c7ba6ccc288296ceabec964ad2eae3777778130bc5", + "type": "zip", + "build_file_content": "package(default_visibility = [\"//visibility:public\"])\n\nload(\"@rules_python//python:py_library.bzl\", \"py_library\")\n\npy_library(\n name = \"lib\",\n srcs = glob([\"**/*.py\"]),\n data = glob([\"**/*\"], exclude=[\n # These entries include those put into user-installed dependencies by\n # data_exclude to avoid non-determinism.\n \"**/*.py\",\n \"**/*.pyc\",\n \"**/*.pyc.*\", # During pyc creation, temp files named *.pyc.NNN are created\n \"**/*.dist-info/RECORD\",\n \"BUILD\",\n \"WORKSPACE\",\n ]),\n # This makes this directory a top-level in the python import\n # search path for anything that depends on this.\n imports = [\".\"],\n)\n" + } + }, + "pypi__pep517": { + "repoRuleId": "@@bazel_tools//tools/build_defs/repo:http.bzl%http_archive", + "attributes": { + "url": "https://files.pythonhosted.org/packages/25/6e/ca4a5434eb0e502210f591b97537d322546e4833dcb4d470a48c375c5540/pep517-0.13.1-py3-none-any.whl", + "sha256": "31b206f67165b3536dd577c5c3f1518e8fbaf38cbc57efff8369a392feff1721", + "type": "zip", + "build_file_content": "package(default_visibility = [\"//visibility:public\"])\n\nload(\"@rules_python//python:py_library.bzl\", \"py_library\")\n\npy_library(\n name = \"lib\",\n srcs = glob([\"**/*.py\"]),\n data = glob([\"**/*\"], exclude=[\n # These entries include those put into user-installed dependencies by\n # data_exclude to avoid non-determinism.\n \"**/*.py\",\n \"**/*.pyc\",\n \"**/*.pyc.*\", # During pyc creation, temp files named *.pyc.NNN are created\n \"**/*.dist-info/RECORD\",\n \"BUILD\",\n \"WORKSPACE\",\n ]),\n # This makes this directory a top-level in the python import\n # search path for anything that depends on this.\n imports = [\".\"],\n)\n" + } + }, + "pypi__pip": { + "repoRuleId": "@@bazel_tools//tools/build_defs/repo:http.bzl%http_archive", + "attributes": { + "url": "https://files.pythonhosted.org/packages/8a/6a/19e9fe04fca059ccf770861c7d5721ab4c2aebc539889e97c7977528a53b/pip-24.0-py3-none-any.whl", + "sha256": "ba0d021a166865d2265246961bec0152ff124de910c5cc39f1156ce3fa7c69dc", + "type": "zip", + "build_file_content": "package(default_visibility = [\"//visibility:public\"])\n\nload(\"@rules_python//python:py_library.bzl\", \"py_library\")\n\npy_library(\n name = \"lib\",\n srcs = glob([\"**/*.py\"]),\n data = glob([\"**/*\"], exclude=[\n # These entries include those put into user-installed dependencies by\n # data_exclude to avoid non-determinism.\n \"**/*.py\",\n \"**/*.pyc\",\n \"**/*.pyc.*\", # During pyc creation, temp files named *.pyc.NNN are created\n \"**/*.dist-info/RECORD\",\n \"BUILD\",\n \"WORKSPACE\",\n ]),\n # This makes this directory a top-level in the python import\n # search path for anything that depends on this.\n imports = [\".\"],\n)\n" + } + }, + "pypi__pip_tools": { + "repoRuleId": "@@bazel_tools//tools/build_defs/repo:http.bzl%http_archive", + "attributes": { + "url": "https://files.pythonhosted.org/packages/0d/dc/38f4ce065e92c66f058ea7a368a9c5de4e702272b479c0992059f7693941/pip_tools-7.4.1-py3-none-any.whl", + "sha256": "4c690e5fbae2f21e87843e89c26191f0d9454f362d8acdbd695716493ec8b3a9", + "type": "zip", + "build_file_content": "package(default_visibility = [\"//visibility:public\"])\n\nload(\"@rules_python//python:py_library.bzl\", \"py_library\")\n\npy_library(\n name = \"lib\",\n srcs = glob([\"**/*.py\"]),\n data = glob([\"**/*\"], exclude=[\n # These entries include those put into user-installed dependencies by\n # data_exclude to avoid non-determinism.\n \"**/*.py\",\n \"**/*.pyc\",\n \"**/*.pyc.*\", # During pyc creation, temp files named *.pyc.NNN are created\n \"**/*.dist-info/RECORD\",\n \"BUILD\",\n \"WORKSPACE\",\n ]),\n # This makes this directory a top-level in the python import\n # search path for anything that depends on this.\n imports = [\".\"],\n)\n" + } + }, + "pypi__pyproject_hooks": { + "repoRuleId": "@@bazel_tools//tools/build_defs/repo:http.bzl%http_archive", + "attributes": { + "url": "https://files.pythonhosted.org/packages/ae/f3/431b9d5fe7d14af7a32340792ef43b8a714e7726f1d7b69cc4e8e7a3f1d7/pyproject_hooks-1.1.0-py3-none-any.whl", + "sha256": "7ceeefe9aec63a1064c18d939bdc3adf2d8aa1988a510afec15151578b232aa2", + "type": "zip", + "build_file_content": "package(default_visibility = [\"//visibility:public\"])\n\nload(\"@rules_python//python:py_library.bzl\", \"py_library\")\n\npy_library(\n name = \"lib\",\n srcs = glob([\"**/*.py\"]),\n data = glob([\"**/*\"], exclude=[\n # These entries include those put into user-installed dependencies by\n # data_exclude to avoid non-determinism.\n \"**/*.py\",\n \"**/*.pyc\",\n \"**/*.pyc.*\", # During pyc creation, temp files named *.pyc.NNN are created\n \"**/*.dist-info/RECORD\",\n \"BUILD\",\n \"WORKSPACE\",\n ]),\n # This makes this directory a top-level in the python import\n # search path for anything that depends on this.\n imports = [\".\"],\n)\n" + } + }, + "pypi__setuptools": { + "repoRuleId": "@@bazel_tools//tools/build_defs/repo:http.bzl%http_archive", + "attributes": { + "url": "https://files.pythonhosted.org/packages/90/99/158ad0609729111163fc1f674a5a42f2605371a4cf036d0441070e2f7455/setuptools-78.1.1-py3-none-any.whl", + "sha256": "c3a9c4211ff4c309edb8b8c4f1cbfa7ae324c4ba9f91ff254e3d305b9fd54561", + "type": "zip", + "build_file_content": "package(default_visibility = [\"//visibility:public\"])\n\nload(\"@rules_python//python:py_library.bzl\", \"py_library\")\n\npy_library(\n name = \"lib\",\n srcs = glob([\"**/*.py\"]),\n data = glob([\"**/*\"], exclude=[\n # These entries include those put into user-installed dependencies by\n # data_exclude to avoid non-determinism.\n \"**/*.py\",\n \"**/*.pyc\",\n \"**/*.pyc.*\", # During pyc creation, temp files named *.pyc.NNN are created\n \"**/*.dist-info/RECORD\",\n \"BUILD\",\n \"WORKSPACE\",\n ]),\n # This makes this directory a top-level in the python import\n # search path for anything that depends on this.\n imports = [\".\"],\n)\n" + } + }, + "pypi__tomli": { + "repoRuleId": "@@bazel_tools//tools/build_defs/repo:http.bzl%http_archive", + "attributes": { + "url": "https://files.pythonhosted.org/packages/97/75/10a9ebee3fd790d20926a90a2547f0bf78f371b2f13aa822c759680ca7b9/tomli-2.0.1-py3-none-any.whl", + "sha256": "939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc", + "type": "zip", + "build_file_content": "package(default_visibility = [\"//visibility:public\"])\n\nload(\"@rules_python//python:py_library.bzl\", \"py_library\")\n\npy_library(\n name = \"lib\",\n srcs = glob([\"**/*.py\"]),\n data = glob([\"**/*\"], exclude=[\n # These entries include those put into user-installed dependencies by\n # data_exclude to avoid non-determinism.\n \"**/*.py\",\n \"**/*.pyc\",\n \"**/*.pyc.*\", # During pyc creation, temp files named *.pyc.NNN are created\n \"**/*.dist-info/RECORD\",\n \"BUILD\",\n \"WORKSPACE\",\n ]),\n # This makes this directory a top-level in the python import\n # search path for anything that depends on this.\n imports = [\".\"],\n)\n" + } + }, + "pypi__wheel": { + "repoRuleId": "@@bazel_tools//tools/build_defs/repo:http.bzl%http_archive", + "attributes": { + "url": "https://files.pythonhosted.org/packages/7d/cd/d7460c9a869b16c3dd4e1e403cce337df165368c71d6af229a74699622ce/wheel-0.43.0-py3-none-any.whl", + "sha256": "55c570405f142630c6b9f72fe09d9b67cf1477fcf543ae5b8dcb1f5b7377da81", + "type": "zip", + "build_file_content": "package(default_visibility = [\"//visibility:public\"])\n\nload(\"@rules_python//python:py_library.bzl\", \"py_library\")\n\npy_library(\n name = \"lib\",\n srcs = glob([\"**/*.py\"]),\n data = glob([\"**/*\"], exclude=[\n # These entries include those put into user-installed dependencies by\n # data_exclude to avoid non-determinism.\n \"**/*.py\",\n \"**/*.pyc\",\n \"**/*.pyc.*\", # During pyc creation, temp files named *.pyc.NNN are created\n \"**/*.dist-info/RECORD\",\n \"BUILD\",\n \"WORKSPACE\",\n ]),\n # This makes this directory a top-level in the python import\n # search path for anything that depends on this.\n imports = [\".\"],\n)\n" + } + }, + "pypi__zipp": { + "repoRuleId": "@@bazel_tools//tools/build_defs/repo:http.bzl%http_archive", + "attributes": { + "url": "https://files.pythonhosted.org/packages/da/55/a03fd7240714916507e1fcf7ae355bd9d9ed2e6db492595f1a67f61681be/zipp-3.18.2-py3-none-any.whl", + "sha256": "dce197b859eb796242b0622af1b8beb0a722d52aa2f57133ead08edd5bf5374e", + "type": "zip", + "build_file_content": "package(default_visibility = [\"//visibility:public\"])\n\nload(\"@rules_python//python:py_library.bzl\", \"py_library\")\n\npy_library(\n name = \"lib\",\n srcs = glob([\"**/*.py\"]),\n data = glob([\"**/*\"], exclude=[\n # These entries include those put into user-installed dependencies by\n # data_exclude to avoid non-determinism.\n \"**/*.py\",\n \"**/*.pyc\",\n \"**/*.pyc.*\", # During pyc creation, temp files named *.pyc.NNN are created\n \"**/*.dist-info/RECORD\",\n \"BUILD\",\n \"WORKSPACE\",\n ]),\n # This makes this directory a top-level in the python import\n # search path for anything that depends on this.\n imports = [\".\"],\n)\n" + } + } + } + } + }, + "@@rules_python+//python/uv:uv.bzl%uv": { + "general": { + "bzlTransitiveDigest": "ijW9KS7qsIY+yBVvJ+Nr1mzwQox09j13DnE3iIwaeTM=", + "usagesDigest": "H8dQoNZcoqP+Mu0tHZTi4KHATzvNkM5ePuEqoQdklIU=", + "recordedInputs": [ + "REPO_MAPPING:rules_python+,bazel_tools bazel_tools", + "REPO_MAPPING:rules_python+,platforms platforms" + ], + "generatedRepoSpecs": { + "uv": { + "repoRuleId": "@@rules_python+//python/uv/private:uv_toolchains_repo.bzl%uv_toolchains_repo", + "attributes": { + "toolchain_type": "'@@rules_python+//python/uv:uv_toolchain_type'", + "toolchain_names": [ + "none" + ], + "toolchain_implementations": { + "none": "'@@rules_python+//python:none'" + }, + "toolchain_compatible_with": { + "none": [ + "@platforms//:incompatible" + ] + }, + "toolchain_target_settings": {} + } + } + } + } + }, + "@@rules_rust+//crate_universe/private:internal_extensions.bzl%cu_nr": { + "general": { + "bzlTransitiveDigest": "sLrT03+r0uacS3d1i2TWT2V67Qav+99VipH557C9JhQ=", + "usagesDigest": "dQ7SQZ7uSSL3vVKSMBKRxKJUm9OVrZZA+S1/QQfT570=", + "recordedInputs": [ + "REPO_MAPPING:bazel_features+,bazel_features_globals bazel_features++version_extension+bazel_features_globals", + "REPO_MAPPING:bazel_features+,bazel_features_version bazel_features++version_extension+bazel_features_version", + "REPO_MAPPING:rules_cc+,bazel_skylib bazel_skylib+", + "REPO_MAPPING:rules_cc+,bazel_tools bazel_tools", + "REPO_MAPPING:rules_cc+,cc_compatibility_proxy rules_cc++compatibility_proxy+cc_compatibility_proxy", + "REPO_MAPPING:rules_cc+,platforms platforms", + "REPO_MAPPING:rules_cc+,rules_cc rules_cc+", + "REPO_MAPPING:rules_cc++compatibility_proxy+cc_compatibility_proxy,rules_cc rules_cc+", + "REPO_MAPPING:rules_rust+,bazel_features bazel_features+", + "REPO_MAPPING:rules_rust+,bazel_skylib bazel_skylib+", + "REPO_MAPPING:rules_rust+,bazel_tools bazel_tools", + "REPO_MAPPING:rules_rust+,cui rules_rust++cu+cui", + "REPO_MAPPING:rules_rust+,rrc rules_rust++i2+rrc", + "REPO_MAPPING:rules_rust+,rules_cc rules_cc+", + "REPO_MAPPING:rules_rust+,rules_rust rules_rust+" + ], + "generatedRepoSpecs": { + "cargo_bazel_bootstrap": { + "repoRuleId": "@@rules_rust+//cargo/private:cargo_bootstrap.bzl%cargo_bootstrap_repository", + "attributes": { + "srcs": [ + "@@rules_rust+//crate_universe:src/api.rs", + "@@rules_rust+//crate_universe:src/api/lockfile.rs", + "@@rules_rust+//crate_universe:src/cli.rs", + "@@rules_rust+//crate_universe:src/cli/generate.rs", + "@@rules_rust+//crate_universe:src/cli/query.rs", + "@@rules_rust+//crate_universe:src/cli/render.rs", + "@@rules_rust+//crate_universe:src/cli/splice.rs", + "@@rules_rust+//crate_universe:src/cli/vendor.rs", + "@@rules_rust+//crate_universe:src/config.rs", + "@@rules_rust+//crate_universe:src/context.rs", + "@@rules_rust+//crate_universe:src/context/crate_context.rs", + "@@rules_rust+//crate_universe:src/context/platforms.rs", + "@@rules_rust+//crate_universe:src/lib.rs", + "@@rules_rust+//crate_universe:src/lockfile.rs", + "@@rules_rust+//crate_universe:src/main.rs", + "@@rules_rust+//crate_universe:src/metadata.rs", + "@@rules_rust+//crate_universe:src/metadata/cargo_bin.rs", + "@@rules_rust+//crate_universe:src/metadata/cargo_tree_resolver.rs", + "@@rules_rust+//crate_universe:src/metadata/cargo_tree_rustc_wrapper.bat", + "@@rules_rust+//crate_universe:src/metadata/cargo_tree_rustc_wrapper.sh", + "@@rules_rust+//crate_universe:src/metadata/dependency.rs", + "@@rules_rust+//crate_universe:src/metadata/metadata_annotation.rs", + "@@rules_rust+//crate_universe:src/rendering.rs", + "@@rules_rust+//crate_universe:src/rendering/template_engine.rs", + "@@rules_rust+//crate_universe:src/rendering/templates/module_bzl.j2", + "@@rules_rust+//crate_universe:src/rendering/templates/partials/header.j2", + "@@rules_rust+//crate_universe:src/rendering/templates/partials/module/aliases_map.j2", + "@@rules_rust+//crate_universe:src/rendering/templates/partials/module/deps_map.j2", + "@@rules_rust+//crate_universe:src/rendering/templates/partials/module/repo_git.j2", + "@@rules_rust+//crate_universe:src/rendering/templates/partials/module/repo_http.j2", + "@@rules_rust+//crate_universe:src/rendering/templates/vendor_module.j2", + "@@rules_rust+//crate_universe:src/rendering/verbatim/alias_rules.bzl", + "@@rules_rust+//crate_universe:src/select.rs", + "@@rules_rust+//crate_universe:src/splicing.rs", + "@@rules_rust+//crate_universe:src/splicing/cargo_config.rs", + "@@rules_rust+//crate_universe:src/splicing/crate_index_lookup.rs", + "@@rules_rust+//crate_universe:src/splicing/splicer.rs", + "@@rules_rust+//crate_universe:src/test.rs", + "@@rules_rust+//crate_universe:src/utils.rs", + "@@rules_rust+//crate_universe:src/utils/starlark.rs", + "@@rules_rust+//crate_universe:src/utils/starlark/glob.rs", + "@@rules_rust+//crate_universe:src/utils/starlark/label.rs", + "@@rules_rust+//crate_universe:src/utils/starlark/select.rs", + "@@rules_rust+//crate_universe:src/utils/starlark/select_dict.rs", + "@@rules_rust+//crate_universe:src/utils/starlark/select_list.rs", + "@@rules_rust+//crate_universe:src/utils/starlark/select_scalar.rs", + "@@rules_rust+//crate_universe:src/utils/starlark/select_set.rs", + "@@rules_rust+//crate_universe:src/utils/starlark/serialize.rs", + "@@rules_rust+//crate_universe:src/utils/starlark/target_compatible_with.rs", + "@@rules_rust+//crate_universe:src/utils/symlink.rs", + "@@rules_rust+//crate_universe:src/utils/target_triple.rs" + ], + "binary": "cargo-bazel", + "cargo_lockfile": "@@rules_rust+//crate_universe:Cargo.lock", + "cargo_toml": "@@rules_rust+//crate_universe:Cargo.toml", + "version": "1.86.0", + "timeout": 900, + "rust_toolchain_cargo_template": "@rust_host_tools//:bin/{tool}", + "rust_toolchain_rustc_template": "@rust_host_tools//:bin/{tool}", + "compressed_windows_toolchain_names": false + } + } + }, + "moduleExtensionMetadata": { + "explicitRootModuleDirectDeps": [ + "cargo_bazel_bootstrap" + ], + "explicitRootModuleDirectDevDeps": [], + "useAllRepos": "NO", + "reproducible": false + } + } + }, + "@@tar.bzl+//tar:extensions.bzl%toolchains": { + "general": { + "bzlTransitiveDigest": "/2afh6fPjq/rcyE/jztQDK3ierehmFFngfvmqyRv72M=", + "usagesDigest": "maF8qsAIqeH1ey8pxP0gNZbvJt34kLZvTFeQ0ntrJVA=", + "recordedInputs": [], + "generatedRepoSpecs": { + "bsd_tar_toolchains": { + "repoRuleId": "@@tar.bzl+//tar/toolchain:toolchain.bzl%tar_toolchains_repo", + "attributes": { + "user_repository_name": "bsd_tar_toolchains" + } + }, + "bsd_tar_toolchains_darwin_amd64": { + "repoRuleId": "@@tar.bzl+//tar/toolchain:platforms.bzl%bsdtar_binary_repo", + "attributes": { + "platform": "darwin_amd64" + } + }, + "bsd_tar_toolchains_darwin_arm64": { + "repoRuleId": "@@tar.bzl+//tar/toolchain:platforms.bzl%bsdtar_binary_repo", + "attributes": { + "platform": "darwin_arm64" + } + }, + "bsd_tar_toolchains_linux_amd64": { + "repoRuleId": "@@tar.bzl+//tar/toolchain:platforms.bzl%bsdtar_binary_repo", + "attributes": { + "platform": "linux_amd64" + } + }, + "bsd_tar_toolchains_linux_arm64": { + "repoRuleId": "@@tar.bzl+//tar/toolchain:platforms.bzl%bsdtar_binary_repo", + "attributes": { + "platform": "linux_arm64" + } + }, + "bsd_tar_toolchains_windows_amd64": { + "repoRuleId": "@@tar.bzl+//tar/toolchain:platforms.bzl%bsdtar_binary_repo", + "attributes": { + "platform": "windows_amd64" + } + }, + "bsd_tar_toolchains_windows_arm64": { + "repoRuleId": "@@tar.bzl+//tar/toolchain:platforms.bzl%bsdtar_binary_repo", + "attributes": { + "platform": "windows_arm64" + } + } + } + } + } + }, + "facts": { + "@@rules_go+//go:extensions.bzl%go_sdk": { + "1.22.4": { + "aix_ppc64": [ + "go1.22.4.aix-ppc64.tar.gz", + "b9647fa9fc83a0cc5d4f092a19eaeaecf45f063a5aa7d4962fde65aeb7ae6ce1" + ], + "darwin_amd64": [ + "go1.22.4.darwin-amd64.tar.gz", + "c95967f50aa4ace34af0c236cbdb49a9a3e80ee2ad09d85775cb4462a5c19ed3" + ], + "darwin_arm64": [ + "go1.22.4.darwin-arm64.tar.gz", + "242b78dc4c8f3d5435d28a0d2cec9b4c1aa999b601fb8aa59fb4e5a1364bf827" + ], + "dragonfly_amd64": [ + "go1.22.4.dragonfly-amd64.tar.gz", + "f2fbb51af4719d3616efb482d6ed2b96579b474156f85a7ddc6f126764feec4b" + ], + "freebsd_386": [ + "go1.22.4.freebsd-386.tar.gz", + "7c54884bb9f274884651d41e61d1bc12738863ad1497e97ea19ad0e9aa6bf7b5" + ], + "freebsd_amd64": [ + "go1.22.4.freebsd-amd64.tar.gz", + "88d44500e1701dd35797619774d6dd51bf60f45a8338b0a82ddc018e4e63fb78" + ], + "freebsd_arm64": [ + "go1.22.4.freebsd-arm64.tar.gz", + "726dc093cf020277be45debf03c3b02b43c2efb3e2a5d4fba8f52579d65327dc" + ], + "freebsd_armv6l": [ + "go1.22.4.freebsd-arm.tar.gz", + "3d9efe47db142a22679aba46b1772e3900b0d87ae13bd2b3bc80dbf2ac0b2cd6" + ], + "freebsd_riscv64": [ + "go1.22.4.freebsd-riscv64.tar.gz", + "5f6b67e5e32f1d6ccb2d4dcb44934a5e2e870a877ba7443d86ec43cfc28afa71" + ], + "illumos_amd64": [ + "go1.22.4.illumos-amd64.tar.gz", + "d56ecc2f85b6418a21ef83879594d0c42ab4f65391a676bb12254870e6690d63" + ], + "linux_386": [ + "go1.22.4.linux-386.tar.gz", + "47a2a8d249a91eb8605c33bceec63aedda0441a43eac47b4721e3975ff916cec" + ], + "linux_amd64": [ + "go1.22.4.linux-amd64.tar.gz", + "ba79d4526102575196273416239cca418a651e049c2b099f3159db85e7bade7d" + ], + "linux_arm64": [ + "go1.22.4.linux-arm64.tar.gz", + "a8e177c354d2e4a1b61020aca3562e27ea3e8f8247eca3170e3fa1e0c2f9e771" + ], + "linux_armv6l": [ + "go1.22.4.linux-armv6l.tar.gz", + "e2b143fbacbc9cbd448e9ef41ac3981f0488ce849af1cf37e2341d09670661de" + ], + "linux_loong64": [ + "go1.22.4.linux-loong64.tar.gz", + "e2ff9436e4b34bf6926b06d97916e26d67a909a2effec17967245900f0816f1d" + ], + "linux_mips": [ + "go1.22.4.linux-mips.tar.gz", + "73f0dcc60458c4770593b05a7bc01cc0d31fc98f948c0c2334812c7a1f2fc3f1" + ], + "linux_mips64": [ + "go1.22.4.linux-mips64.tar.gz", + "417af97fc2630a647052375768be4c38adcc5af946352ea5b28613ea81ca5d45" + ], + "linux_mips64le": [ + "go1.22.4.linux-mips64le.tar.gz", + "7486e2d7dd8c98eb44df815ace35a7fe7f30b7c02326e3741bd934077508139b" + ], + "linux_mipsle": [ + "go1.22.4.linux-mipsle.tar.gz", + "69479c8aad301e459a8365b40cad1074a0dbba5defb9291669f94809c4c4be6e" + ], + "linux_ppc64": [ + "go1.22.4.linux-ppc64.tar.gz", + "dd238847e65bc3e2745caca475a5db6522a2fcf85cf6c38fc36a06642b19efd7" + ], + "linux_ppc64le": [ + "go1.22.4.linux-ppc64le.tar.gz", + "a3e5834657ef92523f570f798fed42f1f87bc18222a16815ec76b84169649ec4" + ], + "linux_riscv64": [ + "go1.22.4.linux-riscv64.tar.gz", + "56a827ff7dc6245bcd7a1e9288dffaa1d8b0fd7468562264c1523daf3b4f1b4a" + ], + "linux_s390x": [ + "go1.22.4.linux-s390x.tar.gz", + "7590c3e278e2dc6040aae0a39da3ca1eb2e3921673a7304cc34d588c45889eec" + ], + "netbsd_386": [ + "go1.22.4.netbsd-386.tar.gz", + "ddd2eebe34471a2502de6c5dad04ab27c9fc80cbde7a9ad5b3c66ecec4504e1d" + ], + "netbsd_amd64": [ + "go1.22.4.netbsd-amd64.tar.gz", + "33af79f6f935f6fbacc5d23876450b3567b79348fc065beef8e64081127dd234" + ], + "netbsd_arm64": [ + "go1.22.4.netbsd-arm64.tar.gz", + "c9a2971dec9f6d320c6f2b049b2353c6d0a2d35e87b8a4b2d78a2f0d62545f8e" + ], + "netbsd_armv6l": [ + "go1.22.4.netbsd-arm.tar.gz", + "fa3550ebd5375a70b3bcd342b5a71f4bd271dcbbfaf4eabefa2144ab5d8924b6" + ], + "openbsd_386": [ + "go1.22.4.openbsd-386.tar.gz", + "d21af022331bfdc2b5b161d616c3a1a4573d33cf7a30416ee509a8f3641deb47" + ], + "openbsd_amd64": [ + "go1.22.4.openbsd-amd64.tar.gz", + "72c0094c43f7e5722ec49c2a3e9dfa7a1123ac43a5f3a63eecf3e3795d3ff0ae" + ], + "openbsd_arm64": [ + "go1.22.4.openbsd-arm64.tar.gz", + "a7ab8d4e0b02bf06ed144ba42c61c0e93ee00f2b433415dfd4ad4b6e79f31650" + ], + "openbsd_armv6l": [ + "go1.22.4.openbsd-arm.tar.gz", + "1096831ea3c5ea3ca57d14251d9eda3786889531eb40d7d6775dcaa324d4b065" + ], + "openbsd_ppc64": [ + "go1.22.4.openbsd-ppc64.tar.gz", + "9716327c8a628358798898dc5148c49dbbeb5196bf2cbf088e550721a6e4f60b" + ], + "plan9_386": [ + "go1.22.4.plan9-386.tar.gz", + "a8dd4503c95c32a502a616ab78870a19889c9325fe9bd31eb16dd69346e4bfa8" + ], + "plan9_amd64": [ + "go1.22.4.plan9-amd64.tar.gz", + "5423a25808d76fe5aca8607a2e5ac5673abf45446b168cb5e9d8519ee9fe39a1" + ], + "plan9_armv6l": [ + "go1.22.4.plan9-arm.tar.gz", + "6af939ad583f5c85c09c53728ab7d38c3cc2b39167562d6c18a07c5c6608b370" + ], + "solaris_amd64": [ + "go1.22.4.solaris-amd64.tar.gz", + "e8cabe69c03085725afdb32a6f9998191a3e55a747b270d835fd05000d56abba" + ], + "windows_386": [ + "go1.22.4.windows-386.zip", + "aca4e2c37278a10f1c70dd0df142f7d66b50334fcee48978d409202d308d6d25" + ], + "windows_amd64": [ + "go1.22.4.windows-amd64.zip", + "26321c4d945a0035d8a5bc4a1965b0df401ff8ceac66ce2daadabf9030419a98" + ], + "windows_arm64": [ + "go1.22.4.windows-arm64.zip", + "8a2daa9ea28cbdafddc6171aefed384f4e5b6e714fb52116fe9ed25a132f37ed" + ], + "windows_armv6l": [ + "go1.22.4.windows-arm.zip", + "5fcd0671a49cecf39b41021621ee1b6e7aa1370f37122b72e80d4fd4185833b6" + ] + }, + "1.25.0": { + "aix_ppc64": [ + "go1.25.0.aix-ppc64.tar.gz", + "e5234a7dac67bc86c528fe9752fc9d63557918627707a733ab4cac1a6faed2d4" + ], + "darwin_amd64": [ + "go1.25.0.darwin-amd64.tar.gz", + "5bd60e823037062c2307c71e8111809865116714d6f6b410597cf5075dfd80ef" + ], + "darwin_arm64": [ + "go1.25.0.darwin-arm64.tar.gz", + "544932844156d8172f7a28f77f2ac9c15a23046698b6243f633b0a0b00c0749c" + ], + "dragonfly_amd64": [ + "go1.25.0.dragonfly-amd64.tar.gz", + "5ed3cf9a810a1483822538674f1336c06b51aa1b94d6d545a1a0319a48177120" + ], + "freebsd_386": [ + "go1.25.0.freebsd-386.tar.gz", + "abea5d5c6697e6b5c224731f2158fe87c602996a2a233ac0c4730cd57bf8374e" + ], + "freebsd_amd64": [ + "go1.25.0.freebsd-amd64.tar.gz", + "86e6fe0a29698d7601c4442052dac48bd58d532c51cccb8f1917df648138730b" + ], + "freebsd_arm": [ + "go1.25.0.freebsd-arm.tar.gz", + "d90b78e41921f72f30e8bbc81d9dec2cff7ff384a33d8d8debb24053e4336bfe" + ], + "freebsd_arm64": [ + "go1.25.0.freebsd-arm64.tar.gz", + "451d0da1affd886bfb291b7c63a6018527b269505db21ce6e14724f22ab0662e" + ], + "freebsd_riscv64": [ + "go1.25.0.freebsd-riscv64.tar.gz", + "7b565f76bd8bda46549eeaaefe0e53b251e644c230577290c0f66b1ecdb3cdbe" + ], + "illumos_amd64": [ + "go1.25.0.illumos-amd64.tar.gz", + "b1e1fdaab1ad25aa1c08d7a36c97d45d74b98b89c3f78c6d2145f77face54a2c" + ], + "linux_386": [ + "go1.25.0.linux-386.tar.gz", + "8c602dd9d99bc9453b3995d20ce4baf382cc50855900a0ece5de9929df4a993a" + ], + "linux_amd64": [ + "go1.25.0.linux-amd64.tar.gz", + "2852af0cb20a13139b3448992e69b868e50ed0f8a1e5940ee1de9e19a123b613" + ], + "linux_arm64": [ + "go1.25.0.linux-arm64.tar.gz", + "05de75d6994a2783699815ee553bd5a9327d8b79991de36e38b66862782f54ae" + ], + "linux_armv6l": [ + "go1.25.0.linux-armv6l.tar.gz", + "a5a8f8198fcf00e1e485b8ecef9ee020778bf32a408a4e8873371bfce458cd09" + ], + "linux_loong64": [ + "go1.25.0.linux-loong64.tar.gz", + "cab86b1cf761b1cb3bac86a8877cfc92e7b036fc0d3084123d77013d61432afc" + ], + "linux_mips": [ + "go1.25.0.linux-mips.tar.gz", + "d66b6fb74c3d91b9829dc95ec10ca1f047ef5e89332152f92e136cf0e2da5be1" + ], + "linux_mips64": [ + "go1.25.0.linux-mips64.tar.gz", + "4082e4381a8661bc2a839ff94ba3daf4f6cde20f8fb771b5b3d4762dc84198a2" + ], + "linux_mips64le": [ + "go1.25.0.linux-mips64le.tar.gz", + "70002c299ec7f7175ac2ef673b1b347eecfa54ae11f34416a6053c17f855afcc" + ], + "linux_mipsle": [ + "go1.25.0.linux-mipsle.tar.gz", + "b00a3a39eff099f6df9f1c7355bf28e4589d0586f42d7d4a394efb763d145a73" + ], + "linux_ppc64": [ + "go1.25.0.linux-ppc64.tar.gz", + "df166f33bd98160662560a72ff0b4ba731f969a80f088922bddcf566a88c1ec1" + ], + "linux_ppc64le": [ + "go1.25.0.linux-ppc64le.tar.gz", + "0f18a89e7576cf2c5fa0b487a1635d9bcbf843df5f110e9982c64df52a983ad0" + ], + "linux_riscv64": [ + "go1.25.0.linux-riscv64.tar.gz", + "c018ff74a2c48d55c8ca9b07c8e24163558ffec8bea08b326d6336905d956b67" + ], + "linux_s390x": [ + "go1.25.0.linux-s390x.tar.gz", + "34e5a2e19f2292fbaf8783e3a241e6e49689276aef6510a8060ea5ef54eee408" + ], + "netbsd_386": [ + "go1.25.0.netbsd-386.tar.gz", + "f8586cdb7aa855657609a5c5f6dbf523efa00c2bbd7c76d3936bec80aa6c0aba" + ], + "netbsd_amd64": [ + "go1.25.0.netbsd-amd64.tar.gz", + "ae8dc1469385b86a157a423bb56304ba45730de8a897615874f57dd096db2c2a" + ], + "netbsd_arm": [ + "go1.25.0.netbsd-arm.tar.gz", + "1ff7e4cc764425fc9dd6825eaee79d02b3c7cafffbb3691687c8d672ade76cb7" + ], + "netbsd_arm64": [ + "go1.25.0.netbsd-arm64.tar.gz", + "e1b310739f26724216aa6d7d7208c4031f9ff54c9b5b9a796ddc8bebcb4a5f16" + ], + "openbsd_386": [ + "go1.25.0.openbsd-386.tar.gz", + "4802a9b20e533da91adb84aab42e94aa56cfe3e5475d0550bed3385b182e69d8" + ], + "openbsd_amd64": [ + "go1.25.0.openbsd-amd64.tar.gz", + "c016cd984bebe317b19a4f297c4f50def120dc9788490540c89f28e42f1dabe1" + ], + "openbsd_arm": [ + "go1.25.0.openbsd-arm.tar.gz", + "a1e31d0bf22172ddde42edf5ec811ef81be43433df0948ece52fecb247ccfd8d" + ], + "openbsd_arm64": [ + "go1.25.0.openbsd-arm64.tar.gz", + "343ea8edd8c218196e15a859c6072d0dd3246fbbb168481ab665eb4c4140458d" + ], + "openbsd_ppc64": [ + "go1.25.0.openbsd-ppc64.tar.gz", + "694c14da1bcaeb5e3332d49bdc2b6d155067648f8fe1540c5de8f3cf8e157154" + ], + "openbsd_riscv64": [ + "go1.25.0.openbsd-riscv64.tar.gz", + "aa510ad25cf54c06cd9c70b6d80ded69cb20188ac6e1735655eef29ff7e7885f" + ], + "plan9_386": [ + "go1.25.0.plan9-386.tar.gz", + "46f8cef02086cf04bf186c5912776b56535178d4cb319cd19c9fdbdd29231986" + ], + "plan9_amd64": [ + "go1.25.0.plan9-amd64.tar.gz", + "29b34391d84095e44608a228f63f2f88113a37b74a79781353ec043dfbcb427b" + ], + "plan9_arm": [ + "go1.25.0.plan9-arm.tar.gz", + "0a047107d13ebe7943aaa6d54b1d7bbd2e45e68ce449b52915a818da715799c2" + ], + "solaris_amd64": [ + "go1.25.0.solaris-amd64.tar.gz", + "9977f9e4351984364a3b2b78f8b88bfd1d339812356d5237678514594b7d3611" + ], + "windows_386": [ + "go1.25.0.windows-386.zip", + "df9f39db82a803af0db639e3613a36681ab7a42866b1384b3f3a1045663961a7" + ], + "windows_amd64": [ + "go1.25.0.windows-amd64.zip", + "89efb4f9b30812eee083cc1770fdd2913c14d301064f6454851428f9707d190b" + ], + "windows_arm64": [ + "go1.25.0.windows-arm64.zip", + "27bab004c72b3d7bd05a69b6ec0fc54a309b4b78cc569dd963d8b3ec28bfdb8c" + ] + } + } + } +} diff --git a/bazel/BUILD b/bazel/BUILD new file mode 100644 index 000000000..e69de29bb diff --git a/bazel/format/BUILD b/bazel/format/BUILD new file mode 100644 index 000000000..63b02cf14 --- /dev/null +++ b/bazel/format/BUILD @@ -0,0 +1,17 @@ +load("@aspect_rules_lint//format:defs.bzl", "format_multirun") +load("//bazel:java.bzl", "java_binary") + +java_binary( + name = "scalafmt", + data = ["//:.scalafmt.conf"], + main_class = "org.scalafmt.cli.Cli", + runtime_deps = ["@format_maven//:org_scalameta_scalafmt_cli_2_13"], +) + +format_multirun( + name = "format", + scala = ":scalafmt", + starlark = "@buildifier_prebuilt//:buildifier", + starlark_check_args = ["-mode=diff"], + visibility = ["//visibility:public"], +) diff --git a/bazel/java.bzl b/bazel/java.bzl new file mode 100644 index 000000000..9498929d4 --- /dev/null +++ b/bazel/java.bzl @@ -0,0 +1,17 @@ +load("@bazel_tooling//:java_rule_factory.bzl", "make_java_rules") + +_rules = make_java_rules( + java_common_opts = [ + "-g", + "--release", + "11", + "-Xlint:all", + "-Xlint:-cast", + "-XepDisableAllChecks", + ], +) + +java_library = _rules.java_library +java_binary = _rules.java_binary +java_test = _rules.java_test +java_import = _rules.java_import diff --git a/bazel/scala.bzl b/bazel/scala.bzl new file mode 100644 index 000000000..813d59ac6 --- /dev/null +++ b/bazel/scala.bzl @@ -0,0 +1,19 @@ +load("@bazel_tooling//:scala_rule_factory.bzl", "make_scala_rules") + +_rules = make_scala_rules( + scala_version = "3.7.4", + common_scalacopts = [ + "-java-output-version", + "17", + "-no-indent", + "-old-syntax", + "-Wshadow:type-parameter-shadow", + "-deprecation", + "-Wconf:msg=Implicit parameters should be provided with a `using` clause:s", + ], + common_scalatest_runtime_deps = [], +) + +scala_library = _rules.scala_library +scala_binary = _rules.scala_binary +scala_test = _rules.scala_test diff --git a/codepropertygraph/BUILD b/codepropertygraph/BUILD new file mode 100644 index 000000000..bd7862e46 --- /dev/null +++ b/codepropertygraph/BUILD @@ -0,0 +1,28 @@ +load("//bazel:scala.bzl", "scala_library", "scala_test") + +scala_library( + name = "codepropertygraph", + srcs = glob([ + "src/main/scala/**/*.java", + "src/main/scala/**/*.scala", + ]), + visibility = ["//visibility:public"], + deps = [ + "//schema:domainClasses", + "//schema:java_proto", + "@maven//:com_google_protobuf_protobuf_java", + "@maven//:io_joern_flatgraph_core_3", + "@maven//:io_joern_flatgraph_help_3", + "@maven//:io_joern_flatgraph_odb_convert_3", + "@maven//:net_sf_trove4j_core", + "@maven//:org_slf4j_slf4j_api", + ], +) + +scala_test( + name = "tests", + srcs = glob(["src/main/scala/**/*.scala"]), + deps = [ + ":codepropertygraph", + ], +) diff --git a/codepropertygraph/src/main/scala/io/shiftleft/codepropertygraph/cpgloading/ProtoCpgLoader.scala b/codepropertygraph/src/main/scala/io/shiftleft/codepropertygraph/cpgloading/ProtoCpgLoader.scala index e71d5343c..8116ef347 100644 --- a/codepropertygraph/src/main/scala/io/shiftleft/codepropertygraph/cpgloading/ProtoCpgLoader.scala +++ b/codepropertygraph/src/main/scala/io/shiftleft/codepropertygraph/cpgloading/ProtoCpgLoader.scala @@ -136,7 +136,7 @@ object ProtoCpgLoader { def loadOverlays(fileName: String): Try[Iterator[CpgOverlay]] = loadOverlays(fileName, CpgOverlay.parseFrom) - private def loadOverlays[T <: GeneratedMessageV3](fileName: String, f: InputStream => T): Try[Iterator[T]] = + private def loadOverlays(fileName: String, f: InputStream => CpgOverlay): Try[Iterator[CpgOverlay]] = Using(new ZipArchive(fileName)) { zip => zip.entries .sortWith(compareOverlayPath) diff --git a/format_maven_install.json b/format_maven_install.json new file mode 100644 index 000000000..062ae59f4 --- /dev/null +++ b/format_maven_install.json @@ -0,0 +1,892 @@ +{ + "__AUTOGENERATED_FILE_DO_NOT_MODIFY_THIS_FILE_MANUALLY": "THERE_IS_NO_DATA_ONLY_ZUUL", + "__INPUT_ARTIFACTS_HASH": { + "org.scalameta:scalafmt-cli_2.13": -1077369318, + "repositories": -1949687017 + }, + "__RESOLVED_ARTIFACTS_HASH": { + "com.facebook:nailgun-server": -1312000310, + "com.github.scopt:scopt_2.13": -1791766764, + "com.lihaoyi:fansi_2.13": -1754008317, + "com.lihaoyi:sourcecode_2.13": 2142439176, + "com.typesafe:config": 1422037420, + "io.get-coursier:interface": -1431594519, + "io.github.java-diff-utils:java-diff-utils": -2129961455, + "net.java.dev.jna:jna": -152040143, + "net.java.dev.jna:jna-platform": 1944437013, + "org.jline:jline:jar:jdk8": 461866030, + "org.scala-lang.modules:scala-collection-compat_2.13": 1776668179, + "org.scala-lang:scala-compiler": -936475372, + "org.scala-lang:scala-library": -1079389784, + "org.scala-lang:scala-reflect": 1954333033, + "org.scalameta:common_2.13": -711068556, + "org.scalameta:io_2.13": -1049178513, + "org.scalameta:mdoc-parser_2.13": 1311402672, + "org.scalameta:metaconfig-core_2.13": 368113129, + "org.scalameta:metaconfig-pprint_2.13": -1139170883, + "org.scalameta:metaconfig-typesafe-config_2.13": 1445355455, + "org.scalameta:munit-diff_2.13": -1005397188, + "org.scalameta:parsers_2.13": -1600516779, + "org.scalameta:scalafmt-cli_2.13": 1893508781, + "org.scalameta:scalafmt-config_2.13": -1258856049, + "org.scalameta:scalafmt-core_2.13": -1203691560, + "org.scalameta:scalafmt-dynamic_2.13": -1903323800, + "org.scalameta:scalafmt-interfaces": -2021536197, + "org.scalameta:scalafmt-macros_2.13": 187195124, + "org.scalameta:scalafmt-sysops_2.13": -1247578634, + "org.scalameta:scalameta_2.13": 1966714286, + "org.scalameta:svm-subs": 444416668, + "org.scalameta:trees_2.13": -811404239, + "org.slf4j:slf4j-api": -844459515, + "org.typelevel:paiges-core_2.13": 884465285 + }, + "artifacts": { + "com.facebook:nailgun-server": { + "shasums": { + "jar": "c852b33463ce343d22f45686dad8e2a29f61a105bdfd95c87f22b0520a482f21" + }, + "version": "1.0.1" + }, + "com.github.scopt:scopt_2.13": { + "shasums": { + "jar": "2e5037bda974630b046794274e344273919abf4727acfcd86352617dce68f82b" + }, + "version": "4.1.0" + }, + "com.lihaoyi:fansi_2.13": { + "shasums": { + "jar": "fcae26580f7d6e72adbd6e5c504bb1715fbe3f5fb814d70e84bc5427a835e42c" + }, + "version": "0.5.0" + }, + "com.lihaoyi:sourcecode_2.13": { + "shasums": { + "jar": "fbace2b994a7184f6b38ee98630be61f21948008a4a56cd83c7f86c1c1de743d" + }, + "version": "0.4.2" + }, + "com.typesafe:config": { + "shasums": { + "jar": "8ada4c185ce72416712d63e0b5afdc5f009c0cdf405e5f26efecdf156aa5dfb6" + }, + "version": "1.4.3" + }, + "io.get-coursier:interface": { + "shasums": { + "jar": "7592fe49c789b55429483185ac22ac6da43680a39c53b818c50bca0fb7dd6a78" + }, + "version": "1.0.28" + }, + "io.github.java-diff-utils:java-diff-utils": { + "shasums": { + "jar": "964c69e3a23a892db2778ae6806aa1d42f81230032bd8e4982dc8620582ee6b7" + }, + "version": "4.15" + }, + "net.java.dev.jna:jna": { + "shasums": { + "jar": "0c8eb7acf67261656d79005191debaba3b6bf5dd60a43735a245429381dbecff" + }, + "version": "4.5.2" + }, + "net.java.dev.jna:jna-platform": { + "shasums": { + "jar": "f1d00c167d8921c6e23c626ef9f1c3ae0be473c95c68ffa012bc7ae55a87e2d6" + }, + "version": "4.5.2" + }, + "org.jline:jline": { + "shasums": { + "jdk8": "9d165aff3d714a455de2e711dc90df09fdb0a0969a1cd4d52aa72a44cb545db0" + }, + "version": "3.27.1" + }, + "org.scala-lang.modules:scala-collection-compat_2.13": { + "shasums": { + "jar": "40f141575b57796bf0c1e4b5f0974d91e3a6dee6ecea47ceed62c0efa1298234" + }, + "version": "2.13.0" + }, + "org.scala-lang:scala-compiler": { + "shasums": { + "jar": "f59982714591e321ba9c087af2c8666e2f5fb92b11a0cef72c2c5e9b342152d3" + }, + "version": "2.13.16" + }, + "org.scala-lang:scala-library": { + "shasums": { + "jar": "1ebb2b6f9e4eb4022497c19b1e1e825019c08514f962aaac197145f88ed730f1" + }, + "version": "2.13.16" + }, + "org.scala-lang:scala-reflect": { + "shasums": { + "jar": "fb49ccd9cac7464486ab993cda20a3c1569d8ef26f052e897577ad2a4970fb1d" + }, + "version": "2.13.16" + }, + "org.scalameta:common_2.13": { + "shasums": { + "jar": "fe473560a69eb03952acb48b82fbcf8c8ea67d5f891dc9a411e0eea155737d11" + }, + "version": "4.13.5" + }, + "org.scalameta:io_2.13": { + "shasums": { + "jar": "0544d024c84d842ecb7c98ac5790dafbcb95e293dd03783391edcc3c57d6c604" + }, + "version": "4.13.5" + }, + "org.scalameta:mdoc-parser_2.13": { + "shasums": { + "jar": "d1462cf777c227a9a751ae9aae3cb7ab7c3fc1f70689f35eafe58746e33566cc" + }, + "version": "2.6.4" + }, + "org.scalameta:metaconfig-core_2.13": { + "shasums": { + "jar": "c0b789c2d4468238fc325ef0a17f1a029b3635ff12b510bde03dd577a1281278" + }, + "version": "0.15.0" + }, + "org.scalameta:metaconfig-pprint_2.13": { + "shasums": { + "jar": "357e65682c00db62978f0dd21fea01f13a5f0fb31b45308ad74b136b1ec4f021" + }, + "version": "0.15.0" + }, + "org.scalameta:metaconfig-typesafe-config_2.13": { + "shasums": { + "jar": "2ae5a8ecba43fb809696e419f1f98739e419534cc25918e2d8949a2d2727327e" + }, + "version": "0.15.0" + }, + "org.scalameta:munit-diff_2.13": { + "shasums": { + "jar": "645b14049ca4197cee5a1179c8f73916407c59396684cb176575eb8769ef9ec0" + }, + "version": "1.1.0" + }, + "org.scalameta:parsers_2.13": { + "shasums": { + "jar": "8da992dc44cb96e22be542a0718bf47f40333c0d542388f0e64924b5b95dd1e8" + }, + "version": "4.13.5" + }, + "org.scalameta:scalafmt-cli_2.13": { + "shasums": { + "jar": "1b80d2a5f21de2816ace18e620d5f1bc9f4bde282b29e6ef7f66102720cf9a07" + }, + "version": "3.9.6" + }, + "org.scalameta:scalafmt-config_2.13": { + "shasums": { + "jar": "07be7bd90db43fba3840adad268ca30f0857532851b8beef0273e44a77c42fa5" + }, + "version": "3.9.6" + }, + "org.scalameta:scalafmt-core_2.13": { + "shasums": { + "jar": "410cace6b251feb2d21b529888d0e9c4a44bb1245054b39913620388f6165c00" + }, + "version": "3.9.6" + }, + "org.scalameta:scalafmt-dynamic_2.13": { + "shasums": { + "jar": "f953acd468bf2f897f70964f1bc7a5dffdeb45db581799dc959fa32f7fb3b405" + }, + "version": "3.9.6" + }, + "org.scalameta:scalafmt-interfaces": { + "shasums": { + "jar": "3d67252a6511aad53ea54b9207d8bff86bcc9f63b33b79b00285404c2df60b9a" + }, + "version": "3.9.6" + }, + "org.scalameta:scalafmt-macros_2.13": { + "shasums": { + "jar": "da929a7cc07d58e6e10095c1b984e49f2b9d1fed8ada41e0ef642a8d5d3234a3" + }, + "version": "3.9.6" + }, + "org.scalameta:scalafmt-sysops_2.13": { + "shasums": { + "jar": "a3d36a31a694b81fd8e284fe93f2a0a55d2c31cef5386edac1e59a2daa3d586a" + }, + "version": "3.9.6" + }, + "org.scalameta:scalameta_2.13": { + "shasums": { + "jar": "0e7d791d2e5324024ea0d60c1ab711a7ae89da6cb1bbd2767b0f792ae2dd6058" + }, + "version": "4.13.5" + }, + "org.scalameta:svm-subs": { + "shasums": { + "jar": "b31eb8ef90bec4c22a8ec858f5bd007bd46ce80c3dcef9dce238c6f9dd15c1a4" + }, + "version": "101.0.0" + }, + "org.scalameta:trees_2.13": { + "shasums": { + "jar": "8ede9b809507ef70b251c6eb485df4aa3de027592cb826604e92ea9912b282e0" + }, + "version": "4.13.5" + }, + "org.slf4j:slf4j-api": { + "shasums": { + "jar": "d3ef575e3e4979678dc01bf1dcce51021493b4d11fb7f1be8ad982877c16a1c0" + }, + "version": "1.7.36" + }, + "org.typelevel:paiges-core_2.13": { + "shasums": { + "jar": "ffbd59d3648e71c5b8f4474a54121fb3512707e7901245831669aa9e85f3bbf0" + }, + "version": "0.4.4" + } + }, + "dependencies": { + "com.facebook:nailgun-server": [ + "net.java.dev.jna:jna", + "net.java.dev.jna:jna-platform" + ], + "com.github.scopt:scopt_2.13": [ + "org.scala-lang:scala-library" + ], + "com.lihaoyi:fansi_2.13": [ + "com.lihaoyi:sourcecode_2.13", + "org.scala-lang:scala-library" + ], + "com.lihaoyi:sourcecode_2.13": [ + "org.scala-lang:scala-library" + ], + "io.get-coursier:interface": [ + "org.slf4j:slf4j-api" + ], + "net.java.dev.jna:jna-platform": [ + "net.java.dev.jna:jna" + ], + "org.scala-lang.modules:scala-collection-compat_2.13": [ + "org.scala-lang:scala-library" + ], + "org.scala-lang:scala-compiler": [ + "io.github.java-diff-utils:java-diff-utils", + "org.jline:jline:jar:jdk8", + "org.scala-lang:scala-library", + "org.scala-lang:scala-reflect" + ], + "org.scala-lang:scala-reflect": [ + "org.scala-lang:scala-library" + ], + "org.scalameta:common_2.13": [ + "com.lihaoyi:sourcecode_2.13", + "org.scala-lang:scala-library" + ], + "org.scalameta:io_2.13": [ + "org.scala-lang:scala-library" + ], + "org.scalameta:mdoc-parser_2.13": [ + "org.scala-lang:scala-library" + ], + "org.scalameta:metaconfig-core_2.13": [ + "org.scala-lang.modules:scala-collection-compat_2.13", + "org.scala-lang:scala-library", + "org.scala-lang:scala-reflect", + "org.scalameta:metaconfig-pprint_2.13", + "org.typelevel:paiges-core_2.13" + ], + "org.scalameta:metaconfig-pprint_2.13": [ + "com.lihaoyi:fansi_2.13", + "org.scala-lang:scala-compiler", + "org.scala-lang:scala-library", + "org.scala-lang:scala-reflect" + ], + "org.scalameta:metaconfig-typesafe-config_2.13": [ + "com.typesafe:config", + "org.scala-lang:scala-library", + "org.scalameta:metaconfig-core_2.13" + ], + "org.scalameta:munit-diff_2.13": [ + "org.scala-lang:scala-library" + ], + "org.scalameta:parsers_2.13": [ + "org.scala-lang:scala-library", + "org.scalameta:trees_2.13" + ], + "org.scalameta:scalafmt-cli_2.13": [ + "com.facebook:nailgun-server", + "com.github.scopt:scopt_2.13", + "org.scala-lang:scala-library", + "org.scalameta:munit-diff_2.13", + "org.scalameta:scalafmt-core_2.13", + "org.scalameta:scalafmt-dynamic_2.13", + "org.scalameta:scalafmt-interfaces", + "org.scalameta:svm-subs" + ], + "org.scalameta:scalafmt-config_2.13": [ + "org.scala-lang:scala-library", + "org.scalameta:metaconfig-core_2.13", + "org.scalameta:metaconfig-typesafe-config_2.13" + ], + "org.scalameta:scalafmt-core_2.13": [ + "org.scala-lang:scala-library", + "org.scalameta:mdoc-parser_2.13", + "org.scalameta:scalafmt-config_2.13", + "org.scalameta:scalafmt-macros_2.13", + "org.scalameta:scalafmt-sysops_2.13" + ], + "org.scalameta:scalafmt-dynamic_2.13": [ + "com.typesafe:config", + "io.get-coursier:interface", + "org.scala-lang:scala-library", + "org.scalameta:scalafmt-interfaces", + "org.scalameta:scalafmt-sysops_2.13" + ], + "org.scalameta:scalafmt-macros_2.13": [ + "org.scala-lang:scala-library", + "org.scala-lang:scala-reflect", + "org.scalameta:scalameta_2.13" + ], + "org.scalameta:scalafmt-sysops_2.13": [ + "org.scala-lang:scala-library" + ], + "org.scalameta:scalameta_2.13": [ + "org.scala-lang:scala-library", + "org.scalameta:parsers_2.13" + ], + "org.scalameta:svm-subs": [ + "org.scala-lang:scala-library" + ], + "org.scalameta:trees_2.13": [ + "org.scala-lang:scala-library", + "org.scalameta:common_2.13", + "org.scalameta:io_2.13" + ], + "org.typelevel:paiges-core_2.13": [ + "org.scala-lang:scala-library" + ] + }, + "packages": { + "com.facebook:nailgun-server": [ + "com.facebook.nailgun", + "com.facebook.nailgun.builtins" + ], + "com.github.scopt:scopt_2.13": [ + "scopt" + ], + "com.lihaoyi:fansi_2.13": [ + "fansi" + ], + "com.lihaoyi:sourcecode_2.13": [ + "sourcecode" + ], + "com.typesafe:config": [ + "com.typesafe.config", + "com.typesafe.config.impl", + "com.typesafe.config.parser" + ], + "io.get-coursier:interface": [ + "coursierapi", + "coursierapi.error", + "coursierapi.internal.jniutils", + "coursierapi.shaded.commonscompress", + "coursierapi.shaded.commonscompress.archivers", + "coursierapi.shaded.commonscompress.archivers.tar", + "coursierapi.shaded.commonscompress.archivers.zip", + "coursierapi.shaded.commonscompress.compressors", + "coursierapi.shaded.commonscompress.compressors.bzip2", + "coursierapi.shaded.commonscompress.compressors.deflate64", + "coursierapi.shaded.commonscompress.compressors.lzw", + "coursierapi.shaded.commonscompress.compressors.xz", + "coursierapi.shaded.commonscompress.compressors.zstandard", + "coursierapi.shaded.commonscompress.utils", + "coursierapi.shaded.commonsio", + "coursierapi.shaded.commonsio.build", + "coursierapi.shaded.commonsio.file", + "coursierapi.shaded.commonsio.file.attribute", + "coursierapi.shaded.commonsio.filefilter", + "coursierapi.shaded.commonsio.function", + "coursierapi.shaded.commonsio.input", + "coursierapi.shaded.commonsio.output", + "coursierapi.shaded.compress", + "coursierapi.shaded.compress.snappy", + "coursierapi.shaded.concurrentrefhashmap", + "coursierapi.shaded.coursier", + "coursierapi.shaded.coursier.cache", + "coursierapi.shaded.coursier.cache.internal", + "coursierapi.shaded.coursier.cache.loggers", + "coursierapi.shaded.coursier.cache.shaded.dirs", + "coursierapi.shaded.coursier.cache.shaded.dirs.impl", + "coursierapi.shaded.coursier.cache.shaded.dirs.jni", + "coursierapi.shaded.coursier.complete", + "coursierapi.shaded.coursier.core", + "coursierapi.shaded.coursier.core.compatibility", + "coursierapi.shaded.coursier.core.shaded.fastparse", + "coursierapi.shaded.coursier.core.shaded.fastparse.internal", + "coursierapi.shaded.coursier.core.shaded.sourcecode", + "coursierapi.shaded.coursier.credentials", + "coursierapi.shaded.coursier.error", + "coursierapi.shaded.coursier.error.conflict", + "coursierapi.shaded.coursier.graph", + "coursierapi.shaded.coursier.internal", + "coursierapi.shaded.coursier.internal.api", + "coursierapi.shaded.coursier.ivy", + "coursierapi.shaded.coursier.jniutils", + "coursierapi.shaded.coursier.jvm", + "coursierapi.shaded.coursier.jvm.util", + "coursierapi.shaded.coursier.maven", + "coursierapi.shaded.coursier.params", + "coursierapi.shaded.coursier.params.rule", + "coursierapi.shaded.coursier.parse", + "coursierapi.shaded.coursier.paths", + "coursierapi.shaded.coursier.util", + "coursierapi.shaded.coursier.util.shaded.org.jsoup", + "coursierapi.shaded.coursier.util.shaded.org.jsoup.helper", + "coursierapi.shaded.coursier.util.shaded.org.jsoup.internal", + "coursierapi.shaded.coursier.util.shaded.org.jsoup.nodes", + "coursierapi.shaded.coursier.util.shaded.org.jsoup.parser", + "coursierapi.shaded.coursier.util.shaded.org.jsoup.select", + "coursierapi.shaded.dependency", + "coursierapi.shaded.dependency.parser", + "coursierapi.shaded.isterminal", + "coursierapi.shaded.jsoniter", + "coursierapi.shaded.lang3", + "coursierapi.shaded.lang3.function", + "coursierapi.shaded.org.fusesource.jansi.internal", + "coursierapi.shaded.plexus.archiver", + "coursierapi.shaded.plexus.archiver.tar", + "coursierapi.shaded.plexus.archiver.util", + "coursierapi.shaded.plexus.archiver.zip", + "coursierapi.shaded.plexus.components.io.attributes", + "coursierapi.shaded.plexus.components.io.filemappers", + "coursierapi.shaded.plexus.components.io.fileselectors", + "coursierapi.shaded.plexus.components.io.resources", + "coursierapi.shaded.plexus.util", + "coursierapi.shaded.plexus.util.cli", + "coursierapi.shaded.scala", + "coursierapi.shaded.scala.cli.commands", + "coursierapi.shaded.scala.cli.config", + "coursierapi.shaded.scala.collection", + "coursierapi.shaded.scala.collection.concurrent", + "coursierapi.shaded.scala.collection.convert", + "coursierapi.shaded.scala.collection.generic", + "coursierapi.shaded.scala.collection.immutable", + "coursierapi.shaded.scala.collection.mutable", + "coursierapi.shaded.scala.concurrent", + "coursierapi.shaded.scala.concurrent.duration", + "coursierapi.shaded.scala.concurrent.impl", + "coursierapi.shaded.scala.math", + "coursierapi.shaded.scala.ref", + "coursierapi.shaded.scala.reflect", + "coursierapi.shaded.scala.runtime", + "coursierapi.shaded.scala.sys", + "coursierapi.shaded.scala.sys.process", + "coursierapi.shaded.scala.util", + "coursierapi.shaded.scala.util.control", + "coursierapi.shaded.scala.util.hashing", + "coursierapi.shaded.scala.util.matching", + "coursierapi.shaded.scala.xml", + "coursierapi.shaded.scala.xml.dtd", + "coursierapi.shaded.scala.xml.dtd.impl", + "coursierapi.shaded.scala.xml.factory", + "coursierapi.shaded.scala.xml.parsing", + "coursierapi.shaded.windowsansi", + "coursierapi.shaded.xz", + "coursierapi.shaded.xz.check", + "coursierapi.shaded.xz.common", + "coursierapi.shaded.xz.delta", + "coursierapi.shaded.xz.index", + "coursierapi.shaded.xz.lz", + "coursierapi.shaded.xz.lzma", + "coursierapi.shaded.xz.rangecoder", + "coursierapi.shaded.xz.simple", + "coursierapi.shaded.zstd", + "coursierapi.shaded.zstd.util" + ], + "io.github.java-diff-utils:java-diff-utils": [ + "com.github.difflib", + "com.github.difflib.algorithm", + "com.github.difflib.algorithm.myers", + "com.github.difflib.patch", + "com.github.difflib.text", + "com.github.difflib.unifieddiff" + ], + "net.java.dev.jna:jna": [ + "com.sun.jna", + "com.sun.jna.ptr", + "com.sun.jna.win32" + ], + "net.java.dev.jna:jna-platform": [ + "com.sun.jna.platform", + "com.sun.jna.platform.dnd", + "com.sun.jna.platform.mac", + "com.sun.jna.platform.unix", + "com.sun.jna.platform.unix.solaris", + "com.sun.jna.platform.win32", + "com.sun.jna.platform.win32.COM", + "com.sun.jna.platform.win32.COM.tlb", + "com.sun.jna.platform.win32.COM.tlb.imp", + "com.sun.jna.platform.win32.COM.util", + "com.sun.jna.platform.win32.COM.util.annotation", + "com.sun.jna.platform.wince" + ], + "org.jline:jline:jar:jdk8": [ + "org.jline.builtins", + "org.jline.builtins.ssh", + "org.jline.builtins.telnet", + "org.jline.console", + "org.jline.console.impl", + "org.jline.jansi", + "org.jline.jansi.io", + "org.jline.keymap", + "org.jline.nativ", + "org.jline.reader", + "org.jline.reader.impl", + "org.jline.reader.impl.completer", + "org.jline.reader.impl.history", + "org.jline.style", + "org.jline.terminal", + "org.jline.terminal.impl", + "org.jline.terminal.impl.exec", + "org.jline.terminal.impl.jansi", + "org.jline.terminal.impl.jansi.freebsd", + "org.jline.terminal.impl.jansi.linux", + "org.jline.terminal.impl.jansi.osx", + "org.jline.terminal.impl.jansi.solaris", + "org.jline.terminal.impl.jansi.win", + "org.jline.terminal.impl.jna", + "org.jline.terminal.impl.jna.freebsd", + "org.jline.terminal.impl.jna.linux", + "org.jline.terminal.impl.jna.osx", + "org.jline.terminal.impl.jna.solaris", + "org.jline.terminal.impl.jna.win", + "org.jline.terminal.impl.jni", + "org.jline.terminal.impl.jni.freebsd", + "org.jline.terminal.impl.jni.linux", + "org.jline.terminal.impl.jni.osx", + "org.jline.terminal.impl.jni.solaris", + "org.jline.terminal.impl.jni.win", + "org.jline.terminal.spi", + "org.jline.utils", + "org.jline.widget" + ], + "org.scala-lang.modules:scala-collection-compat_2.13": [ + "scala.collection.compat", + "scala.collection.compat.immutable", + "scala.util.control.compat", + "scala.util.matching.compat" + ], + "org.scala-lang:scala-compiler": [ + "com.github.difflib", + "com.github.difflib.algorithm", + "com.github.difflib.algorithm.myers", + "com.github.difflib.patch", + "com.github.difflib.text", + "com.github.difflib.unifieddiff", + "scala.reflect.macros.compiler", + "scala.reflect.macros.contexts", + "scala.reflect.macros.runtime", + "scala.reflect.macros.util", + "scala.reflect.quasiquotes", + "scala.reflect.reify", + "scala.reflect.reify.codegen", + "scala.reflect.reify.phases", + "scala.reflect.reify.utils", + "scala.tools.asm", + "scala.tools.asm.commons", + "scala.tools.asm.signature", + "scala.tools.asm.tree", + "scala.tools.asm.tree.analysis", + "scala.tools.asm.util", + "scala.tools.nsc", + "scala.tools.nsc.ast", + "scala.tools.nsc.ast.parser", + "scala.tools.nsc.ast.parser.xml", + "scala.tools.nsc.backend", + "scala.tools.nsc.backend.jvm", + "scala.tools.nsc.backend.jvm.analysis", + "scala.tools.nsc.backend.jvm.opt", + "scala.tools.nsc.classpath", + "scala.tools.nsc.doc", + "scala.tools.nsc.doc.base", + "scala.tools.nsc.doc.base.comment", + "scala.tools.nsc.doc.doclet", + "scala.tools.nsc.doc.html", + "scala.tools.nsc.doc.html.page", + "scala.tools.nsc.doc.html.page.diagram", + "scala.tools.nsc.doc.model", + "scala.tools.nsc.doc.model.diagram", + "scala.tools.nsc.fsc", + "scala.tools.nsc.interactive", + "scala.tools.nsc.interactive.tests", + "scala.tools.nsc.interactive.tests.core", + "scala.tools.nsc.interpreter", + "scala.tools.nsc.interpreter.jline", + "scala.tools.nsc.interpreter.shell", + "scala.tools.nsc.io", + "scala.tools.nsc.javac", + "scala.tools.nsc.plugins", + "scala.tools.nsc.profile", + "scala.tools.nsc.reporters", + "scala.tools.nsc.settings", + "scala.tools.nsc.symtab", + "scala.tools.nsc.symtab.classfile", + "scala.tools.nsc.tasty", + "scala.tools.nsc.tasty.bridge", + "scala.tools.nsc.transform", + "scala.tools.nsc.transform.async", + "scala.tools.nsc.transform.patmat", + "scala.tools.nsc.typechecker", + "scala.tools.nsc.typechecker.splain", + "scala.tools.nsc.util", + "scala.tools.reflect", + "scala.tools.tasty", + "scala.tools.util" + ], + "org.scala-lang:scala-library": [ + "scala", + "scala.annotation", + "scala.annotation.meta", + "scala.annotation.unchecked", + "scala.beans", + "scala.collection", + "scala.collection.concurrent", + "scala.collection.convert", + "scala.collection.convert.impl", + "scala.collection.generic", + "scala.collection.immutable", + "scala.collection.mutable", + "scala.compat", + "scala.concurrent", + "scala.concurrent.duration", + "scala.concurrent.impl", + "scala.io", + "scala.jdk", + "scala.jdk.javaapi", + "scala.math", + "scala.ref", + "scala.reflect", + "scala.reflect.macros.internal", + "scala.runtime", + "scala.sys", + "scala.sys.process", + "scala.util", + "scala.util.control", + "scala.util.hashing", + "scala.util.matching" + ], + "org.scala-lang:scala-reflect": [ + "scala.reflect.api", + "scala.reflect.internal", + "scala.reflect.internal.annotations", + "scala.reflect.internal.pickling", + "scala.reflect.internal.settings", + "scala.reflect.internal.tpe", + "scala.reflect.internal.transform", + "scala.reflect.internal.util", + "scala.reflect.io", + "scala.reflect.macros", + "scala.reflect.macros.blackbox", + "scala.reflect.macros.whitebox", + "scala.reflect.runtime" + ], + "org.scalameta:common_2.13": [ + "org.scalameta", + "org.scalameta.adt", + "org.scalameta.collections", + "org.scalameta.data", + "org.scalameta.explore", + "org.scalameta.internal", + "org.scalameta.invariants", + "org.scalameta.overload", + "org.scalameta.tests", + "scala.meta.classifiers", + "scala.meta.common", + "scala.meta.internal", + "scala.meta.internal.classifiers", + "scala.meta.internal.platform", + "scala.meta.internal.prettyprinters", + "scala.meta.internal.tokens", + "scala.meta.internal.transversers", + "scala.meta.internal.trees", + "scala.meta.prettyprinters" + ], + "org.scalameta:io_2.13": [ + "scala.meta.internal.io", + "scala.meta.io" + ], + "org.scalameta:mdoc-parser_2.13": [ + "mdoc.parser" + ], + "org.scalameta:metaconfig-core_2.13": [ + "metaconfig", + "metaconfig.annotation", + "metaconfig.error", + "metaconfig.generic", + "metaconfig.internal" + ], + "org.scalameta:metaconfig-pprint_2.13": [ + "metaconfig.pprint" + ], + "org.scalameta:metaconfig-typesafe-config_2.13": [ + "metaconfig", + "metaconfig.typesafeconfig" + ], + "org.scalameta:munit-diff_2.13": [ + "munit.diff", + "munit.diff.console" + ], + "org.scalameta:parsers_2.13": [ + "scala.meta.internal.parsers", + "scala.meta.internal.quasiquotes", + "scala.meta.parsers", + "scala.meta.quasiquotes", + "scala.meta.transversers" + ], + "org.scalameta:scalafmt-cli_2.13": [ + "org.scalafmt.cli" + ], + "org.scalameta:scalafmt-config_2.13": [ + "org.scalafmt.config" + ], + "org.scalameta:scalafmt-core_2.13": [ + "org.scalafmt", + "org.scalafmt.config", + "org.scalafmt.internal", + "org.scalafmt.rewrite", + "org.scalafmt.util" + ], + "org.scalameta:scalafmt-dynamic_2.13": [ + "org.scalafmt.dynamic", + "org.scalafmt.dynamic.exceptions", + "org.scalafmt.dynamic.utils" + ], + "org.scalameta:scalafmt-interfaces": [ + "org.scalafmt.interfaces" + ], + "org.scalameta:scalafmt-macros_2.13": [ + "org.scalafmt.config" + ], + "org.scalameta:scalafmt-sysops_2.13": [ + "org.scalafmt", + "org.scalafmt.sysops" + ], + "org.scalameta:scalameta_2.13": [ + "scala.meta", + "scala.meta.contrib", + "scala.meta.contrib.equality", + "scala.meta.contrib.implicits", + "scala.meta.contrib.instances" + ], + "org.scalameta:svm-subs": [ + "scala.meta.internal.svm_subs" + ], + "org.scalameta:trees_2.13": [ + "scala.meta", + "scala.meta.contrib", + "scala.meta.dialects", + "scala.meta.inputs", + "scala.meta.internal", + "scala.meta.internal.dialects", + "scala.meta.internal.inputs", + "scala.meta.internal.parsers", + "scala.meta.internal.prettyprinters", + "scala.meta.internal.tokenizers", + "scala.meta.internal.tokens", + "scala.meta.internal.trees", + "scala.meta.shaded.internal.fastparse", + "scala.meta.shaded.internal.fastparse.internal", + "scala.meta.shaded.internal.geny", + "scala.meta.tokenizers", + "scala.meta.tokens", + "scala.meta.trees" + ], + "org.slf4j:slf4j-api": [ + "org.slf4j", + "org.slf4j.event", + "org.slf4j.helpers", + "org.slf4j.spi" + ], + "org.typelevel:paiges-core_2.13": [ + "org.typelevel.paiges" + ] + }, + "repositories": { + "https://repo1.maven.org/maven2/": [ + "com.facebook:nailgun-server", + "com.github.scopt:scopt_2.13", + "com.lihaoyi:fansi_2.13", + "com.lihaoyi:sourcecode_2.13", + "com.typesafe:config", + "io.get-coursier:interface", + "io.github.java-diff-utils:java-diff-utils", + "net.java.dev.jna:jna", + "net.java.dev.jna:jna-platform", + "org.jline:jline:jar:jdk8", + "org.scala-lang.modules:scala-collection-compat_2.13", + "org.scala-lang:scala-compiler", + "org.scala-lang:scala-library", + "org.scala-lang:scala-reflect", + "org.scalameta:common_2.13", + "org.scalameta:io_2.13", + "org.scalameta:mdoc-parser_2.13", + "org.scalameta:metaconfig-core_2.13", + "org.scalameta:metaconfig-pprint_2.13", + "org.scalameta:metaconfig-typesafe-config_2.13", + "org.scalameta:munit-diff_2.13", + "org.scalameta:parsers_2.13", + "org.scalameta:scalafmt-cli_2.13", + "org.scalameta:scalafmt-config_2.13", + "org.scalameta:scalafmt-core_2.13", + "org.scalameta:scalafmt-dynamic_2.13", + "org.scalameta:scalafmt-interfaces", + "org.scalameta:scalafmt-macros_2.13", + "org.scalameta:scalafmt-sysops_2.13", + "org.scalameta:scalameta_2.13", + "org.scalameta:svm-subs", + "org.scalameta:trees_2.13", + "org.slf4j:slf4j-api", + "org.typelevel:paiges-core_2.13" + ] + }, + "services": { + "io.get-coursier:interface": { + "coursierapi.shaded.coursier.jniutils.NativeApi": [ + "coursierapi.internal.jniutils.ApiInternalNativeApi" + ] + }, + "org.jline:jline:jar:jdk8": { + "org/": [], + "org/jline/": [], + "org/jline/terminal/": [], + "org/jline/terminal/provider/": [], + "org/jline/terminal/provider/exec": [ + "class=org.jline.terminal.impl.exec.ExecTerminalProvider" + ], + "org/jline/terminal/provider/ffm": [ + "class=org.jline.terminal.impl.ffm.FfmTerminalProvider" + ], + "org/jline/terminal/provider/jansi": [ + "class=org.jline.terminal.impl.jansi.JansiTerminalProvider" + ], + "org/jline/terminal/provider/jna": [ + "class=org.jline.terminal.impl.jna.JnaTerminalProvider" + ], + "org/jline/terminal/provider/jni": [ + "class=org.jline.terminal.impl.jni.JniTerminalProvider" + ] + }, + "org.scala-lang:scala-compiler": { + "javax.script.ScriptEngineFactory": [ + "scala.tools.nsc.interpreter.shell.Scripted$Factory" + ] + }, + "org.scalameta:scalafmt-dynamic_2.13": { + "org.scalafmt.interfaces.Scalafmt": [ + "org.scalafmt.dynamic.ScalafmtDynamic" + ] + } + }, + "version": "3" +} diff --git a/maven_install.json b/maven_install.json new file mode 100644 index 000000000..ec83aa8b9 --- /dev/null +++ b/maven_install.json @@ -0,0 +1,951 @@ +{ + "__AUTOGENERATED_FILE_DO_NOT_MODIFY_THIS_FILE_MANUALLY": "THERE_IS_NO_DATA_ONLY_ZUUL", + "__INPUT_ARTIFACTS_HASH": { + "com.google.code.findbugs:jsr305": 495355163, + "com.google.code.gson:gson": 597770368, + "com.google.errorprone:error_prone_annotations": -1035138750, + "com.google.guava:guava": 1943808618, + "com.google.j2objc:j2objc-annotations": 2003271689, + "com.google.protobuf:protobuf-java": 1237026331, + "com.lihaoyi:os-lib_3": 899915638, + "io.joern:flatgraph-core_3": -299976332, + "io.joern:flatgraph-domain-classes-generator_3": 1040736120, + "io.joern:flatgraph-help_3": -1498345706, + "io.joern:flatgraph-odb-convert_3": 599666178, + "net.sf.trove4j:core": 1808260229, + "org.json4s:json4s-native_3": 1421532977, + "org.scala-lang:scala-library": 1230160761, + "org.scala-lang:scala3-library_3": 1771369610, + "org.slf4j:slf4j-api": -197708565, + "repositories": -1949687017 + }, + "__RESOLVED_ARTIFACTS_HASH": { + "com.github.luben:zstd-jni": -201271141, + "com.github.luben:zstd-jni:jar:sources": 2122765034, + "com.github.scopt:scopt_3": 148843063, + "com.github.scopt:scopt_3:jar:sources": 776003799, + "com.google.code.findbugs:jsr305": 870839855, + "com.google.code.findbugs:jsr305:jar:sources": -935881202, + "com.google.code.gson:gson": -1575757252, + "com.google.code.gson:gson:jar:sources": -350708227, + "com.google.errorprone:error_prone_annotations": 833623751, + "com.google.errorprone:error_prone_annotations:jar:sources": 231035411, + "com.google.guava:failureaccess": -1890754729, + "com.google.guava:failureaccess:jar:sources": 1500322647, + "com.google.guava:guava": -163533230, + "com.google.guava:guava:jar:sources": 2103972560, + "com.google.guava:listenablefuture": 1079558157, + "com.google.j2objc:j2objc-annotations": 248818742, + "com.google.j2objc:j2objc-annotations:jar:sources": -378364028, + "com.google.protobuf:protobuf-java": 1198356280, + "com.google.protobuf:protobuf-java:jar:sources": 2013970572, + "com.h2database:h2-mvstore": -1004445531, + "com.h2database:h2-mvstore:jar:sources": 1948738169, + "com.lihaoyi:geny_3": -420413792, + "com.lihaoyi:geny_3:jar:sources": 1575781288, + "com.lihaoyi:os-lib_3": 695712032, + "com.lihaoyi:os-lib_3:jar:sources": 1732147675, + "com.lihaoyi:ujson_3": 1749570655, + "com.lihaoyi:ujson_3:jar:sources": 195752142, + "com.lihaoyi:upickle-core_3": 918154501, + "com.lihaoyi:upickle-core_3:jar:sources": 174541473, + "com.thoughtworks.paranamer:paranamer": 216030769, + "com.thoughtworks.paranamer:paranamer:jar:sources": 1185138559, + "com.typesafe:config": 1422037420, + "com.typesafe:config:jar:sources": 1794326800, + "io.get-coursier:interface": 1635041630, + "io.get-coursier:interface:jar:sources": -37171318, + "io.joern:flatgraph-core_3": 1753885189, + "io.joern:flatgraph-core_3:jar:sources": -755678090, + "io.joern:flatgraph-domain-classes-generator_3": 1301386557, + "io.joern:flatgraph-domain-classes-generator_3:jar:sources": 1912497518, + "io.joern:flatgraph-help_3": -551868212, + "io.joern:flatgraph-help_3:jar:sources": -1070617857, + "io.joern:flatgraph-odb-convert_3": 805764456, + "io.joern:flatgraph-odb-convert_3:jar:sources": 793830638, + "io.shiftleft:overflowdb-core_3": -1655377345, + "io.shiftleft:overflowdb-core_3:jar:sources": 422126785, + "net.oneandone.reflections8:reflections8": -362476393, + "net.oneandone.reflections8:reflections8:jar:sources": 510005338, + "net.sf.trove4j:core": 1052714240, + "net.sf.trove4j:core:jar:sources": -1038049585, + "org.apache.commons:commons-lang3": 1415496185, + "org.apache.commons:commons-lang3:jar:sources": 1080182012, + "org.apache.commons:commons-text": 875846394, + "org.apache.commons:commons-text:jar:sources": 318262210, + "org.checkerframework:checker-qual": -1533199059, + "org.checkerframework:checker-qual:jar:sources": -1750922234, + "org.javassist:javassist": -448825381, + "org.javassist:javassist:jar:sources": 1531561359, + "org.json4s:json4s-ast_3": 878798110, + "org.json4s:json4s-ast_3:jar:sources": 140325100, + "org.json4s:json4s-core_3": -1327401949, + "org.json4s:json4s-core_3:jar:sources": -2043024428, + "org.json4s:json4s-native-core_3": -1463802907, + "org.json4s:json4s-native-core_3:jar:sources": -1913200314, + "org.json4s:json4s-native_3": -1745325382, + "org.json4s:json4s-native_3:jar:sources": 650512086, + "org.json4s:json4s-scalap_3": 1632132590, + "org.json4s:json4s-scalap_3:jar:sources": -763259858, + "org.msgpack:msgpack-core": -1705007667, + "org.msgpack:msgpack-core:jar:sources": -1562951139, + "org.scalameta:scalafmt-dynamic_2.13": -518206696, + "org.scalameta:scalafmt-dynamic_2.13:jar:sources": 756436738, + "org.scalameta:scalafmt-interfaces": -2021536197, + "org.scalameta:scalafmt-interfaces:jar:sources": -969147004, + "org.scalameta:scalafmt-sysops_2.13": -1460516322, + "org.scalameta:scalafmt-sysops_2.13:jar:sources": -455309676, + "org.slf4j:slf4j-api": -1521593912, + "org.slf4j:slf4j-api:jar:sources": -1050183387 + }, + "conflict_resolution": { + "com.google.errorprone:error_prone_annotations:2.5.1": "com.google.errorprone:error_prone_annotations:2.18.0" + }, + "artifacts": { + "com.github.luben:zstd-jni": { + "shasums": { + "jar": "c5530c6fe99df04f9ac041e1b11fcb5772a7f4218c727d7273e0a6e5948b5d12", + "sources": "5bef1c8433fe03e605017d82112f42d0c59d337e85c000248781343203e225c4" + }, + "version": "1.5.7-2" + }, + "com.github.scopt:scopt_3": { + "shasums": { + "jar": "7cfb80743b761b3df8630a818265eb91fd93cd77b32ed5ebd6fba1bb7cff6a3f", + "sources": "846454a216c4c90420adae519864a70f70a17fac0d531ab24250755aabed0a36" + }, + "version": "4.1.0" + }, + "com.google.code.findbugs:jsr305": { + "shasums": { + "jar": "766ad2a0783f2687962c8ad74ceecc38a28b9f72a2d085ee438b7813e928d0c7", + "sources": "1c9e85e272d0708c6a591dc74828c71603053b48cc75ae83cce56912a2aa063b" + }, + "version": "3.0.2" + }, + "com.google.code.gson:gson": { + "shasums": { + "jar": "d3999291855de495c94c743761b8ab5176cfeabe281a5ab0d8e8d45326fd703e", + "sources": "ba5bddb1a89eb721fcca39f3b34294532060f851e2407a82d82134a41eec4719" + }, + "version": "2.8.9" + }, + "com.google.errorprone:error_prone_annotations": { + "shasums": { + "jar": "9e6814cb71816988a4fd1b07a993a8f21bb7058d522c162b1de849e19bea54ae", + "sources": "a2c0783981c8ad48faaa6ea8de6f1926d8e87c125f5df5ce531a9810b943e032" + }, + "version": "2.18.0" + }, + "com.google.guava:failureaccess": { + "shasums": { + "jar": "a171ee4c734dd2da837e4b16be9df4661afab72a41adaf31eb84dfdaf936ca26", + "sources": "092346eebbb1657b51aa7485a246bf602bb464cc0b0e2e1c7e7201fadce1e98f" + }, + "version": "1.0.1" + }, + "com.google.guava:guava": { + "shasums": { + "jar": "bd7fa227591fb8509677d0d1122cf95158f3b8a9f45653f58281d879f6dc48c5", + "sources": "9105dfc522fb440b39ff8da07cc56aacf65a9f765044c7803a9f32e36e05a22b" + }, + "version": "32.0.1-jre" + }, + "com.google.guava:listenablefuture": { + "shasums": { + "jar": "b372a037d4230aa57fbeffdef30fd6123f9c0c2db85d0aced00c91b974f33f99" + }, + "version": "9999.0-empty-to-avoid-conflict-with-guava" + }, + "com.google.j2objc:j2objc-annotations": { + "shasums": { + "jar": "f02a95fa1a5e95edb3ed859fd0fb7df709d121a35290eff8b74dce2ab7f4d6ed", + "sources": "7413eed41f111453a08837f5ac680edded7faed466cbd35745e402e13f4cc3f5" + }, + "version": "2.8" + }, + "com.google.protobuf:protobuf-java": { + "shasums": { + "jar": "ae0459030b54a6f3058ad349aa01fc2edcbb2d4a84b73699675bbd125df2e96d", + "sources": "240db630888d78b6d67c0977416c8a48dd4bce42fb48424d054b128b72420b20" + }, + "version": "4.34.1" + }, + "com.h2database:h2-mvstore": { + "shasums": { + "jar": "961c5e4498d7046a85c1507263a0bac227930edeb28c92f8f929437114d46030", + "sources": "049b0e8ac9fe8b7840907c4bc541426ff287542adcd1053dc89fc7eada5c73ca" + }, + "version": "1.4.200" + }, + "com.lihaoyi:geny_3": { + "shasums": { + "jar": "39658649f90b631a4fd63187724f16ba8a045e1b10a513528f34517fb2edf98b", + "sources": "d5709469c3f2602122dbc7d94b627de2def7e40e99f08bb9b61b95dc93dbeb51" + }, + "version": "1.1.1" + }, + "com.lihaoyi:os-lib_3": { + "shasums": { + "jar": "e12acedbf641c7ef5ee2a9bac636096df78ffd1d22cf1871033203ee59b6e214", + "sources": "14ea39fe58765b2d750e25e30370de581d2a5ccc58e6b0181aecff0c71d0a61e" + }, + "version": "0.11.4" + }, + "com.lihaoyi:ujson_3": { + "shasums": { + "jar": "6a6fc2c9c8643cedb0ebd02e957b4c50dc09d1aef6573ca1e15a8a424c4fa535", + "sources": "cd5678e036a158768090491edefa2f8d532d7aaa01bb691667ed4b35ccd6a410" + }, + "version": "4.1.0" + }, + "com.lihaoyi:upickle-core_3": { + "shasums": { + "jar": "3d4dbd23edca088a83d722998472c1c5c27678bd01f13572c36627d7061cf596", + "sources": "4b34cc2c27bc1abfa4161d157f8be1185ebb6bfe501a544e9650b555f4d2bdda" + }, + "version": "4.1.0" + }, + "com.thoughtworks.paranamer:paranamer": { + "shasums": { + "jar": "688cb118a6021d819138e855208c956031688be4b47a24bb615becc63acedf07", + "sources": "8a4bfc21755c36ccdd70f96d7ab891d842d5aebd6afa1b74e0efc6441e3df39c" + }, + "version": "2.8" + }, + "com.typesafe:config": { + "shasums": { + "jar": "8ada4c185ce72416712d63e0b5afdc5f009c0cdf405e5f26efecdf156aa5dfb6", + "sources": "d3330505601cc47d97d03349d93dff32c85ec3881b5b168a8881c6af8ceb852a" + }, + "version": "1.4.3" + }, + "io.get-coursier:interface": { + "shasums": { + "jar": "7592fe49c789b55429483185ac22ac6da43680a39c53b818c50bca0fb7dd6a78", + "sources": "0ada36c8a3b6c77f7797c7751a8aa2fb40e01bbe50b87dc75b6e098da2086f91" + }, + "version": "1.0.28" + }, + "io.joern:flatgraph-core_3": { + "shasums": { + "jar": "aaee2aa044223e2225ac6d67e1cba8c6628961638e94bf2faffbb6be406d9885", + "sources": "4440b7804c08d4e2bed1e7166736ddf778878c04de5fa64b2e9a58ae6945e439" + }, + "version": "0.1.31" + }, + "io.joern:flatgraph-domain-classes-generator_3": { + "shasums": { + "jar": "9ce9480526043121e6d3ba21b67a5ed3944ad6dd4f36c1a8b6506c4793568977", + "sources": "1506ced55181b6e635fe46df7c7119b1a5c8e7358cdd2539fb4acbedcebde3c0" + }, + "version": "0.1.31" + }, + "io.joern:flatgraph-help_3": { + "shasums": { + "jar": "3e1ff963cc9a87ff100a6311a4ef753d954340c3e600b6d580682616504229f8", + "sources": "7d8ea575fe7ad98af7e660e592a8348167dfe7cbf82a85f1ada72b159b210622" + }, + "version": "0.1.31" + }, + "io.joern:flatgraph-odb-convert_3": { + "shasums": { + "jar": "99512d443f609a5028ec1c1e060f8a997bae1c2dbbcb203b1880c87a16326944", + "sources": "0af913bac0c502ed4d615cd85c9f77abda6d7ceaf30ae8e5bd6c9aacc6222ba3" + }, + "version": "0.1.31" + }, + "io.shiftleft:overflowdb-core_3": { + "shasums": { + "jar": "aacc7f470528ccf44555e0a60cba54f601531b1b551d92cbdf2d6a0ee1899884", + "sources": "8862b5cbd71a65c155ac1c4b51ed9ff6b5a233351a22d57251a08ff4dfd094f7" + }, + "version": "1.194" + }, + "net.oneandone.reflections8:reflections8": { + "shasums": { + "jar": "721477456f75acab46e1b737ca84627c9d531831e33b54303c6a5bd071bafc22", + "sources": "25aa2c5b12e1f42acac98a6d5b3429c74f64dd053902f605d8ebabd8a08419bf" + }, + "version": "0.11.7" + }, + "net.sf.trove4j:core": { + "shasums": { + "jar": "e1fed4d718a86d27c5ebb427810550fa5c03260e350e41a85ef2c2db6eac0856", + "sources": "caef18c0a6636d09557f90525e2952303329cbea80d6f80417c50f5eac7f2166" + }, + "version": "3.1.0" + }, + "org.apache.commons:commons-lang3": { + "shasums": { + "jar": "6ee731df5c8e5a2976a1ca023b6bb320ea8d3539fbe64c8a1d5cb765127c33b4", + "sources": "5fdcac21ad329766054a95367d7583dfcdca737d221d5e01a5f2a198c04c6b18" + }, + "version": "3.17.0" + }, + "org.apache.commons:commons-text": { + "shasums": { + "jar": "1e323a501127df78ed0987f345d69d65d0ea7fa3d4fb5b3f84aaeba3a8b20f38", + "sources": "ef8983f2336be8ee0aea07175d3f661101142ba233d830c59044dda722c9149c" + }, + "version": "1.13.0" + }, + "org.checkerframework:checker-qual": { + "shasums": { + "jar": "e316255bbfcd9fe50d165314b85abb2b33cb2a66a93c491db648e498a82c2de1", + "sources": "443fa6151982bb4c6ce62e2938f53660085b13a7dceb517202777b87d0dea2c7" + }, + "version": "3.33.0" + }, + "org.javassist:javassist": { + "shasums": { + "jar": "59531c00f3e3aa1ff48b3a8cf4ead47d203ab0e2fd9e0ad401f764e05947e252", + "sources": "06f4dcaa2dab9b6004559a52d10a707c69b89776c020c35f16f13e318dc89b8e" + }, + "version": "3.22.0-GA" + }, + "org.json4s:json4s-ast_3": { + "shasums": { + "jar": "9abf57acf0912ea87ee25950c2e717b1953c9fbd50e512005d4782ba7a014ec5", + "sources": "9a941cc22a939cadcd78fa50378bbb6f3ab09421a61af882ee8aa82257b5db4d" + }, + "version": "4.0.3" + }, + "org.json4s:json4s-core_3": { + "shasums": { + "jar": "02b5324658e08bc837a58800ee5863fb890df21b68db6c84391fa9b6d2558d1e", + "sources": "dd7784db655e6b5d41fffa9afe4bf8901a74a18785771fb404afa6109a8dd616" + }, + "version": "4.0.3" + }, + "org.json4s:json4s-native-core_3": { + "shasums": { + "jar": "e68cfc8f0c0c6a53778e6ab660d45264a8e3dc63d63c42aa9a612697583f92d9", + "sources": "80244e1308ce21e132b747be0d01ff26566a4d5082fc8ca913d86f5f3fd8d389" + }, + "version": "4.0.3" + }, + "org.json4s:json4s-native_3": { + "shasums": { + "jar": "678cbb3ee67453c7043c3784beb869bbfd51fcc66d425a4434ff100d52263dcb", + "sources": "7fc51eb72ce0b9af6bd07d14fffcb5f31ee1e5be2d7b6e6f18fc69515c503e6f" + }, + "version": "4.0.3" + }, + "org.json4s:json4s-scalap_3": { + "shasums": { + "jar": "9177935bb5f908fa5bc9a195391bffe6e822734ca711de579275bfd1922baee6", + "sources": "7abf8faab46fcaafd124dc3f4eadc4f31482dad1ff99758deb1752824ff45123" + }, + "version": "4.0.3" + }, + "org.msgpack:msgpack-core": { + "shasums": { + "jar": "183abb2b7c604a8b13d5f76af487ccddd003b6f0404aef52021dcb20a4358524", + "sources": "58ba6c1f80904bd0e93ba85cd07e210af24468f15cbcb73261fbb7eb1acce7ac" + }, + "version": "0.9.1" + }, + "org.scalameta:scalafmt-dynamic_2.13": { + "shasums": { + "jar": "f953acd468bf2f897f70964f1bc7a5dffdeb45db581799dc959fa32f7fb3b405", + "sources": "03bd706d0db6afb090256459e0764d28ebad37b160f18773895b2a6640e34a61" + }, + "version": "3.9.6" + }, + "org.scalameta:scalafmt-interfaces": { + "shasums": { + "jar": "3d67252a6511aad53ea54b9207d8bff86bcc9f63b33b79b00285404c2df60b9a", + "sources": "3d2340fb6dfa6c539f08ff3b4c98f1f09c441161b8500236802b13248951c57c" + }, + "version": "3.9.6" + }, + "org.scalameta:scalafmt-sysops_2.13": { + "shasums": { + "jar": "a3d36a31a694b81fd8e284fe93f2a0a55d2c31cef5386edac1e59a2daa3d586a", + "sources": "0884531fa8e15877cea5a99847f7297b0f796adb28eaf14f3e231a21cce1e608" + }, + "version": "3.9.6" + }, + "org.slf4j:slf4j-api": { + "shasums": { + "jar": "7b751d952061954d5abfed7181c1f645d336091b679891591d63329c622eb832", + "sources": "db0d08d8efa05ad19d174d747bd9d8e68dbb02b596812fe7b3a681656e346694" + }, + "version": "2.0.17" + } + }, + "dependencies": { + "com.google.guava:guava": [ + "com.google.code.findbugs:jsr305", + "com.google.errorprone:error_prone_annotations", + "com.google.guava:failureaccess", + "com.google.guava:listenablefuture", + "com.google.j2objc:j2objc-annotations", + "org.checkerframework:checker-qual" + ], + "com.lihaoyi:os-lib_3": [ + "com.lihaoyi:geny_3" + ], + "com.lihaoyi:ujson_3": [ + "com.lihaoyi:upickle-core_3" + ], + "com.lihaoyi:upickle-core_3": [ + "com.lihaoyi:geny_3" + ], + "io.get-coursier:interface": [ + "org.slf4j:slf4j-api" + ], + "io.joern:flatgraph-core_3": [ + "com.github.luben:zstd-jni", + "com.lihaoyi:ujson_3", + "org.slf4j:slf4j-api" + ], + "io.joern:flatgraph-domain-classes-generator_3": [ + "com.github.scopt:scopt_3", + "com.lihaoyi:os-lib_3", + "org.apache.commons:commons-text", + "org.scalameta:scalafmt-dynamic_2.13" + ], + "io.joern:flatgraph-help_3": [ + "io.joern:flatgraph-core_3", + "net.oneandone.reflections8:reflections8" + ], + "io.joern:flatgraph-odb-convert_3": [ + "io.joern:flatgraph-core_3", + "io.shiftleft:overflowdb-core_3" + ], + "io.shiftleft:overflowdb-core_3": [ + "com.h2database:h2-mvstore", + "net.sf.trove4j:core", + "org.msgpack:msgpack-core", + "org.slf4j:slf4j-api" + ], + "net.oneandone.reflections8:reflections8": [ + "org.javassist:javassist" + ], + "org.apache.commons:commons-text": [ + "org.apache.commons:commons-lang3" + ], + "org.json4s:json4s-core_3": [ + "com.thoughtworks.paranamer:paranamer", + "org.json4s:json4s-ast_3", + "org.json4s:json4s-scalap_3" + ], + "org.json4s:json4s-native-core_3": [ + "org.json4s:json4s-ast_3" + ], + "org.json4s:json4s-native_3": [ + "org.json4s:json4s-core_3", + "org.json4s:json4s-native-core_3" + ], + "org.scalameta:scalafmt-dynamic_2.13": [ + "com.typesafe:config", + "io.get-coursier:interface", + "org.scalameta:scalafmt-interfaces", + "org.scalameta:scalafmt-sysops_2.13" + ] + }, + "packages": { + "com.github.luben:zstd-jni": [ + "com.github.luben.zstd", + "com.github.luben.zstd.util" + ], + "com.github.scopt:scopt_3": [ + "scopt" + ], + "com.google.code.findbugs:jsr305": [ + "javax.annotation", + "javax.annotation.concurrent", + "javax.annotation.meta" + ], + "com.google.code.gson:gson": [ + "com.google.gson", + "com.google.gson.annotations", + "com.google.gson.internal", + "com.google.gson.internal.bind", + "com.google.gson.internal.bind.util", + "com.google.gson.internal.reflect", + "com.google.gson.internal.sql", + "com.google.gson.reflect", + "com.google.gson.stream" + ], + "com.google.errorprone:error_prone_annotations": [ + "com.google.errorprone.annotations", + "com.google.errorprone.annotations.concurrent" + ], + "com.google.guava:failureaccess": [ + "com.google.common.util.concurrent.internal" + ], + "com.google.guava:guava": [ + "com.google.common.annotations", + "com.google.common.base", + "com.google.common.base.internal", + "com.google.common.cache", + "com.google.common.collect", + "com.google.common.escape", + "com.google.common.eventbus", + "com.google.common.graph", + "com.google.common.hash", + "com.google.common.html", + "com.google.common.io", + "com.google.common.math", + "com.google.common.net", + "com.google.common.primitives", + "com.google.common.reflect", + "com.google.common.util.concurrent", + "com.google.common.xml", + "com.google.thirdparty.publicsuffix" + ], + "com.google.j2objc:j2objc-annotations": [ + "com.google.j2objc.annotations" + ], + "com.google.protobuf:protobuf-java": [ + "com.google.protobuf", + "com.google.protobuf.compiler" + ], + "com.h2database:h2-mvstore": [ + "org.h2.api", + "org.h2.compress", + "org.h2.engine", + "org.h2.jdbc", + "org.h2.message", + "org.h2.mvstore", + "org.h2.mvstore.cache", + "org.h2.mvstore.rtree", + "org.h2.mvstore.tx", + "org.h2.mvstore.type", + "org.h2.security", + "org.h2.store.fs", + "org.h2.util", + "org.h2.value" + ], + "com.lihaoyi:geny_3": [ + "geny" + ], + "com.lihaoyi:os-lib_3": [ + "os" + ], + "com.lihaoyi:ujson_3": [ + "ujson" + ], + "com.lihaoyi:upickle-core_3": [ + "upickle.core", + "upickle.core.compat" + ], + "com.thoughtworks.paranamer:paranamer": [ + "com.thoughtworks.paranamer" + ], + "com.typesafe:config": [ + "com.typesafe.config", + "com.typesafe.config.impl", + "com.typesafe.config.parser" + ], + "io.get-coursier:interface": [ + "coursierapi", + "coursierapi.error", + "coursierapi.internal.jniutils", + "coursierapi.shaded.commonscompress", + "coursierapi.shaded.commonscompress.archivers", + "coursierapi.shaded.commonscompress.archivers.tar", + "coursierapi.shaded.commonscompress.archivers.zip", + "coursierapi.shaded.commonscompress.compressors", + "coursierapi.shaded.commonscompress.compressors.bzip2", + "coursierapi.shaded.commonscompress.compressors.deflate64", + "coursierapi.shaded.commonscompress.compressors.lzw", + "coursierapi.shaded.commonscompress.compressors.xz", + "coursierapi.shaded.commonscompress.compressors.zstandard", + "coursierapi.shaded.commonscompress.utils", + "coursierapi.shaded.commonsio", + "coursierapi.shaded.commonsio.build", + "coursierapi.shaded.commonsio.file", + "coursierapi.shaded.commonsio.file.attribute", + "coursierapi.shaded.commonsio.filefilter", + "coursierapi.shaded.commonsio.function", + "coursierapi.shaded.commonsio.input", + "coursierapi.shaded.commonsio.output", + "coursierapi.shaded.compress", + "coursierapi.shaded.compress.snappy", + "coursierapi.shaded.concurrentrefhashmap", + "coursierapi.shaded.coursier", + "coursierapi.shaded.coursier.cache", + "coursierapi.shaded.coursier.cache.internal", + "coursierapi.shaded.coursier.cache.loggers", + "coursierapi.shaded.coursier.cache.shaded.dirs", + "coursierapi.shaded.coursier.cache.shaded.dirs.impl", + "coursierapi.shaded.coursier.cache.shaded.dirs.jni", + "coursierapi.shaded.coursier.complete", + "coursierapi.shaded.coursier.core", + "coursierapi.shaded.coursier.core.compatibility", + "coursierapi.shaded.coursier.core.shaded.fastparse", + "coursierapi.shaded.coursier.core.shaded.fastparse.internal", + "coursierapi.shaded.coursier.core.shaded.sourcecode", + "coursierapi.shaded.coursier.credentials", + "coursierapi.shaded.coursier.error", + "coursierapi.shaded.coursier.error.conflict", + "coursierapi.shaded.coursier.graph", + "coursierapi.shaded.coursier.internal", + "coursierapi.shaded.coursier.internal.api", + "coursierapi.shaded.coursier.ivy", + "coursierapi.shaded.coursier.jniutils", + "coursierapi.shaded.coursier.jvm", + "coursierapi.shaded.coursier.jvm.util", + "coursierapi.shaded.coursier.maven", + "coursierapi.shaded.coursier.params", + "coursierapi.shaded.coursier.params.rule", + "coursierapi.shaded.coursier.parse", + "coursierapi.shaded.coursier.paths", + "coursierapi.shaded.coursier.util", + "coursierapi.shaded.coursier.util.shaded.org.jsoup", + "coursierapi.shaded.coursier.util.shaded.org.jsoup.helper", + "coursierapi.shaded.coursier.util.shaded.org.jsoup.internal", + "coursierapi.shaded.coursier.util.shaded.org.jsoup.nodes", + "coursierapi.shaded.coursier.util.shaded.org.jsoup.parser", + "coursierapi.shaded.coursier.util.shaded.org.jsoup.select", + "coursierapi.shaded.dependency", + "coursierapi.shaded.dependency.parser", + "coursierapi.shaded.isterminal", + "coursierapi.shaded.jsoniter", + "coursierapi.shaded.lang3", + "coursierapi.shaded.lang3.function", + "coursierapi.shaded.org.fusesource.jansi.internal", + "coursierapi.shaded.plexus.archiver", + "coursierapi.shaded.plexus.archiver.tar", + "coursierapi.shaded.plexus.archiver.util", + "coursierapi.shaded.plexus.archiver.zip", + "coursierapi.shaded.plexus.components.io.attributes", + "coursierapi.shaded.plexus.components.io.filemappers", + "coursierapi.shaded.plexus.components.io.fileselectors", + "coursierapi.shaded.plexus.components.io.resources", + "coursierapi.shaded.plexus.util", + "coursierapi.shaded.plexus.util.cli", + "coursierapi.shaded.scala", + "coursierapi.shaded.scala.cli.commands", + "coursierapi.shaded.scala.cli.config", + "coursierapi.shaded.scala.collection", + "coursierapi.shaded.scala.collection.concurrent", + "coursierapi.shaded.scala.collection.convert", + "coursierapi.shaded.scala.collection.generic", + "coursierapi.shaded.scala.collection.immutable", + "coursierapi.shaded.scala.collection.mutable", + "coursierapi.shaded.scala.concurrent", + "coursierapi.shaded.scala.concurrent.duration", + "coursierapi.shaded.scala.concurrent.impl", + "coursierapi.shaded.scala.math", + "coursierapi.shaded.scala.ref", + "coursierapi.shaded.scala.reflect", + "coursierapi.shaded.scala.runtime", + "coursierapi.shaded.scala.sys", + "coursierapi.shaded.scala.sys.process", + "coursierapi.shaded.scala.util", + "coursierapi.shaded.scala.util.control", + "coursierapi.shaded.scala.util.hashing", + "coursierapi.shaded.scala.util.matching", + "coursierapi.shaded.scala.xml", + "coursierapi.shaded.scala.xml.dtd", + "coursierapi.shaded.scala.xml.dtd.impl", + "coursierapi.shaded.scala.xml.factory", + "coursierapi.shaded.scala.xml.parsing", + "coursierapi.shaded.windowsansi", + "coursierapi.shaded.xz", + "coursierapi.shaded.xz.check", + "coursierapi.shaded.xz.common", + "coursierapi.shaded.xz.delta", + "coursierapi.shaded.xz.index", + "coursierapi.shaded.xz.lz", + "coursierapi.shaded.xz.lzma", + "coursierapi.shaded.xz.rangecoder", + "coursierapi.shaded.xz.simple", + "coursierapi.shaded.zstd", + "coursierapi.shaded.zstd.util" + ], + "io.joern:flatgraph-core_3": [ + "flatgraph", + "flatgraph.algorithm", + "flatgraph.help", + "flatgraph.misc", + "flatgraph.storage", + "flatgraph.traversal", + "flatgraph.util" + ], + "io.joern:flatgraph-domain-classes-generator_3": [ + "flatgraph.algorithm", + "flatgraph.codegen", + "flatgraph.schema" + ], + "io.joern:flatgraph-help_3": [ + "flatgraph.help" + ], + "io.joern:flatgraph-odb-convert_3": [ + "flatgraph.convert" + ], + "io.shiftleft:overflowdb-core_3": [ + "overflowdb", + "overflowdb.misc", + "overflowdb.storage", + "overflowdb.util" + ], + "net.oneandone.reflections8:reflections8": [ + "org.reflections8", + "org.reflections8.adapters", + "org.reflections8.scanners", + "org.reflections8.serializers", + "org.reflections8.util", + "org.reflections8.vfs" + ], + "net.sf.trove4j:core": [ + "gnu.trove", + "gnu.trove.decorator", + "gnu.trove.function", + "gnu.trove.impl", + "gnu.trove.impl.hash", + "gnu.trove.impl.sync", + "gnu.trove.impl.unmodifiable", + "gnu.trove.iterator", + "gnu.trove.iterator.hash", + "gnu.trove.list", + "gnu.trove.list.array", + "gnu.trove.list.linked", + "gnu.trove.map", + "gnu.trove.map.custom_hash", + "gnu.trove.map.hash", + "gnu.trove.procedure", + "gnu.trove.procedure.array", + "gnu.trove.queue", + "gnu.trove.set", + "gnu.trove.set.hash", + "gnu.trove.stack", + "gnu.trove.stack.array", + "gnu.trove.strategy" + ], + "org.apache.commons:commons-lang3": [ + "org.apache.commons.lang3", + "org.apache.commons.lang3.arch", + "org.apache.commons.lang3.builder", + "org.apache.commons.lang3.compare", + "org.apache.commons.lang3.concurrent", + "org.apache.commons.lang3.concurrent.locks", + "org.apache.commons.lang3.event", + "org.apache.commons.lang3.exception", + "org.apache.commons.lang3.function", + "org.apache.commons.lang3.math", + "org.apache.commons.lang3.mutable", + "org.apache.commons.lang3.reflect", + "org.apache.commons.lang3.stream", + "org.apache.commons.lang3.text", + "org.apache.commons.lang3.text.translate", + "org.apache.commons.lang3.time", + "org.apache.commons.lang3.tuple", + "org.apache.commons.lang3.util" + ], + "org.apache.commons:commons-text": [ + "org.apache.commons.text", + "org.apache.commons.text.diff", + "org.apache.commons.text.io", + "org.apache.commons.text.lookup", + "org.apache.commons.text.matcher", + "org.apache.commons.text.numbers", + "org.apache.commons.text.similarity", + "org.apache.commons.text.translate" + ], + "org.checkerframework:checker-qual": [ + "org.checkerframework.checker.builder.qual", + "org.checkerframework.checker.calledmethods.qual", + "org.checkerframework.checker.compilermsgs.qual", + "org.checkerframework.checker.fenum.qual", + "org.checkerframework.checker.formatter.qual", + "org.checkerframework.checker.guieffect.qual", + "org.checkerframework.checker.i18n.qual", + "org.checkerframework.checker.i18nformatter.qual", + "org.checkerframework.checker.index.qual", + "org.checkerframework.checker.initialization.qual", + "org.checkerframework.checker.interning.qual", + "org.checkerframework.checker.lock.qual", + "org.checkerframework.checker.mustcall.qual", + "org.checkerframework.checker.nullness.qual", + "org.checkerframework.checker.optional.qual", + "org.checkerframework.checker.propkey.qual", + "org.checkerframework.checker.regex.qual", + "org.checkerframework.checker.signature.qual", + "org.checkerframework.checker.signedness.qual", + "org.checkerframework.checker.tainting.qual", + "org.checkerframework.checker.units.qual", + "org.checkerframework.common.aliasing.qual", + "org.checkerframework.common.initializedfields.qual", + "org.checkerframework.common.reflection.qual", + "org.checkerframework.common.returnsreceiver.qual", + "org.checkerframework.common.subtyping.qual", + "org.checkerframework.common.util.report.qual", + "org.checkerframework.common.value.qual", + "org.checkerframework.dataflow.qual", + "org.checkerframework.framework.qual" + ], + "org.javassist:javassist": [ + "javassist", + "javassist.bytecode", + "javassist.bytecode.analysis", + "javassist.bytecode.annotation", + "javassist.bytecode.stackmap", + "javassist.compiler", + "javassist.compiler.ast", + "javassist.convert", + "javassist.expr", + "javassist.runtime", + "javassist.scopedpool", + "javassist.tools", + "javassist.tools.reflect", + "javassist.tools.rmi", + "javassist.tools.web", + "javassist.util", + "javassist.util.proxy" + ], + "org.json4s:json4s-ast_3": [ + "org.json4s", + "org.json4s.prefs" + ], + "org.json4s:json4s-core_3": [ + "org.json4s", + "org.json4s.prefs", + "org.json4s.reflect" + ], + "org.json4s:json4s-native-core_3": [ + "org.json4s.native" + ], + "org.json4s:json4s-native_3": [ + "org.json4s.native" + ], + "org.json4s:json4s-scalap_3": [ + "org.json4s.scalap", + "org.json4s.scalap.scalasig" + ], + "org.msgpack:msgpack-core": [ + "org.msgpack.core", + "org.msgpack.core.annotations", + "org.msgpack.core.buffer", + "org.msgpack.value", + "org.msgpack.value.impl" + ], + "org.scalameta:scalafmt-dynamic_2.13": [ + "org.scalafmt.dynamic", + "org.scalafmt.dynamic.exceptions", + "org.scalafmt.dynamic.utils" + ], + "org.scalameta:scalafmt-interfaces": [ + "org.scalafmt.interfaces" + ], + "org.scalameta:scalafmt-sysops_2.13": [ + "org.scalafmt", + "org.scalafmt.sysops" + ], + "org.slf4j:slf4j-api": [ + "org.slf4j", + "org.slf4j.event", + "org.slf4j.helpers", + "org.slf4j.spi" + ] + }, + "repositories": { + "https://repo1.maven.org/maven2/": [ + "com.github.luben:zstd-jni", + "com.github.luben:zstd-jni:jar:sources", + "com.github.scopt:scopt_3", + "com.github.scopt:scopt_3:jar:sources", + "com.google.code.findbugs:jsr305", + "com.google.code.findbugs:jsr305:jar:sources", + "com.google.code.gson:gson", + "com.google.code.gson:gson:jar:sources", + "com.google.errorprone:error_prone_annotations", + "com.google.errorprone:error_prone_annotations:jar:sources", + "com.google.guava:failureaccess", + "com.google.guava:failureaccess:jar:sources", + "com.google.guava:guava", + "com.google.guava:guava:jar:sources", + "com.google.guava:listenablefuture", + "com.google.j2objc:j2objc-annotations", + "com.google.j2objc:j2objc-annotations:jar:sources", + "com.google.protobuf:protobuf-java", + "com.google.protobuf:protobuf-java:jar:sources", + "com.h2database:h2-mvstore", + "com.h2database:h2-mvstore:jar:sources", + "com.lihaoyi:geny_3", + "com.lihaoyi:geny_3:jar:sources", + "com.lihaoyi:os-lib_3", + "com.lihaoyi:os-lib_3:jar:sources", + "com.lihaoyi:ujson_3", + "com.lihaoyi:ujson_3:jar:sources", + "com.lihaoyi:upickle-core_3", + "com.lihaoyi:upickle-core_3:jar:sources", + "com.thoughtworks.paranamer:paranamer", + "com.thoughtworks.paranamer:paranamer:jar:sources", + "com.typesafe:config", + "com.typesafe:config:jar:sources", + "io.get-coursier:interface", + "io.get-coursier:interface:jar:sources", + "io.joern:flatgraph-core_3", + "io.joern:flatgraph-core_3:jar:sources", + "io.joern:flatgraph-domain-classes-generator_3", + "io.joern:flatgraph-domain-classes-generator_3:jar:sources", + "io.joern:flatgraph-help_3", + "io.joern:flatgraph-help_3:jar:sources", + "io.joern:flatgraph-odb-convert_3", + "io.joern:flatgraph-odb-convert_3:jar:sources", + "io.shiftleft:overflowdb-core_3", + "io.shiftleft:overflowdb-core_3:jar:sources", + "net.oneandone.reflections8:reflections8", + "net.oneandone.reflections8:reflections8:jar:sources", + "net.sf.trove4j:core", + "net.sf.trove4j:core:jar:sources", + "org.apache.commons:commons-lang3", + "org.apache.commons:commons-lang3:jar:sources", + "org.apache.commons:commons-text", + "org.apache.commons:commons-text:jar:sources", + "org.checkerframework:checker-qual", + "org.checkerframework:checker-qual:jar:sources", + "org.javassist:javassist", + "org.javassist:javassist:jar:sources", + "org.json4s:json4s-ast_3", + "org.json4s:json4s-ast_3:jar:sources", + "org.json4s:json4s-core_3", + "org.json4s:json4s-core_3:jar:sources", + "org.json4s:json4s-native-core_3", + "org.json4s:json4s-native-core_3:jar:sources", + "org.json4s:json4s-native_3", + "org.json4s:json4s-native_3:jar:sources", + "org.json4s:json4s-scalap_3", + "org.json4s:json4s-scalap_3:jar:sources", + "org.msgpack:msgpack-core", + "org.msgpack:msgpack-core:jar:sources", + "org.scalameta:scalafmt-dynamic_2.13", + "org.scalameta:scalafmt-dynamic_2.13:jar:sources", + "org.scalameta:scalafmt-interfaces", + "org.scalameta:scalafmt-interfaces:jar:sources", + "org.scalameta:scalafmt-sysops_2.13", + "org.scalameta:scalafmt-sysops_2.13:jar:sources", + "org.slf4j:slf4j-api", + "org.slf4j:slf4j-api:jar:sources" + ] + }, + "services": { + "com.h2database:h2-mvstore:jar:sources": { + "java.sql.Driver": [ + "org.h2.Driver" + ] + }, + "io.get-coursier:interface": { + "coursierapi.shaded.coursier.jniutils.NativeApi": [ + "coursierapi.internal.jniutils.ApiInternalNativeApi" + ] + }, + "org.scalameta:scalafmt-dynamic_2.13": { + "org.scalafmt.interfaces.Scalafmt": [ + "org.scalafmt.dynamic.ScalafmtDynamic" + ] + }, + "org.scalameta:scalafmt-dynamic_2.13:jar:sources": { + "org.scalafmt.interfaces.Scalafmt": [ + "org.scalafmt.dynamic.ScalafmtDynamic" + ] + } + }, + "version": "3" +} diff --git a/samples/pass/src/main/scala/io/shiftleft/passes/mypass/SamplePass.scala b/samples/pass/src/main/scala/io/shiftleft/passes/mypass/SamplePass.scala index b109811c7..057dc3f17 100644 --- a/samples/pass/src/main/scala/io/shiftleft/passes/mypass/SamplePass.scala +++ b/samples/pass/src/main/scala/io/shiftleft/passes/mypass/SamplePass.scala @@ -14,12 +14,11 @@ class SamplePass(cpg: Cpg) extends SimpleCpgPass(cpg) { } object SamplePassMain extends App { - val filename = "src_cpg.bin.zip" - val odbConfig = new overflowdb.Config().withStorageLocation(filename) - val loaderConfig = CpgLoaderConfig().withOverflowConfig(odbConfig) - val cpg = CpgLoader.loadFromOverflowDb(loaderConfig) + val filename = "src_cpg.bin.zip" + val odbConfig = new overflowdb.Config().withStorageLocation(filename) + val loaderConfig = CpgLoaderConfig().withOverflowConfig(odbConfig) + val cpg = CpgLoader.loadFromOverflowDb(loaderConfig) val serializedCpg = new SerializedCpg("/tmp/dst.bin.zip") - val pass = new SamplePass(cpg) + val pass = new SamplePass(cpg) pass.createApplySerializeAndStore(serializedCpg) } - diff --git a/schema/BUILD b/schema/BUILD new file mode 100644 index 000000000..ffaa0fc22 --- /dev/null +++ b/schema/BUILD @@ -0,0 +1,128 @@ +load("@protobuf//bazel:java_proto_library.bzl", "java_proto_library") +load("@protobuf//bazel:proto_library.bzl", "proto_library") +load("//bazel:java.bzl", "java_import") +load("//bazel:scala.bzl", "scala_binary", "scala_library") + +scala_library( + name = "schema", + srcs = glob(["src/main/scala/**/*.scala"]), + visibility = ["//visibility:public"], + deps = [ + "@maven//:io_joern_flatgraph_domain_classes_generator_3", + ], +) + +scala_binary( + name = "codegen", + main_class = "flatgraph.codegen.Main", + runtime_deps = [ + ":schema", + ], + deps = [ + "@maven//:io_joern_flatgraph_domain_classes_generator_3", + ], +) + +genrule( + name = "run_codegen", + outs = ["generated_classes.srcjar"], + cmd = """ + $(location :codegen) -c 'io.shiftleft.codepropertygraph.schema.CpgSchema$$' -f instance -o $(RULEDIR)/generated_classes + $(JAVABASE)/bin/jar --create --file $@ -C $(RULEDIR)/generated_classes . + """, + toolchains = ["@bazel_tools//tools/jdk:current_java_runtime"], + tools = [":codegen"], +) + +# TODO remove workaround once bug is fixed +# We would want to use this library target directly to include the generated +# files. While this works fine for the build itself, we currently have a bug +# in the Intellij Bazel plugin which prevents it from reliable picking up +# the generated class symbols for symbol resolution resulting in a bunch of +# red unresolved symbols. We cannot accept this for the generated domain +# classes as those are the type system anchors for all our DSL language steps +# which means we would have no completion for them in the IDE. +# To resolve this we package the resulting jars from this target into a single +# jar in 'domainClasses_jar' and include the resulting jar via a java_import +# rule. +# Once this is not needed anymore we can just rename this target to 'domainClasses' +# and delete 'domainClasses_jar' and the java_import rule. +scala_library( + name = "domainClassesDontUseDirectly", + srcs = [":run_codegen"], + javacopts = [ + "-XepDisableAllChecks", + ], + deps = [ + "@maven//:io_joern_flatgraph_core_3", + "@maven//:io_joern_flatgraph_help_3", + ], +) + +genrule( + name = "domainClasses_jar", + srcs = [":domainClassesDontUseDirectly"], + outs = ["domainClasses.jar"], + cmd = """ + START_PWD=$$(pwd) + TMP=$$(mktemp -d) + for jar in $(locations :domainClassesDontUseDirectly); do + (cd $$TMP && $$START_PWD/$(JAVABASE)/bin/jar -xf $$START_PWD/$$jar) + done + $(JAVABASE)/bin/jar cf $@ -C $$TMP . + rm -rf $$TMP + """, + toolchains = ["@bazel_tools//tools/jdk:current_java_runtime"], +) + +genrule( + name = "domainClasses_src_jar", + srcs = [":run_codegen"], + outs = ["domainClasses-sources.jar"], + cmd = "cp $< $@", +) + +java_import( + name = "domainClasses", + jars = [":domainClasses_jar"], + srcjar = ":domainClasses_src_jar", + visibility = ["//visibility:public"], + exports = [ + "@maven//:io_joern_flatgraph_core_3", + "@maven//:io_joern_flatgraph_help_3", + ], +) + +scala_binary( + name = "protogen-bin", + main_class = "io.shiftleft.codepropertygraph.schema.Protogen", + runtime_deps = [ + ":schema", + ], + deps = [ + ], +) + +genrule( + name = "run_protogen", + outs = ["cpg.proto"], + cmd = """ + $(location :protogen-bin) $(RULEDIR)/ + """, + tools = [":protogen-bin"], +) + +proto_library( + name = "proto", + srcs = [ + ":run_protogen", + ], +) + +java_proto_library( + name = "java_proto", + visibility = ["//visibility:public"], + deps = [ + ":proto", + ], +) diff --git a/schema2json/BUILD b/schema2json/BUILD new file mode 100644 index 000000000..6290e27dd --- /dev/null +++ b/schema2json/BUILD @@ -0,0 +1,15 @@ +load("//bazel:scala.bzl", "scala_binary") + +scala_binary( + name = "schema2json", + srcs = glob([ + "src/main/scala/**/*.scala", + ]), + main_class = "Schema2Json", + deps = [ + "//schema", + "@maven//:com_lihaoyi_os_lib_3", + "@maven//:org_json4s_json4s_ast_3", + "@maven//:org_json4s_json4s_native_3", + ], +)