From 36674f796a2a60994324d74ca6bf12ee07a7b7ac Mon Sep 17 00:00:00 2001 From: Jochen Hoenle Date: Tue, 14 Jul 2026 14:26:06 +0200 Subject: [PATCH 1/2] [rules score] make example separate modules - create separate bazel modules - include them in docu --- .bazelignore | 3 ++ .github/workflows/tests.yml | 8 +++ MODULE.bazel | 51 ++++++++++--------- bazel/rules/rules_score/BUILD | 1 + .../rules_score/docs/integration_guide.rst | 1 + .../rules_score/docs/tooling_architecture.rst | 5 +- .../rules/rules_score/examples/seooc/.bazelrc | 8 +++ .../rules_score/examples/seooc/.bazelversion | 1 + bazel/rules/rules_score/examples/seooc/BUILD | 29 ++++++----- .../rules_score/examples/seooc/MODULE.bazel | 50 ++++++++++++++++++ .../examples/seooc/bazel/toolchains/BUILD | 34 +++++++++++++ .../rules_score/examples/seooc/design/BUILD | 4 +- .../rules_score/examples/seooc/docs/BUILD | 28 ++++------ .../examples/seooc/docs/requirements/BUILD | 4 +- .../examples/seooc/safety_analysis/BUILD | 4 +- .../rules_score/examples/seooc/unit_1/BUILD | 8 +-- .../examples/seooc/unit_1/docs/BUILD | 2 +- .../rules_score/examples/seooc/unit_1/foo.cpp | 2 +- .../examples/seooc/unit_1/foo_test.cpp | 2 +- .../rules_score/examples/seooc/unit_2/BUILD | 8 +-- .../rules_score/examples/seooc/unit_2/bar.cpp | 2 +- .../rules_score/examples/seooc/unit_2/bar.h | 2 +- .../examples/seooc/unit_2/bar_test.cpp | 2 +- .../examples/seooc/unit_2/docs/BUILD | 2 +- .../examples/some_other_library/.bazelrc | 8 +++ .../examples/some_other_library/.bazelversion | 1 + .../examples/some_other_library/BUILD | 21 +++----- .../examples/some_other_library/MODULE.bazel | 37 ++++++++++++++ .../some_other_library/bazel/toolchains/BUILD | 38 ++++++++++++++ .../private/dependable_element.bzl | 8 ++- validation/ai_checker/README.md | 2 +- 31 files changed, 279 insertions(+), 97 deletions(-) create mode 100644 bazel/rules/rules_score/examples/seooc/.bazelrc create mode 120000 bazel/rules/rules_score/examples/seooc/.bazelversion create mode 100644 bazel/rules/rules_score/examples/seooc/MODULE.bazel create mode 100644 bazel/rules/rules_score/examples/seooc/bazel/toolchains/BUILD create mode 100644 bazel/rules/rules_score/examples/some_other_library/.bazelrc create mode 120000 bazel/rules/rules_score/examples/some_other_library/.bazelversion create mode 100644 bazel/rules/rules_score/examples/some_other_library/MODULE.bazel create mode 100644 bazel/rules/rules_score/examples/some_other_library/bazel/toolchains/BUILD diff --git a/.bazelignore b/.bazelignore index d3dcf303..ef1e4a20 100644 --- a/.bazelignore +++ b/.bazelignore @@ -15,3 +15,6 @@ python_basics/integration_tests starpls/integration_tests # Should be run from its own directory (separate Module) bazel/rules/rules_score/test +# Separate local Bazel modules (use @seooc// and @some_other_library// instead) +bazel/rules/rules_score/examples/seooc +bazel/rules/rules_score/examples/some_other_library diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 51686a5d..19192f39 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -96,6 +96,14 @@ jobs: run: | cd cr_checker/tests bazel test //... + - name: Run dependable element examples + run: | + cd bazel/rules/rules_score/examples/seooc + bazel build //... + bazel test //... + cd ../some_other_library + bazel build //... + bazel test //... rules_score_tests: runs-on: ubuntu-24.04 permissions: diff --git a/MODULE.bazel b/MODULE.bazel index 0fd002cd..45a8e3d1 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -20,19 +20,38 @@ module( ############################################################################### # Core Dependencies ############################################################################### +bazel_dep(name = "aspect_rules_py", version = "1.4.0") # py_binary/py_library loads in cli_helper.bzl:13, cr_checker.bzl:16, defs.bzl:16, etc. + +bazel_dep(name = "aspect_rules_lint", version = "1.5.3", dev_dependency = True) + +bazel_dep(name = "rules_java", version = "8.15.1") # required for dash + +bazel_dep(name = "buildifier_prebuilt", version = "8.2.0.2", dev_dependency = True) + +## Rules Score bazel_dep(name = "rules_cc", version = "0.2.14") bazel_dep(name = "rules_python", version = "1.4.1") -bazel_dep(name = "aspect_rules_py", version = "1.4.0") bazel_dep(name = "platforms", version = "1.0.0") -bazel_dep(name = "aspect_rules_lint", version = "1.5.3") bazel_dep(name = "rules_shell", version = "0.5.0") -bazel_dep(name = "rules_java", version = "8.15.1") bazel_dep(name = "rules_rust", version = "0.68.1-score") bazel_dep(name = "score_rust_policies", version = "0.0.2") bazel_dep(name = "bazel_skylib", version = "1.7.1") -bazel_dep(name = "buildifier_prebuilt", version = "8.2.0.2") bazel_dep(name = "flatbuffers", version = "25.9.23") bazel_dep(name = "download_utils", version = "1.2.2") +bazel_dep(name = "trlc", version = "3.0.0") +bazel_dep(name = "lobster", version = "1.0.3") +git_override( + module_name = "lobster", + commit = "07382c33f95e22992e0f8788c0537ec06877e51f", + remote = "https://github.com/bmw-software-engineering/lobster.git", +) + +bazel_dep(name = "rules_distroless", version = "0.8.0") # For +bazel_dep(name = "googletest", version = "1.17.0.bcr.2") + +bazel_dep(name = "toolchains_llvm", version = "1.6.0", dev_dependency = True) # Libclang Tooling + +bazel_dep(name = "rules_jvm_external", version = "6.10") # PlantUML # flatbuffers depends on this transitively, but older grpc-java version # The main problem is that there the command `bazel mod deps` is broken, which @@ -42,7 +61,6 @@ bazel_dep(name = "grpc-java", version = "1.75.0.bcr.1") ############################################################################### # CC Toolchain ############################################################################### - bazel_dep(name = "score_bazel_cpp_toolchains", version = "0.3.1", dev_dependency = True) score_gcc = use_extension("@score_bazel_cpp_toolchains//extensions:gcc.bzl", "gcc", dev_dependency = True) @@ -184,7 +202,7 @@ python.toolchain( ############################################################################### pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip") -# Main tooling pip +# Python Tooling [ pip.parse( envsubst = ["PIP_INDEX_URL"], @@ -199,6 +217,7 @@ pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip") ] ] +# Lobster Bazel use_repo(pip, "pip_tooling") [ @@ -217,6 +236,7 @@ use_repo(pip, "pip_tooling") use_repo(pip, "pip_lobster_bazel") +# Rules Score Python Deps [ pip.parse( envsubst = ["PIP_INDEX_URL"], @@ -250,8 +270,6 @@ deb( # Distroless rootfs providing graphviz + fakechroot for hermetic dot execution # via //third_party/docs_runtime:dot (exec_in_sysroot). ############################################################################### -bazel_dep(name = "rules_distroless", version = "0.8.0") - # bsdtar (used by //bazel/rules/exec_in_sysroot to extract sysroot archives). bazel_dep(name = "tar.bzl", version = "0.6.0") @@ -268,16 +286,9 @@ register_toolchains( "//bazel/rules/rules_score:sphinx_default_toolchain", ) -############################################################################### -# Setup Googletest -############################################################################### -bazel_dep(name = "googletest", version = "1.17.0.bcr.2", dev_dependency = True) - ############################################################################### # Blueprint Maven ############################################################################### -bazel_dep(name = "rules_jvm_external", version = "6.10") - maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven") maven.install( name = "blueprint_maven_dependencies", @@ -307,14 +318,6 @@ use_repo(maven, "blueprint_maven_dependencies") use_repo(pip, "manual_analysis_deps") -bazel_dep(name = "trlc", version = "3.0.0") -bazel_dep(name = "lobster", version = "1.0.3") -git_override( - module_name = "lobster", - commit = "07382c33f95e22992e0f8788c0537ec06877e51f", - remote = "https://github.com/bmw-software-engineering/lobster.git", -) - ############################################################################### # Dependencies for AI Checker ############################################################################### @@ -350,8 +353,6 @@ use_repo(pip, "pip_ai_checker") ############################################################################### # LLVM Toolchain ############################################################################### -bazel_dep(name = "toolchains_llvm", version = "1.6.0", dev_dependency = True) - llvm = use_extension( "@toolchains_llvm//toolchain/extensions:llvm.bzl", "llvm", diff --git a/bazel/rules/rules_score/BUILD b/bazel/rules/rules_score/BUILD index cc441cbc..0aae7bfa 100644 --- a/bazel/rules/rules_score/BUILD +++ b/bazel/rules/rules_score/BUILD @@ -167,6 +167,7 @@ sphinx_docs_library( sphinx_module( name = "rules_score_doc", + testonly = True, srcs = glob( [ "docs/**/*.rst", diff --git a/bazel/rules/rules_score/docs/integration_guide.rst b/bazel/rules/rules_score/docs/integration_guide.rst index ddee0901..d3f9a9e2 100644 --- a/bazel/rules/rules_score/docs/integration_guide.rst +++ b/bazel/rules/rules_score/docs/integration_guide.rst @@ -222,6 +222,7 @@ The Bazel rule sets one variable: - Content * - ``GRAPHVIZ_DOT`` - Path to the ``dot`` binary + The value points to the hermetic wrapper executable. The wrapper resolves and executes graphviz from the sysroot itself, so no custom ``LD_LIBRARY_PATH`` / ``GVBINDIR`` wiring is required in the Sphinx action. diff --git a/bazel/rules/rules_score/docs/tooling_architecture.rst b/bazel/rules/rules_score/docs/tooling_architecture.rst index d1eb04df..39e5bf7f 100644 --- a/bazel/rules/rules_score/docs/tooling_architecture.rst +++ b/bazel/rules/rules_score/docs/tooling_architecture.rst @@ -334,14 +334,11 @@ The ``fmea`` rule drives three actions, all reading the input artifacts above: The lobster outputs travel separately on ``AnalysisInfo.lobster_files`` (``failuremodes.lobster``, ``controlmeasures.lobster``, ``root_causes.lobster``) into the ``dependability_analysis`` traceability report. - to the outer index toctree. ``fmea`` uses this for the ``detail_*.rst`` - sub-pages, which are referenced from the inner ``.. toctree::`` inside - ``fmea.rst`` rather than from the section index. .. _hermetic-tool-path-resolution: Hermetic tool path resolution ----------------- +------------------------------ Background: Bazel action environment ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/bazel/rules/rules_score/examples/seooc/.bazelrc b/bazel/rules/rules_score/examples/seooc/.bazelrc new file mode 100644 index 00000000..983b3ff3 --- /dev/null +++ b/bazel/rules/rules_score/examples/seooc/.bazelrc @@ -0,0 +1,8 @@ +# Copyright (c) 2026 Contributors to the Eclipse Foundation +# +# SPDX-License-Identifier: Apache-2.0 + +common --registry=https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/ +common --registry=https://bcr.bazel.build + +common --extra_toolchains=//bazel/toolchains:seooc_libclang_toolchain diff --git a/bazel/rules/rules_score/examples/seooc/.bazelversion b/bazel/rules/rules_score/examples/seooc/.bazelversion new file mode 120000 index 00000000..2ba86160 --- /dev/null +++ b/bazel/rules/rules_score/examples/seooc/.bazelversion @@ -0,0 +1 @@ +../../../../../.bazelversion \ No newline at end of file diff --git a/bazel/rules/rules_score/examples/seooc/BUILD b/bazel/rules/rules_score/examples/seooc/BUILD index fd0653ae..6a1f476b 100644 --- a/bazel/rules/rules_score/examples/seooc/BUILD +++ b/bazel/rules/rules_score/examples/seooc/BUILD @@ -12,7 +12,7 @@ # ******************************************************************************* load( - "//bazel/rules/rules_score:rules_score.bzl", + "@score_tooling//bazel/rules/rules_score:rules_score.bzl", "component", "dependability_analysis", "dependable_element", @@ -22,20 +22,20 @@ cc_library( name = "sample_library", visibility = ["//visibility:public"], deps = [ - "//bazel/rules/rules_score/examples/seooc/unit_1:unit_1_lib", - "//bazel/rules/rules_score/examples/seooc/unit_2:unit_2_lib", + "//unit_1:unit_1_lib", + "//unit_2:unit_2_lib", ], ) component( name = "component_example", components = [ - "//bazel/rules/rules_score/examples/seooc/unit_1:unit_1", - "//bazel/rules/rules_score/examples/seooc/unit_2:unit_2", + "//unit_1:unit_1", + "//unit_2:unit_2", ], requirements = [ - "//bazel/rules/rules_score/examples/seooc/docs/requirements:component_requirements", - "//bazel/rules/rules_score/examples/seooc/docs/requirements:component_requirements_extra", + "//docs/requirements:component_requirements", + "//docs/requirements:component_requirements_extra", ], tags = ["manual"], tests = [], @@ -43,8 +43,8 @@ component( dependability_analysis( name = "sample_dependability_analysis", - arch_design = "//bazel/rules/rules_score/examples/seooc/design:sample_seooc_design", - fmea = ["//bazel/rules/rules_score/examples/seooc/safety_analysis:sample_fmea"], + arch_design = "//design:sample_seooc_design", + fmea = ["//safety_analysis:sample_fmea"], ) dependable_element( @@ -52,18 +52,19 @@ dependable_element( # Chain-forward received AoUs that this element cannot handle itself. # TimingConstraint from other_seooc is forwarded to dependees (integrator). aou_forwarding = "aou_forwarding.yaml", - architectural_design = ["//bazel/rules/rules_score/examples/seooc/design:sample_seooc_design"], - assumptions_of_use = ["//bazel/rules/rules_score/examples/seooc/docs:sample_aous"], + architectural_design = ["//design:sample_seooc_design"], + assumptions_of_use = ["//docs:sample_aous"], components = [":component_example"], dependability_analysis = [ ":sample_dependability_analysis", ], - glossary = ["//bazel/rules/rules_score/examples/seooc/docs:glossary"], + docs_prefix = "bazel/rules/rules_score/docs/sphinx/", + glossary = ["//docs:glossary"], integrity_level = "B", requirements = [ - "//bazel/rules/rules_score/examples/seooc/docs/requirements:feature_requirements", + "//docs/requirements:feature_requirements", ], tests = [], visibility = ["//:__subpackages__"], - deps = ["//bazel/rules/rules_score/examples/some_other_library:other_seooc"], + deps = ["@some_other_library//:other_seooc"], ) diff --git a/bazel/rules/rules_score/examples/seooc/MODULE.bazel b/bazel/rules/rules_score/examples/seooc/MODULE.bazel new file mode 100644 index 00000000..9dbb95dd --- /dev/null +++ b/bazel/rules/rules_score/examples/seooc/MODULE.bazel @@ -0,0 +1,50 @@ +# ******************************************************************************* +# Copyright (c) 2026 Contributors to the Eclipse Foundation +# +# See the NOTICE file(s) distributed with this work for additional +# information regarding copyright ownership. +# +# This program and the accompanying materials are made available under the +# terms of the Apache License Version 2.0 which is available at +# https://www.apache.org/licenses/LICENSE-2.0 +# +# SPDX-License-Identifier: Apache-2.0 +# ******************************************************************************* + +module( + name = "seooc", + version = "0.0.0", +) + +bazel_dep(name = "score_tooling", version = "0.0.0") +bazel_dep(name = "some_other_library", version = "0.0.0") + +local_path_override( + module_name = "score_tooling", + path = "../../../../..", +) + +local_path_override( + module_name = "some_other_library", + path = "../some_other_library", +) + +# Some other llvm toolchain +bazel_dep(name = "toolchains_llvm", version = "1.6.0", dev_dependency = True) + +llvm = use_extension( + "@toolchains_llvm//toolchain/extensions:llvm.bzl", + "llvm", + dev_dependency = True, +) +llvm.toolchain(llvm_version = "19.1.7") +use_repo(llvm, "llvm_toolchain", "llvm_toolchain_llvm") + +bazel_dep(name = "trlc", version = "3.0.0") +bazel_dep(name = "googletest", version = "1.17.0.bcr.2") +bazel_dep(name = "lobster", version = "1.0.3") +git_override( + module_name = "lobster", + commit = "07382c33f95e22992e0f8788c0537ec06877e51f", + remote = "https://github.com/bmw-software-engineering/lobster.git", +) diff --git a/bazel/rules/rules_score/examples/seooc/bazel/toolchains/BUILD b/bazel/rules/rules_score/examples/seooc/bazel/toolchains/BUILD new file mode 100644 index 00000000..bb3d9903 --- /dev/null +++ b/bazel/rules/rules_score/examples/seooc/bazel/toolchains/BUILD @@ -0,0 +1,34 @@ +# ******************************************************************************* +# Copyright (c) 2026 Contributors to the Eclipse Foundation +# +# See the NOTICE file(s) distributed with this work for additional +# information regarding copyright ownership. +# +# This program and the accompanying materials are made available under the +# terms of the Apache License Version 2.0 which is available at +# https://www.apache.org/licenses/LICENSE-2.0 +# +# SPDX-License-Identifier: Apache-2.0 +# ******************************************************************************* + +load( + "@score_tooling//cpp/libclang:libclang_toolchain.bzl", + "libclang_toolchain", +) + +# ============================================================================ +# libclang toolchain for the C++ parser used by score rules +# ============================================================================ +libclang_toolchain( + name = "seooc_libclang", + cxx_builtin_include = "@llvm_toolchain_llvm//:cxx_builtin_include", + extra_config_site = "@llvm_toolchain_llvm//:extra_config_site", + libclang = "@llvm_toolchain_llvm//:lib/libclang.so", +) + +toolchain( + name = "seooc_libclang_toolchain", + toolchain = ":seooc_libclang", + toolchain_type = "@score_tooling//cpp/libclang:libclang_toolchain_type", + visibility = ["//:__subpackages__"], +) diff --git a/bazel/rules/rules_score/examples/seooc/design/BUILD b/bazel/rules/rules_score/examples/seooc/design/BUILD index 2c6e44a3..daf0e18e 100644 --- a/bazel/rules/rules_score/examples/seooc/design/BUILD +++ b/bazel/rules/rules_score/examples/seooc/design/BUILD @@ -11,10 +11,10 @@ # SPDX-License-Identifier: Apache-2.0 # ******************************************************************************* load( - "//bazel/rules/rules_score:rules_score.bzl", + "@score_tooling//bazel/rules/rules_score:rules_score.bzl", "architectural_design", ) -load("//validation/ai_checker:ai_checker.bzl", "architecture_ai_test") +load("@score_tooling//validation/ai_checker:ai_checker.bzl", "architecture_ai_test") architectural_design( name = "sample_seooc_design", diff --git a/bazel/rules/rules_score/examples/seooc/docs/BUILD b/bazel/rules/rules_score/examples/seooc/docs/BUILD index 1c9e5502..d0fb80d4 100644 --- a/bazel/rules/rules_score/examples/seooc/docs/BUILD +++ b/bazel/rules/rules_score/examples/seooc/docs/BUILD @@ -1,3 +1,9 @@ +load( + "@score_tooling//bazel/rules/rules_score:rules_score.bzl", + "assumptions_of_use", + "glossary", +) + # ******************************************************************************* # Copyright (c) 2026 Contributors to the Eclipse Foundation # @@ -10,34 +16,20 @@ # # SPDX-License-Identifier: Apache-2.0 # ******************************************************************************* -load("@trlc//:trlc.bzl", "trlc_requirements", "trlc_requirements_test") -load( - "//bazel/rules/rules_score:rules_score.bzl", - "assumptions_of_use", - "glossary", -) +load("@trlc//:trlc.bzl", "trlc_requirements_test") -trlc_requirements( - name = "aous", +assumptions_of_use( + name = "sample_aous", srcs = [ "aous.trlc", ], - spec = [ - "@score_tooling//bazel/rules/rules_score/trlc/config:score_requirements_model", - ], - visibility = ["//visibility:public"], -) - -assumptions_of_use( - name = "sample_aous", - srcs = [":aous"], visibility = ["//visibility:public"], ) trlc_requirements_test( name = "aous_test", reqs = [ - ":aous", + ":sample_aous", ], visibility = ["//visibility:public"], ) diff --git a/bazel/rules/rules_score/examples/seooc/docs/requirements/BUILD b/bazel/rules/rules_score/examples/seooc/docs/requirements/BUILD index 9acf5946..b90391c9 100644 --- a/bazel/rules/rules_score/examples/seooc/docs/requirements/BUILD +++ b/bazel/rules/rules_score/examples/seooc/docs/requirements/BUILD @@ -11,8 +11,8 @@ # SPDX-License-Identifier: Apache-2.0 # ******************************************************************************* -load("//bazel/rules/rules_score:rules_score.bzl", "assumed_system_requirements", "component_requirements", "feature_requirements") -load("//validation/ai_checker:ai_checker.bzl", "trlc_requirements_ai_test") +load("@score_tooling//bazel/rules/rules_score:rules_score.bzl", "assumed_system_requirements", "component_requirements", "feature_requirements") +load("@score_tooling//validation/ai_checker:ai_checker.bzl", "trlc_requirements_ai_test") assumed_system_requirements( name = "assumed_system_requirements", diff --git a/bazel/rules/rules_score/examples/seooc/safety_analysis/BUILD b/bazel/rules/rules_score/examples/seooc/safety_analysis/BUILD index 5ef3be59..cfba949a 100644 --- a/bazel/rules/rules_score/examples/seooc/safety_analysis/BUILD +++ b/bazel/rules/rules_score/examples/seooc/safety_analysis/BUILD @@ -12,7 +12,7 @@ # ******************************************************************************* load( - "//bazel/rules/rules_score:rules_score.bzl", + "@score_tooling//bazel/rules/rules_score:rules_score.bzl", "fmea", ) @@ -29,7 +29,7 @@ filegroup( fmea( name = "sample_fmea", - arch_design = "//bazel/rules/rules_score/examples/seooc/design:sample_seooc_design", + arch_design = "//design:sample_seooc_design", controlmeasures = ["sample_fmea_control_measures.trlc"], failuremodes = ["sample_fmea_failure_modes.trlc"], root_causes = [":sample_fta"], diff --git a/bazel/rules/rules_score/examples/seooc/unit_1/BUILD b/bazel/rules/rules_score/examples/seooc/unit_1/BUILD index 0c65e425..8977a8cb 100644 --- a/bazel/rules/rules_score/examples/seooc/unit_1/BUILD +++ b/bazel/rules/rules_score/examples/seooc/unit_1/BUILD @@ -11,7 +11,7 @@ # SPDX-License-Identifier: Apache-2.0 # ******************************************************************************* load( - "//bazel/rules/rules_score:rules_score.bzl", + "@score_tooling//bazel/rules/rules_score:rules_score.bzl", "unit", ) @@ -19,12 +19,12 @@ unit( name = "unit_1", # scope = ["//bazel/rules/rules_score/examples/seooc/unit_1:__pkg__"], # scope = ["//bazel/rules/rules_score/examples/seooc:__subpackages__"], - scope = ["//bazel/rules/rules_score/examples/seooc/unit_1:unit_1_lib"], + scope = ["//unit_1:unit_1_lib"], tests = [ ":unit_1_test", ], unit_design = [ - "//bazel/rules/rules_score/examples/seooc/unit_1/docs:unit_design", + "//unit_1/docs:unit_design", ], visibility = ["//visibility:public"], implementation = [ @@ -37,7 +37,7 @@ cc_library( srcs = ["foo.cpp"], hdrs = ["foo.h"], visibility = ["//visibility:public"], - deps = ["//bazel/rules/rules_score/examples/some_other_library"], + deps = ["@some_other_library"], ) cc_test( diff --git a/bazel/rules/rules_score/examples/seooc/unit_1/docs/BUILD b/bazel/rules/rules_score/examples/seooc/unit_1/docs/BUILD index 2abb961a..cbc75757 100644 --- a/bazel/rules/rules_score/examples/seooc/unit_1/docs/BUILD +++ b/bazel/rules/rules_score/examples/seooc/unit_1/docs/BUILD @@ -11,7 +11,7 @@ # SPDX-License-Identifier: Apache-2.0 # ******************************************************************************* load( - "//bazel/rules/rules_score:rules_score.bzl", + "@score_tooling//bazel/rules/rules_score:rules_score.bzl", "unit_design", ) diff --git a/bazel/rules/rules_score/examples/seooc/unit_1/foo.cpp b/bazel/rules/rules_score/examples/seooc/unit_1/foo.cpp index d8943bd8..65c52d8a 100644 --- a/bazel/rules/rules_score/examples/seooc/unit_1/foo.cpp +++ b/bazel/rules/rules_score/examples/seooc/unit_1/foo.cpp @@ -11,7 +11,7 @@ * SPDX-License-Identifier: Apache-2.0 ********************************************************************************/ -#include "bazel/rules/rules_score/examples/seooc/unit_1/foo.h" +#include "unit_1/foo.h" namespace unit_1 { diff --git a/bazel/rules/rules_score/examples/seooc/unit_1/foo_test.cpp b/bazel/rules/rules_score/examples/seooc/unit_1/foo_test.cpp index 42e9c575..6cc8e1cb 100644 --- a/bazel/rules/rules_score/examples/seooc/unit_1/foo_test.cpp +++ b/bazel/rules/rules_score/examples/seooc/unit_1/foo_test.cpp @@ -11,7 +11,7 @@ * SPDX-License-Identifier: Apache-2.0 ********************************************************************************/ -#include "bazel/rules/rules_score/examples/seooc/unit_1/foo.h" +#include "unit_1/foo.h" #include diff --git a/bazel/rules/rules_score/examples/seooc/unit_2/BUILD b/bazel/rules/rules_score/examples/seooc/unit_2/BUILD index f356759c..b12569e5 100644 --- a/bazel/rules/rules_score/examples/seooc/unit_2/BUILD +++ b/bazel/rules/rules_score/examples/seooc/unit_2/BUILD @@ -11,7 +11,7 @@ # SPDX-License-Identifier: Apache-2.0 # ******************************************************************************* load( - "//bazel/rules/rules_score:rules_score.bzl", + "@score_tooling//bazel/rules/rules_score:rules_score.bzl", "unit", ) @@ -19,12 +19,12 @@ unit( name = "unit_2", # scope = ["//bazel/rules/rules_score/examples/seooc/unit_2:__pkg__"], # scope = ["//bazel/rules/rules_score/examples/seooc:__subpackages__"], - scope = ["//bazel/rules/rules_score/examples/seooc/unit_2:__subpackages__"], + scope = ["//unit_2:__subpackages__"], tests = [ ":unit_2_test", ], unit_design = [ - "//bazel/rules/rules_score/examples/seooc/unit_2/docs:unit_design", + "//unit_2/docs:unit_design", ], visibility = ["//visibility:public"], implementation = [ @@ -38,7 +38,7 @@ cc_library( hdrs = ["bar.h"], visibility = ["//visibility:public"], deps = [ - "//bazel/rules/rules_score/examples/seooc/unit_1:unit_1_lib", + "//unit_1:unit_1_lib", ], ) diff --git a/bazel/rules/rules_score/examples/seooc/unit_2/bar.cpp b/bazel/rules/rules_score/examples/seooc/unit_2/bar.cpp index d1dd155d..d4c3c584 100644 --- a/bazel/rules/rules_score/examples/seooc/unit_2/bar.cpp +++ b/bazel/rules/rules_score/examples/seooc/unit_2/bar.cpp @@ -11,7 +11,7 @@ * SPDX-License-Identifier: Apache-2.0 ********************************************************************************/ -#include "bazel/rules/rules_score/examples/seooc/unit_2/bar.h" +#include "unit_2/bar.h" #include diff --git a/bazel/rules/rules_score/examples/seooc/unit_2/bar.h b/bazel/rules/rules_score/examples/seooc/unit_2/bar.h index c5e63243..6f24c0ee 100644 --- a/bazel/rules/rules_score/examples/seooc/unit_2/bar.h +++ b/bazel/rules/rules_score/examples/seooc/unit_2/bar.h @@ -14,7 +14,7 @@ #ifndef BAR_H #define BAR_H -#include "bazel/rules/rules_score/examples/seooc/unit_1/foo.h" +#include "unit_1/foo.h" #include #include diff --git a/bazel/rules/rules_score/examples/seooc/unit_2/bar_test.cpp b/bazel/rules/rules_score/examples/seooc/unit_2/bar_test.cpp index 17334981..ad633943 100644 --- a/bazel/rules/rules_score/examples/seooc/unit_2/bar_test.cpp +++ b/bazel/rules/rules_score/examples/seooc/unit_2/bar_test.cpp @@ -11,7 +11,7 @@ * SPDX-License-Identifier: Apache-2.0 ********************************************************************************/ -#include "bazel/rules/rules_score/examples/seooc/unit_2/bar.h" +#include "unit_2/bar.h" #include diff --git a/bazel/rules/rules_score/examples/seooc/unit_2/docs/BUILD b/bazel/rules/rules_score/examples/seooc/unit_2/docs/BUILD index 4b7777fb..c41dc37a 100644 --- a/bazel/rules/rules_score/examples/seooc/unit_2/docs/BUILD +++ b/bazel/rules/rules_score/examples/seooc/unit_2/docs/BUILD @@ -11,7 +11,7 @@ # SPDX-License-Identifier: Apache-2.0 # ******************************************************************************* load( - "//bazel/rules/rules_score:rules_score.bzl", + "@score_tooling//bazel/rules/rules_score:rules_score.bzl", "unit_design", ) diff --git a/bazel/rules/rules_score/examples/some_other_library/.bazelrc b/bazel/rules/rules_score/examples/some_other_library/.bazelrc new file mode 100644 index 00000000..42f3d086 --- /dev/null +++ b/bazel/rules/rules_score/examples/some_other_library/.bazelrc @@ -0,0 +1,8 @@ +# Copyright (c) 2026 Contributors to the Eclipse Foundation +# +# SPDX-License-Identifier: Apache-2.0 + +common --registry=https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/ +common --registry=https://bcr.bazel.build + +common --extra_toolchains=//bazel/toolchains:some_other_library_libclang_toolchain diff --git a/bazel/rules/rules_score/examples/some_other_library/.bazelversion b/bazel/rules/rules_score/examples/some_other_library/.bazelversion new file mode 120000 index 00000000..2ba86160 --- /dev/null +++ b/bazel/rules/rules_score/examples/some_other_library/.bazelversion @@ -0,0 +1 @@ +../../../../../.bazelversion \ No newline at end of file diff --git a/bazel/rules/rules_score/examples/some_other_library/BUILD b/bazel/rules/rules_score/examples/some_other_library/BUILD index c53d97d3..fd144a82 100644 --- a/bazel/rules/rules_score/examples/some_other_library/BUILD +++ b/bazel/rules/rules_score/examples/some_other_library/BUILD @@ -10,9 +10,9 @@ # # SPDX-License-Identifier: Apache-2.0 # ******************************************************************************* -load("@trlc//:trlc.bzl", "trlc_requirements") + load( - "//bazel/rules/rules_score:rules_score.bzl", + "@score_tooling//bazel/rules/rules_score:rules_score.bzl", "architectural_design", "assumptions_of_use", "component", @@ -27,20 +27,14 @@ architectural_design( ], ) -trlc_requirements( - name = "aous_trlc", - srcs = ["aous.trlc"], - spec = ["@score_tooling//bazel/rules/rules_score/trlc/config:score_requirements_model"], -) - assumptions_of_use( name = "other_library_aous", - srcs = [":aous_trlc"], + srcs = ["aous.trlc"], ) unit( name = "abc", - scope = ["//bazel/rules/rules_score/examples/some_other_library:__pkg__"], + scope = ["//:__pkg__"], tests = [], unit_design = [], implementation = [ @@ -53,7 +47,7 @@ component( components = [ ":abc", ], - requirements = ["//bazel/rules/rules_score/examples/seooc/docs/requirements:component_requirements"], + requirements = [], # TODO: define own requirements (removed circular dep on @seooc) tags = ["manual"], tests = [], ) @@ -64,15 +58,16 @@ dependable_element( assumptions_of_use = [":other_library_aous"], components = [":component_example"], dependability_analysis = [], + docs_prefix = "bazel/rules/rules_score/docs/sphinx/", integrity_level = "D", requirements = [], tests = [], - visibility = ["//:__subpackages__"], + visibility = ["//visibility:public"], ) cc_library( name = "some_other_library", srcs = [], - visibility = ["//:__subpackages__"], + visibility = ["//visibility:public"], deps = [], ) diff --git a/bazel/rules/rules_score/examples/some_other_library/MODULE.bazel b/bazel/rules/rules_score/examples/some_other_library/MODULE.bazel new file mode 100644 index 00000000..d44fe4bf --- /dev/null +++ b/bazel/rules/rules_score/examples/some_other_library/MODULE.bazel @@ -0,0 +1,37 @@ +# ******************************************************************************* +# Copyright (c) 2026 Contributors to the Eclipse Foundation +# +# See the NOTICE file(s) distributed with this work for additional +# information regarding copyright ownership. +# +# This program and the accompanying materials are made available under the +# terms of the Apache License Version 2.0 which is available at +# https://www.apache.org/licenses/LICENSE-2.0 +# +# SPDX-License-Identifier: Apache-2.0 +# ******************************************************************************* + +module( + name = "some_other_library", + version = "0.0.0", +) + +# S-Core Tooling +bazel_dep(name = "score_tooling", version = "0.0.0") +local_path_override( + module_name = "score_tooling", + path = "../../../../../", +) + +# Some other llvm toolchain +bazel_dep(name = "toolchains_llvm", version = "1.6.0", dev_dependency = True) + +llvm = use_extension( + "@toolchains_llvm//toolchain/extensions:llvm.bzl", + "llvm", + dev_dependency = True, +) +llvm.toolchain(llvm_version = "19.1.7") +use_repo(llvm, "llvm_toolchain", "llvm_toolchain_llvm") + +bazel_dep(name = "trlc", version = "3.0.0") diff --git a/bazel/rules/rules_score/examples/some_other_library/bazel/toolchains/BUILD b/bazel/rules/rules_score/examples/some_other_library/bazel/toolchains/BUILD new file mode 100644 index 00000000..e60f56fb --- /dev/null +++ b/bazel/rules/rules_score/examples/some_other_library/bazel/toolchains/BUILD @@ -0,0 +1,38 @@ +# ******************************************************************************* +# Copyright (c) 2026 Contributors to the Eclipse Foundation +# +# See the NOTICE file(s) distributed with this work for additional +# information regarding copyright ownership. +# +# This program and the accompanying materials are made available under the +# terms of the Apache License Version 2.0 which is available at +# https://www.apache.org/licenses/LICENSE-2.0 +# +# SPDX-License-Identifier: Apache-2.0 +# ******************************************************************************* + +load( + "@score_tooling//bazel/rules/rules_score:sphinx_toolchain.bzl", + "sphinx_toolchain", +) +load( + "@score_tooling//cpp/libclang:libclang_toolchain.bzl", + "libclang_toolchain", +) + +# ============================================================================ +# libclang toolchain for the C++ parser used by score rules +# ============================================================================ +libclang_toolchain( + name = "some_other_library_libclang", + cxx_builtin_include = "@llvm_toolchain_llvm//:cxx_builtin_include", + extra_config_site = "@llvm_toolchain_llvm//:extra_config_site", + libclang = "@llvm_toolchain_llvm//:lib/libclang.so", +) + +toolchain( + name = "some_other_library_libclang_toolchain", + toolchain = ":some_other_library_libclang", + toolchain_type = "@score_tooling//cpp/libclang:libclang_toolchain_type", + visibility = ["//:__subpackages__"], +) diff --git a/bazel/rules/rules_score/private/dependable_element.bzl b/bazel/rules/rules_score/private/dependable_element.bzl index 6c249a88..811d450a 100644 --- a/bazel/rules/rules_score/private/dependable_element.bzl +++ b/bazel/rules/rules_score/private/dependable_element.bzl @@ -1432,6 +1432,7 @@ def dependable_element( maturity = "release", sphinx = Label("//bazel/rules/rules_score:score_build"), testonly = True, + docs_prefix = "docs/sphinx/", **kwargs): """Define a dependable element (Safety Element out of Context - SEooC) following S-CORE process guidelines. @@ -1472,6 +1473,11 @@ def dependable_element( chain-forwarding received AoUs that this element cannot handle. sphinx: Label to sphinx build binary. Default: //bazel/rules/rules_score:score_build testonly: If True, only testonly targets can depend on this target. + docs_prefix: Prefix under which the generated `_rst` sphinx_docs_library + exposes its RST sources, so that an external Sphinx build can embed it via + `docs_library_deps`. Defaults to "docs/sphinx/" (the doc root convention used + by the communication repo); override when consuming from a different + directory layout (e.g. "bazel/rules/rules_score/docs/sphinx/"). Generated Targets: _index: Internal rule that generates index.rst and copies artifacts @@ -1538,7 +1544,7 @@ def dependable_element( sphinx_docs_library( name = name + "_rst", srcs = [":" + name + "_index"], - prefix = "docs/sphinx/", + prefix = docs_prefix, testonly = testonly, visibility = ["//visibility:public"], ) diff --git a/validation/ai_checker/README.md b/validation/ai_checker/README.md index 64fdcbf6..2ed1fbc1 100644 --- a/validation/ai_checker/README.md +++ b/validation/ai_checker/README.md @@ -338,4 +338,4 @@ The debug log contains: ## Developer Guide Architecture, agent internals, the report pipeline, caching, and extension -points are documented in [DEVELOPMENT.md](DEVELOPMENT.md). +points are documented in [DEVELOPMENT.md](https://github.com/eclipse-score/tooling/blob/main/validation/ai_checker/DEVELOPMENT.md). From d68d9818c2b2e6d707c8b66f5ec06e965e7b46f8 Mon Sep 17 00:00:00 2001 From: Jochen Hoenle <173445474+hoe-jo@users.noreply.github.com> Date: Wed, 15 Jul 2026 14:52:40 +0200 Subject: [PATCH 2/2] [rules score] remove pdf support - no bazel solution for libcairo available --- .github/workflows/deploy_docs.yml | 2 +- .github/workflows/tests.yml | 4 - bazel/rules/rules_score/BUILD | 2 - bazel/rules/rules_score/requirements.in | 2 - bazel/rules/rules_score/requirements_3_11.txt | 304 +----------------- bazel/rules/rules_score/requirements_3_12.txt | 304 +----------------- tools/sphinx/BUILD | 2 - 7 files changed, 5 insertions(+), 615 deletions(-) diff --git a/.github/workflows/deploy_docs.yml b/.github/workflows/deploy_docs.yml index b4a6a529..8c305388 100644 --- a/.github/workflows/deploy_docs.yml +++ b/.github/workflows/deploy_docs.yml @@ -48,7 +48,7 @@ jobs: - name: Install system dependencies run: | sudo apt-get update - sudo apt-get install -y pkg-config libcairo2-dev lcov + sudo apt-get install -y lcov - name: Determine version id: version run: | diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 19192f39..61807d0f 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -123,10 +123,6 @@ jobs: repository-cache: true cache-optimized: true cache-save: ${{ github.ref == 'refs/heads/main' }} - - name: Install Missing Dependencies - run: | - sudo apt-get update - sudo apt-get install -y libcairo2-dev - name: Run rules_score tests run: | cd bazel/rules/rules_score/test diff --git a/bazel/rules/rules_score/BUILD b/bazel/rules/rules_score/BUILD index 0aae7bfa..47a4fd47 100644 --- a/bazel/rules/rules_score/BUILD +++ b/bazel/rules/rules_score/BUILD @@ -221,9 +221,7 @@ py_binary( requirement("sphinx_design"), requirement("myst_parser"), requirement("readthedocs_sphinx_ext"), - requirement("rst2pdf"), requirement("sphinxcontrib-umlet"), - requirement("svglib"), requirement("sphinxcontrib-plantuml"), ], ) diff --git a/bazel/rules/rules_score/requirements.in b/bazel/rules/rules_score/requirements.in index b22a28a7..b83cf0ff 100644 --- a/bazel/rules/rules_score/requirements.in +++ b/bazel/rules/rules_score/requirements.in @@ -1,11 +1,9 @@ myst-parser pyyaml readthedocs-sphinx-ext -rst2pdf sphinx sphinx-needs sphinx-design sphinxcontrib-plantuml sphinxcontrib-umlet sphinx-rtd-theme -svglib diff --git a/bazel/rules/rules_score/requirements_3_11.txt b/bazel/rules/rules_score/requirements_3_11.txt index 25a9a655..2477da4b 100644 --- a/bazel/rules/rules_score/requirements_3_11.txt +++ b/bazel/rules/rules_score/requirements_3_11.txt @@ -146,30 +146,14 @@ charset-normalizer==3.4.7 \ --hash=sha256:f59ad4c0e8f6bba240a9bb85504faa1ab438237199d4cce5f622761507b8f6a6 \ --hash=sha256:fbccdc05410c9ee21bbf16a35f4c1d16123dcdeb8a1d38f33654fa21d0234f79 \ --hash=sha256:fea24543955a6a729c45a73fe90e08c743f0b3334bbf3201e6c4bc1b0c7fa464 - # via - # reportlab - # requests -cssselect2==0.9.0 \ - --hash=sha256:6a99e5f91f9a016a304dd929b0966ca464bcfda15177b6fb4a118fc0fb5d9563 \ - --hash=sha256:759aa22c216326356f65e62e791d66160a0f9c91d1424e8d8adc5e74dddfc6fb - # via svglib + # via requests docutils==0.22.4 \ --hash=sha256:4db53b1fde9abecbb74d91230d32ab626d94f6badfc575d6db9194a49df29968 \ --hash=sha256:d0013f540772d1420576855455d050a2180186c91c15779301ac2ccb3eeb68de # via # myst-parser - # rst2pdf # sphinx # sphinx-rtd-theme -freetype-py==2.5.1 \ - --hash=sha256:0b7f8e0342779f65ca13ef8bc103938366fecade23e6bb37cb671c2b8ad7f124 \ - --hash=sha256:289b443547e03a4f85302e3ac91376838e0d11636050166662a4f75e3087ed0b \ - --hash=sha256:3c1aefc4f0d5b7425f014daccc5fdc7c6f914fb7d6a695cc684f1c09cd8c1660 \ - --hash=sha256:5d2f6b3d68496797da23204b3b9c4e77e67559c80390fc0dc8b3f454ae1cd819 \ - --hash=sha256:cd3bfdbb7e1a84818cfbc8025fca3096f4f2afcd5d4641184bf0a3a2e6f97bbf \ - --hash=sha256:cfe2686a174d0dd3d71a9d8ee9bf6a2c23f5872385cf8ce9f24af83d076e2fbd \ - --hash=sha256:d01ded2557694f06aa0413f3400c0c0b2b5ebcaabeef7aaf3d756be44f51e90b - # via rlpycairo idna==3.15 \ --hash=sha256:048adeaf8c2d788c40fee287673ccaa74c24ffd8dcf09ffa555a2fbb59f10ac8 \ --hash=sha256:ca962446ea538f7092a95e057da437618e886f4d349216d2b1e294abfdb65fdc @@ -184,7 +168,6 @@ jinja2==3.1.6 \ # via # myst-parser # readthedocs-sphinx-ext - # rst2pdf # sphinx jsonschema-rs==0.37.4 \ --hash=sha256:03b34f911e99343fc388651688683010daee538a3cf8cf86a7997bca28fdf16b \ @@ -200,142 +183,6 @@ jsonschema-rs==0.37.4 \ --hash=sha256:e159075b1846718466998d5a9294c661113b347b8b4749767680a97c8ed2bf4d \ --hash=sha256:e93a8720f6e858d872dc2882e7d3b3243ee76f7aa4d60048272773d44df466e7 # via sphinx-needs -lxml==6.1.0 \ - --hash=sha256:00750d63ef0031a05331b9223463b1c7c02b9004cef2346a5b2877f0f9494dd2 \ - --hash=sha256:022981127642fe19866d2907d76241bb07ed21749601f727d5d5dd1ce5d1b773 \ - --hash=sha256:045e387d1f4f42a418380930fa3f45c73c9b392faf67e495e58902e68e8f44a7 \ - --hash=sha256:05b9b8787e35bec69e68daf4952b2e6dfcfb0db7ecf1a06f8cdfbbac4eb71aad \ - --hash=sha256:07f98f5496f96bf724b1e3c933c107f0cbf2745db18c03d2e13a291c3afd2635 \ - --hash=sha256:08950a23f296b3f83521577274e3d3b0f3d739bf2e68d01a752e4288bc50d286 \ - --hash=sha256:0d082495c5fcf426e425a6e28daaba1fcb6d8f854a4ff01effb1f1f381203eb9 \ - --hash=sha256:0f0f08beb0182e3e9a86fae124b3c47a7b41b7b69b225e1377db983802404e54 \ - --hash=sha256:1081dd10bc6fa437db2500e13993abf7cc30716d0a2f40e65abb935f02ec559c \ - --hash=sha256:11a873c77a181b4fef9c2e357d08ed399542c2af1390101da66720a19c7c9618 \ - --hash=sha256:183bfb45a493081943be7ea2b5adfc2b611e1cf377cefa8b8a8be404f45ef9a7 \ - --hash=sha256:19f4164243fc206d12ed3d866e80e74f5bc3627966520da1a5f97e42c32a3f39 \ - --hash=sha256:1ae225f66e5938f4fa29d37e009a3bb3b13032ac57eb4eb42afa44f6e4054e69 \ - --hash=sha256:1bc4cc83fb7f66ffb16f74d6dd0162e144333fc36ebcce32246f80c8735b2551 \ - --hash=sha256:1dd6a1c3ad4cb674f44525d9957f3e9c209bb6dd9213245195167a281fcc2bdc \ - --hash=sha256:20cf4d0651987c906a2f5cba4e3a8d6ba4bfdf973cfe2a96c0d6053888ea2ecd \ - --hash=sha256:2173a7bffe97667bbf0767f8a99e587740a8c56fdf3befac4b09cb29a80276fd \ - --hash=sha256:21c3302068f50d1e8728c67c87ba92aa87043abee517aa2576cca1855326b405 \ - --hash=sha256:23a5dc68e08ed13331d61815c08f260f46b4a60fdd1640bbeb82cf89a9d90289 \ - --hash=sha256:23cad0cc86046d4222f7f418910e46b89971c5a45d3c8abfad0f64b7b05e4a9b \ - --hash=sha256:2593a0a6621545b9095b71ad74ed4226eba438a7d9fc3712a99bdb15508cf93a \ - --hash=sha256:264c605ab9c0e4aa1a679636f4582c4d3313700009fac3ec9c3412ed0d8f3e1d \ - --hash=sha256:26c5272c6a4bf4cf32d3f5a7890c942b0e04438691157d341616d02cca74d4bd \ - --hash=sha256:26dd9f57ee3bd41e7d35b4c98a2ffd89ed11591649f421f0ec19f67d50ec67ac \ - --hash=sha256:28902146ffbe5222df411c5d19e5352490122e14447e98cd118907ee3fd6ee62 \ - --hash=sha256:29f5c00cb7d752bce2c70ebd2d31b0a42f9499ffdd3ecb2f31a5b73ee43031ad \ - --hash=sha256:30e7b2ed63b6c8e97cca8af048589a788ab5c9c905f36d9cf1c2bb549f450d2f \ - --hash=sha256:32662519149fd7a9db354175aa5e417d83485a8039b8aaa62f873ceee7ea4cad \ - --hash=sha256:363e47283bde87051b821826e71dde47f107e08614e1aa312ba0c5711e77738c \ - --hash=sha256:3648f20d25102a22b6061c688beb3a805099ea4beb0a01ce62975d926944d292 \ - --hash=sha256:37448bf9c7d7adfc5254763901e2bbd6bb876228dfc1fc7f66e58c06368a7544 \ - --hash=sha256:37fabd1452852636cf38ecdcc9dd5ca4bba7a35d6c53fa09725deeb894a87491 \ - --hash=sha256:398443df51c538bd578529aa7e5f7afc6c292644174b47961f3bf87fe5741120 \ - --hash=sha256:3ae5d8d5427f3cc317e7950f2da7ad276df0cfa37b8de2f5658959e618ea8512 \ - --hash=sha256:3f00972f84450204cd5d93a5395965e348956aaceaadec693a22ec743f8ae3eb \ - --hash=sha256:40d9189f80075f2e1f88db21ef815a2b17b28adf8e50aaf5c789bfe737027f32 \ - --hash=sha256:419c58fc92cc3a2c3fa5f78c63dbf5da70c1fa9c1b25f25727ecee89a96c7de2 \ - --hash=sha256:41dcc4c7b10484257cbd6c37b83ddb26df2b0e5aff5ac00d095689015af868ec \ - --hash=sha256:43e4d297f11080ec9d64a4b1ad7ac02b4484c9f0e2179d9c4ef78e886e747b88 \ - --hash=sha256:45e9dfbd1b661eb64ba0d4dbe762bd210c42d86dd1e5bd2bdf89d634231beb43 \ - --hash=sha256:4642e04449a1e164b5ff71ffd901ddb772dfabf5c9adf1b7be5dffe1212bc037 \ - --hash=sha256:468479e52ecf3ec23799c863336d02c05fc2f7ffd1a1424eeeb9a28d4eb69d13 \ - --hash=sha256:47024feaae386a92a146af0d2aeed65229bf6fff738e6a11dda6b0015fb8fd03 \ - --hash=sha256:481d6e2104285d9add34f41b42b247b76b61c5b5c26c303c2e9707bbf8bd9a64 \ - --hash=sha256:4937460dc5df0cdd2f06a86c285c28afda06aefa3af949f9477d3e8df430c485 \ - --hash=sha256:4a1503c56e4e2b38dc76f2f2da7bae69670c0f1933e27cfa34b2fa5876410b16 \ - --hash=sha256:4b89b098105b8599dc57adac95d1813409ac476d3c948a498775d3d0c6124bfb \ - --hash=sha256:4bd1bdb8a9e0e2dd229de19b5f8aebac80e916921b4b2c6ef8a52bc131d0c1f9 \ - --hash=sha256:4e2c54d6b47361d0f1d3bc8d4e082ad87201e56ccdcca4d3b9ee3644ff595ec8 \ - --hash=sha256:52b0ac6903cf74ebf997eb8c682d2fbac7d1ab7e4c552413eec55868a9b73f39 \ - --hash=sha256:546b66c0dd1bb8d9fa89d7123e5fa19a8aff3a1f2141eb22df96112afb17b842 \ - --hash=sha256:56971379bc5ee8037c5a0f09fa88f66cdb7d37c3e38af3e45cf539f41131ac1f \ - --hash=sha256:5715e0e28736a070f3f34a7ccc09e2fdcba0e3060abbcf61a1a5718ff6d6b105 \ - --hash=sha256:5cfa1a34df366d9dc0d5eaf420f4cf2bb1e1bebe1066d1c2fc28c179f8a4004c \ - --hash=sha256:5d27bbe326c6b539c64b42638b18bc6003a8d88f76213a97ac9ed4f885efeab7 \ - --hash=sha256:6262b87f9e5c1e5fe501d6c153247289af42eb44ad7660b9b3de17baaf92d6f6 \ - --hash=sha256:63aeafc26aac0be8aff14af7871249e87ea1319be92090bfd632ec68e03b16a5 \ - --hash=sha256:690022c7fae793b0489aa68a658822cea83e0d5933781811cabbf5ea3bcfe73d \ - --hash=sha256:6fd8b1df8254ff4fd93fd31da1fc15770bde23ac045be9bb1f87425702f61cc9 \ - --hash=sha256:73becf6d8c81d4c76b1014dbd3584cb26d904492dcf73ca85dc8bff08dcd6d2d \ - --hash=sha256:73d658216fc173cf2c939e90e07b941c5e12736b0bf6a99e7af95459cfe8eabb \ - --hash=sha256:75c4c7c619a744f972f4451bf5adf6d0fb00992a1ffc9fd78e13b0bc817cc99f \ - --hash=sha256:76b958b4ea3104483c20f74866d55aa056546e15ebe83dd7aecd63698f43b755 \ - --hash=sha256:77b9f99b17cbf14026d1e618035077060fc7195dd940d025149f3e2e830fbfcb \ - --hash=sha256:7ba11752e346bd804ea312ec2eea2532dfa8b8d3261d81a32ef9e6ab16256280 \ - --hash=sha256:7da13bb6fbadfafb474e0226a30570a3445cfd47c86296f2446dafbd77079ace \ - --hash=sha256:7e39ab3a28af7784e206d8606ec0e4bcad0190f63a492bca95e94e5a4aef7f6e \ - --hash=sha256:7f4a77d6f7edf9230cee3e1f7f6764722a41604ee5681844f18db9a81ea0ec33 \ - --hash=sha256:80410c3a7e3c617af04de17caa9f9f20adaa817093293d69eae7d7d0522836f5 \ - --hash=sha256:81ff55c70b67d19d52b6fd118a114c0a4c97d799cd3089ff9bd9e2ff4b414ee2 \ - --hash=sha256:857efde87d365706590847b916baff69c0bc9252dc5af030e378c9800c0b10e3 \ - --hash=sha256:89e8d73d09ac696a5ba42ec69787913d53284f12092f651506779314f10ba585 \ - --hash=sha256:8c11b984b5ce6add4dccc7144c7be5d364d298f15b0c6a57da1991baedc750ce \ - --hash=sha256:8c8984e1d8c4b3949e419158fda14d921ff703a9ed8a47236c6eb7a2b6cb4946 \ - --hash=sha256:8e369cbd690e788c8d15e56222d91a09c6a417f49cbc543040cba0fe2e25a79e \ - --hash=sha256:9147d8e386ec3b82c3b15d88927f734f565b0aaadef7def562b853adca45784a \ - --hash=sha256:920354904d1cb86577d4b3cfe2830c2dbe81d6f4449e57ada428f1609b5985f7 \ - --hash=sha256:942454ff253da14218f972b23dc72fa4edf6c943f37edd19cd697618b626fac5 \ - --hash=sha256:972a6451204798675407beaad97b868d0c733d9a74dafefc63120b81b8c2de28 \ - --hash=sha256:976a6b39b1b13e8c354ad8d3f261f3a4ac6609518af91bdb5094760a08f132c4 \ - --hash=sha256:97faa0860e13b05b15a51fb4986421ef7a30f0b3334061c416e0981e9450ca4c \ - --hash=sha256:9c03e048b6ce8e77b09c734e931584894ecd58d08296804ca2d0b184c933ce50 \ - --hash=sha256:9e7b0a4ca6dcc007a4cef00a761bba2dea959de4bd2df98f926b33c92ca5dfb9 \ - --hash=sha256:9eb667bf50856c4a58145f8ca2d5e5be160191e79eb9e30855a476191b3c3495 \ - --hash=sha256:9f93d5b8b07f73e8c77e3c6556a3db269918390c804b5e5fcdd4858232cc8f16 \ - --hash=sha256:a0092f2b107b69601adf562a57c956fbb596e05e3e6651cabd3054113b007e45 \ - --hash=sha256:a02ca8fe48815bddcfca3248efe54451abb9dbf2f7d1c5744c8aa4142d476919 \ - --hash=sha256:a1d9b99e5b2597e4f5aed2484fef835256fa1b68a19e4265c97628ef4bf8bcf4 \ - --hash=sha256:a2853c8b2170cc6cd54a6b4d50d2c1a8a7aeca201f23804b4898525c7a152cfc \ - --hash=sha256:a31286dbb5e74c8e9a5344465b77ab4c5bd511a253b355b5ca2fae7e579fafec \ - --hash=sha256:a86f06f059e22a0d574990ee2df24ede03f7f3c68c1336293eee9536c4c776cd \ - --hash=sha256:ab863fd37458fed6456525f297d21239d987800c46e67da5ef04fc6b3dd93ac8 \ - --hash=sha256:ac4db068889f8772a4a698c5980ec302771bb545e10c4b095d4c8be26749616f \ - --hash=sha256:b6c2f225662bc5ad416bdd06f72ca301b31b39ce4261f0e0097017fc2891b940 \ - --hash=sha256:bb40648d96157f9081886defe13eac99253e663be969ff938a9289eff6e47b72 \ - --hash=sha256:bba078de0031c219e5dd06cf3e6bf8fb8e6e64a77819b358f53bb132e3e03366 \ - --hash=sha256:bc783ee3147e60a25aa0445ea82b3e8aabb83b240f2b95d32cb75587ff781814 \ - --hash=sha256:be10838781cb3be19251e276910cd508fe127e27c3242e50521521a0f3781690 \ - --hash=sha256:bfd57d8008c4965709a919c3e9a98f76c2c7cb319086b3d26858250620023b13 \ - --hash=sha256:c08da09dc003c9e8c70e06b53a11db6fb3b250c21c4236b03c7d7b443c318e7a \ - --hash=sha256:c3592631e652afa34999a088f98ba7dfc7d6aff0d535c410bea77a71743f3819 \ - --hash=sha256:c4a699432846df86cc3de502ee85f445ebad748a1c6021d445f3e514d2cd4b1c \ - --hash=sha256:c4e425db0c5445ef0ad56b0eec54f89b88b2d884656e536a90b2f52aecb4ca86 \ - --hash=sha256:c53fa3a5a52122d590e847a57ccf955557b9634a7f99ff5a35131321b0a85317 \ - --hash=sha256:c6854e9cf99c84beb004eecd7d3a3868ef1109bf2b1df92d7bc11e96a36c2180 \ - --hash=sha256:c748ebcb6877de89f48ab90ca96642ac458fff5dec291a2b9337cd4d0934e383 \ - --hash=sha256:c871299c595ee004d186f61840f0bfc4941aa3f17c8ba4a565ead7e4f4f820ee \ - --hash=sha256:cbd7b79cdcb4986ad78a2662625882747f09db5e4cd7b2ae178a88c9c51b3dfe \ - --hash=sha256:cc16682cc987a3da00aa56a3aa3075b08edb10d9b1e476938cfdbee8f3b67181 \ - --hash=sha256:cec05be8c876f92a5aa07b01d60bbb4d11cfbdd654cad0561c0d7b5c043a61b9 \ - --hash=sha256:d036ee7b99d5148072ac7c9b847193decdfeac633db350363f7bce4fff108f0e \ - --hash=sha256:d0d799ff958655781296ec870d5e2448e75150da2b3d07f13ff5b0c2c35beefd \ - --hash=sha256:d1392c569c032f78a11a25d1de1c43fff13294c793b39e19d84fade3045cbbc3 \ - --hash=sha256:d2f17a16cd8751e8eb233a7e41aecdf8e511712e00088bf9be455f604cd0d28d \ - --hash=sha256:d3829a6e6fd550a219564912d4002c537f65da4c6ae4e093cc34462f4fa027ad \ - --hash=sha256:d43aa26dcda363f21e79afa0668f5029ed7394b3bb8c92a6927a3d34e8b610ea \ - --hash=sha256:d6d8efe71429635f0559579092bb5e60560d7b9115ee38c4adbea35632e7fa24 \ - --hash=sha256:dabecc48db5f42ba348d1f5d5afdc54c6c4cc758e676926c7cd327045749517d \ - --hash=sha256:db88156fcf544cdbf0d95588051515cfdfd4c876fc66444eb98bceb5d6db76de \ - --hash=sha256:de550d129f18d8ab819651ffe4f38b1b713c7e116707de3c0c6400d0ef34fbc1 \ - --hash=sha256:e0af85773850417d994d019741239b901b22c6680206f46a34766926e466141d \ - --hash=sha256:e3c4f84b24a1fcba435157d111c4b755099c6ff00a3daee1ad281817de75ed11 \ - --hash=sha256:e3dd5fe19c9e0ac818a9c7f132a5e43c1339ec1cbbfecb1a938bd3a47875b7c9 \ - --hash=sha256:e69aa6805905807186eb00e66c6d97a935c928275182eb02ee40ba00da9623b2 \ - --hash=sha256:e80807d72f96b96ad5588cb85c75616e4f2795a7737d4630784c51497beb7776 \ - --hash=sha256:ebe33f4ec1b2de38ceb225a1749a2965855bffeef435ba93cd2d5d540783bf2f \ - --hash=sha256:f0cea5b1d3e6e77d71bd2b9972eb2446221a69dc52bb0b9c3c6f6e5700592d93 \ - --hash=sha256:f15401d8d3dbf239e23c818afc10c7207f7b95f9a307e092122b6f86dd43209a \ - --hash=sha256:f504d861d9f2a8f94020130adac88d66de93841707a23a86244263d1e54682f5 \ - --hash=sha256:fc46da94826188ed45cb53bd8e3fc076ae22675aea2087843d4735627f867c6d \ - --hash=sha256:fc7140d7a7386e6b545d41b7358f4d02b656d4053f5fa6859f92f4b9c2572c4d \ - --hash=sha256:fcf3da95e93349e0647d48d4b36a12783105bcc74cb0c416952f9988410846a3 \ - --hash=sha256:fe022f20bc4569ec66b63b3fb275a3d628d9d32da6326b2982584104db6d3086 \ - --hash=sha256:ffb34ea45a82dd637c2c97ae1bbb920850c1e59bcae79ce1c15af531d83e7215 - # via svglib markdown-it-py==4.0.0 \ --hash=sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147 \ --hash=sha256:cb0a2b4aa34f932c007117b194e945bd74e0ec24133ceb5bac59009cda1cb9f3 @@ -464,127 +311,11 @@ packaging==25.0 \ --hash=sha256:d443872c98d677bf60f6a1f2f8c1cb748e8fe762d2bf9d3148b5599295b0fc4f # via # readthedocs-sphinx-ext - # rst2pdf # sphinx -pillow==12.2.0 \ - --hash=sha256:00a2865911330191c0b818c59103b58a5e697cae67042366970a6b6f1b20b7f9 \ - --hash=sha256:01afa7cf67f74f09523699b4e88c73fb55c13346d212a59a2db1f86b0a63e8c5 \ - --hash=sha256:03e7e372d5240cc23e9f07deca4d775c0817bffc641b01e9c3af208dbd300987 \ - --hash=sha256:03f6fab9219220f041c74aeaa2939ff0062bd5c364ba9ce037197f4c6d498cd9 \ - --hash=sha256:042db20a421b9bafecc4b84a8b6e444686bd9d836c7fd24542db3e7df7baad9b \ - --hash=sha256:0538bd5e05efec03ae613fd89c4ce0368ecd2ba239cc25b9f9be7ed426b0af1f \ - --hash=sha256:0a34329707af4f73cf1782a36cd2289c0368880654a2c11f027bcee9052d35dd \ - --hash=sha256:0c838a5125cee37e68edec915651521191cef1e6aa336b855f495766e77a366e \ - --hash=sha256:144748b3af2d1b358d41286056d0003f47cb339b8c43a9ea42f5fea4d8c66b6e \ - --hash=sha256:1610dd6c61621ae1cf811bef44d77e149ce3f7b95afe66a4512f8c59f25d9ebe \ - --hash=sha256:1e1757442ed87f4912397c6d35a0db6a7b52592156014706f17658ff58bbf795 \ - --hash=sha256:22db17c68434de69d8ecfc2fe821569195c0c373b25cccb9cbdacf2c6e53c601 \ - --hash=sha256:25373b66e0dd5905ed63fa3cae13c82fbddf3079f2c8bf15c6fb6a35586324c1 \ - --hash=sha256:2bb4a8d594eacdfc59d9e5ad972aa8afdd48d584ffd5f13a937a664c3e7db0ed \ - --hash=sha256:2c727a6d53cb0018aadd8018c2b938376af27914a68a492f59dfcaca650d5eea \ - --hash=sha256:2d192a155bbcec180f8564f693e6fd9bccff5a7af9b32e2e4bf8c9c69dbad6b5 \ - --hash=sha256:2e589959f10d9824d39b350472b92f0ce3b443c0a3442ebf41c40cb8361c5b97 \ - --hash=sha256:2e5a76d03a6c6dcef67edabda7a52494afa4035021a79c8558e14af25313d453 \ - --hash=sha256:325ca0528c6788d2a6c3d40e3568639398137346c3d6e66bb61db96b96511c98 \ - --hash=sha256:34c0d99ecccea270c04882cb3b86e7b57296079c9a4aff88cb3b33563d95afaa \ - --hash=sha256:390ede346628ccc626e5730107cde16c42d3836b89662a115a921f28440e6a3b \ - --hash=sha256:394167b21da716608eac917c60aa9b969421b5dcbbe02ae7f013e7b85811c69d \ - --hash=sha256:3997232e10d2920a68d25191392e3a4487d8183039e1c74c2297f00ed1c50705 \ - --hash=sha256:3adc9215e8be0448ed6e814966ecf3d9952f0ea40eb14e89a102b87f450660d8 \ - --hash=sha256:3e080565d8d7c671db5802eedfb438e5565ffa40115216eabb8cd52d0ecce024 \ - --hash=sha256:4a6c9fa44005fa37a91ebfc95d081e8079757d2e904b27103f4f5fa6f0bf78c0 \ - --hash=sha256:4bfd07bc812fbd20395212969e41931001fd59eb55a60658b0e5710872e95286 \ - --hash=sha256:4e6c62e9d237e9b65fac06857d511e90d8461a32adcc1b9065ea0c0fa3a28150 \ - --hash=sha256:50d8520da2a6ce0af445fa6d648c4273c3eeefbc32d7ce049f22e8b5c3daecc2 \ - --hash=sha256:51c4167c34b0d8ba05b547a3bb23578d0ba17b80a5593f93bd8ecb123dd336a3 \ - --hash=sha256:56a3f9c60a13133a98ecff6197af34d7824de9b7b38c3654861a725c970c197b \ - --hash=sha256:56b25336f502b6ed02e889f4ece894a72612fe885889a6e8c4c80239ff6e5f5f \ - --hash=sha256:57850958fe9c751670e49b2cecf6294acc99e562531f4bd317fa5ddee2068463 \ - --hash=sha256:58f62cc0f00fd29e64b29f4fd923ffdb3859c9f9e6105bfc37ba1d08994e8940 \ - --hash=sha256:5c0a9f29ca8e79f09de89293f82fc9b0270bb4af1d58bc98f540cc4aedf03166 \ - --hash=sha256:5cdfebd752ec52bf5bb4e35d9c64b40826bc5b40a13df7c3cda20a2c03a0f5ed \ - --hash=sha256:5d04bfa02cc2d23b497d1e90a0f927070043f6cbf303e738300532379a4b4e0f \ - --hash=sha256:5d2fd0fa6b5d9d1de415060363433f28da8b1526c1c129020435e186794b3795 \ - --hash=sha256:62f5409336adb0663b7caa0da5c7d9e7bdbaae9ce761d34669420c2a801b2780 \ - --hash=sha256:632ff19b2778e43162304d50da0181ce24ac5bb8180122cbe1bf4673428328c7 \ - --hash=sha256:6562ace0d3fb5f20ed7290f1f929cae41b25ae29528f2af1722966a0a02e2aa1 \ - --hash=sha256:673aa32138f3e7531ccdbca7b3901dba9b70940a19ccecc6a37c77d5fdeb05b5 \ - --hash=sha256:6a6e67ea2e6feda684ed370f9a1c52e7a243631c025ba42149a2cc5934dec295 \ - --hash=sha256:6a9adfc6d24b10f89588096364cc726174118c62130c817c2837c60cf08a392b \ - --hash=sha256:6bb77b2dcb06b20f9f4b4a8454caa581cd4dd0643a08bacf821216a16d9c8354 \ - --hash=sha256:6e6b2a0c538fc200b38ff9eb6628228b77908c319a005815f2dde585a0664b60 \ - --hash=sha256:71cde9a1e1551df7d34a25462fc60325e8a11a82cc2e2f54578e5e9a1e153d65 \ - --hash=sha256:7371b48c4fa448d20d2714c9a1f775a81155050d383333e0a6c15b1123dda005 \ - --hash=sha256:766cef22385fa1091258ad7e6216792b156dc16d8d3fa607e7545b2b72061f1c \ - --hash=sha256:7b14cc0106cd9aecda615dd6903840a058b4700fcb817687d0ee4fc8b6e389be \ - --hash=sha256:7f84204dee22a783350679a0333981df803dac21a0190d706a50475e361c93f5 \ - --hash=sha256:8023abc91fba39036dbce14a7d6535632f99c0b857807cbbbf21ecc9f4717f06 \ - --hash=sha256:80b2da48193b2f33ed0c32c38140f9d3186583ce7d516526d462645fd98660ae \ - --hash=sha256:8297651f5b5679c19968abefd6bb84d95fe30ef712eb1b2d9b2d31ca61267f4c \ - --hash=sha256:88d387ff40b3ff7c274947ed3125dedf5262ec6919d83946753b5f3d7c67ea4c \ - --hash=sha256:88ddbc66737e277852913bd1e07c150cc7bb124539f94c4e2df5344494e0a612 \ - --hash=sha256:8bd7903a5f2a4545f6fd5935c90058b89d30045568985a71c79f5fd6edf9b91e \ - --hash=sha256:8be29e59487a79f173507c30ddf57e733a357f67881430449bb32614075a40ab \ - --hash=sha256:8c984051042858021a54926eb597d6ee3012393ce9c181814115df4c60b9a808 \ - --hash=sha256:8cbeb542b2ebc6fcdacabf8aca8c1a97c9b3ad3927d46b8723f9d4f033288a0f \ - --hash=sha256:8e9c4f5b3c546fa3458a29ab22646c1c6c787ea8f5ef51300e5a60300736905e \ - --hash=sha256:90e6f81de50ad6b534cab6e5aef77ff6e37722b2f5d908686f4a5c9eba17a909 \ - --hash=sha256:975385f4776fafde056abb318f612ef6285b10a1f12b8570f3647ad0d74b48ec \ - --hash=sha256:9a8a34cc89c67a65ea7437ce257cea81a9dad65b29805f3ecee8c8fe8ff25ffe \ - --hash=sha256:9aba9a17b623ef750a4d11b742cbafffeb48a869821252b30ee21b5e91392c50 \ - --hash=sha256:9f08483a632889536b8139663db60f6724bfcb443c96f1b18855860d7d5c0fd4 \ - --hash=sha256:a4e8f36e677d3336f35089648c8955c51c6d386a13cf6ee9c189c5f5bd713a9f \ - --hash=sha256:a52edc8bfff4429aaabdf4d9ee0daadbbf8562364f940937b941f87a4290f5ff \ - --hash=sha256:a830b1a40919539d07806aa58e1b114df53ddd43213d9c8b75847eee6c0182b5 \ - --hash=sha256:aa88ccfe4e32d362816319ed727a004423aab09c5cea43c01a4b435643fa34eb \ - --hash=sha256:af73337013e0b3b46f175e79492d96845b16126ddf79c438d7ea7ff27783a414 \ - --hash=sha256:b1c1fbd8a5a1af3412a0810d060a78b5136ec0836c8a4ef9aa11807f2a22f4e1 \ - --hash=sha256:b85f66ae9eb53e860a873b858b789217ba505e5e405a24b85c0464822fe88032 \ - --hash=sha256:b86024e52a1b269467a802258c25521e6d742349d760728092e1bc2d135b4d76 \ - --hash=sha256:bd9c0c7a0c681a347b3194c500cb1e6ca9cab053ea4d82a5cf45b6b754560136 \ - --hash=sha256:bfa9c230d2fe991bed5318a5f119bd6780cda2915cca595393649fc118ab895e \ - --hash=sha256:d362d1878f00c142b7e1a16e6e5e780f02be8195123f164edf7eddd911eefe7c \ - --hash=sha256:d5d38f1411c0ed9f97bcb49b7bd59b6b7c314e0e27420e34d99d844b9ce3b6f3 \ - --hash=sha256:dac8d77255a37e81a2efcbd1fc05f1c15ee82200e6c240d7e127e25e365c39ea \ - --hash=sha256:dd025009355c926a84a612fecf58bb315a3f6814b17ead51a8e48d3823d9087f \ - --hash=sha256:deede7c263feb25dba4e82ea23058a235dcc2fe1f6021025dc71f2b618e26104 \ - --hash=sha256:e74473c875d78b8e9d5da2a70f7099549f9eb37ded4e2f6a463e60125bccd176 \ - --hash=sha256:ee3120ae9dff32f121610bb08e4313be87e03efeadfc6c0d18f89127e24d0c24 \ - --hash=sha256:eedf4b74eda2b5a4b2b2fb4c006d6295df3bf29e459e198c90ea48e130dc75c3 \ - --hash=sha256:efd8c21c98c5cc60653bcb311bef2ce0401642b7ce9d09e03a7da87c878289d4 \ - --hash=sha256:f1c943e96e85df3d3478f7b691f229887e143f81fedab9b20205349ab04d73ed \ - --hash=sha256:f278f034eb75b4e8a13a54a876cc4a5ab39173d2cdd93a638e1b467fc545ac43 \ - --hash=sha256:f3f40b3c5a968281fd507d519e444c35f0ff171237f4fdde090dd60699458421 \ - --hash=sha256:f490f9368b6fc026f021db16d7ec2fbf7d89e2edb42e8ec09d2c60505f5729c7 \ - --hash=sha256:fb043ee2f06b41473269765c2feae53fc2e2fbf96e5e22ca94fb5ad677856f06 \ - --hash=sha256:fc3d34d4a8fbec3e88a79b92e5465e0f9b842b628675850d860b8bd300b159f5 - # via reportlab -pycairo==1.29.0 \ - --hash=sha256:09b7f69a5ff6881e151354ea092137b97b0b1f0b2ab4eb81c92a02cc4a08e335 \ - --hash=sha256:12757ebfb304b645861283c20585c9204c3430671fad925419cba04844d6dfed \ - --hash=sha256:15b36aea699e2ff215cb6a21501223246032e572a3a10858366acdd69c81a1c8 \ - --hash=sha256:3391532db03f9601c1cee9ebfa15b7d1db183c6020f3e75c1348cee16825934f \ - --hash=sha256:3eb382a4141591807073274522f7aecab9e8fa2f14feafd11ac03a13a58141d7 \ - --hash=sha256:3f01c3b5e49ef9411fff6bc7db1e765f542dc1c9cfed4542958a5afa3a8b8e76 \ - --hash=sha256:5e45fce6185f553e79e4ef1722b8e98e6cde9900dbc48cb2637a9ccba86f627a \ - --hash=sha256:65bddd944aee9f7d7d72821b1c87e97593856617c2820a78d589d66aa8afbd08 \ - --hash=sha256:69e2a7968a3fbb839736257bae153f547bca787113cc8d21e9e08ca4526e0b6b \ - --hash=sha256:91114e4b3fbf4287c2b0788f83e1f566ce031bda49cf1c3c3c19c3e986e95c38 \ - --hash=sha256:91bcd7b5835764c616a615d9948a9afea29237b34d2ed013526807c3d79bb1d0 \ - --hash=sha256:96c67e6caba72afd285c2372806a0175b1aa2f4537aa88fb4d9802d726effcd1 \ - --hash=sha256:b69be8bb65c46b680771dc6a1a422b1cdd0cffb17be548f223e8cbbb6205567c \ - --hash=sha256:b72200ea0e5f73ae4c788cd2028a750062221385eb0e6d8f1ecc714d0b4fdf82 \ - --hash=sha256:caba0837a4b40d47c8dfb0f24cccc12c7831e3dd450837f2a356c75f21ce5a15 \ - --hash=sha256:e91243437a21cc4c67c401eff4433eadc45745275fa3ade1a0d877e50ffb90da \ - --hash=sha256:eafe3d2076f3533535ad4a361fa0754e0ee66b90e548a3a0f558fed00b1248f2 \ - --hash=sha256:f3f7fde97325cae80224c09f12564ef58d0d0f655da0e3b040f5807bd5bd3142 - # via rlpycairo pygments==2.20.0 \ --hash=sha256:6757cd03768053ff99f3039c1a36d6c0aa0b263438fcab17520b30a303a82b5f \ --hash=sha256:81a9e26dd42fd28a23a2d169d86d7ac03b46e2f8b59ed4698fb4785f946d0176 - # via - # rst2pdf - # sphinx + # via sphinx pyyaml==6.0.3 \ --hash=sha256:00c4bdeba853cc34e7dd471f16b4114f4162dc03e6b7afcc2128711f0eca823c \ --hash=sha256:0150219816b6a1fa26fb4699fb7daa9caf09eb1999f3b70fb6e786805e80375a \ @@ -662,17 +393,10 @@ pyyaml==6.0.3 \ # via # -r bazel/rules/rules_score/requirements.in # myst-parser - # rst2pdf readthedocs-sphinx-ext==2.2.5 \ --hash=sha256:ee5fd5b99db9f0c180b2396cbce528aa36671951b9526bb0272dbfce5517bd27 \ --hash=sha256:f8c56184ea011c972dd45a90122568587cc85b0127bc9cf064d17c68bc809daa # via -r bazel/rules/rules_score/requirements.in -reportlab==4.4.10 \ - --hash=sha256:5abc815746ae2bc44e7ff25db96814f921349ca814c992c7eac3c26029bf7c24 \ - --hash=sha256:5cbbb34ac3546039d0086deb2938cdec06b12da3cdb836e813258eb33cd28487 - # via - # rst2pdf - # svglib requests==2.33.1 \ --hash=sha256:18817f8c57c6263968bc123d237e3b8b08ac046f5456bd1e307ee8f4250d3517 \ --hash=sha256:4e6d1ef462f3626a1f0a0a9c42dd93c63bad33f9f1c1937509b8c5c8718ab56a @@ -685,18 +409,10 @@ requests-file==2.1.0 \ --hash=sha256:0f549a3f3b0699415ac04d167e9cb39bccfb730cb832b4d20be3d9867356e658 \ --hash=sha256:cf270de5a4c5874e84599fc5778303d496c10ae5e870bfa378818f35d21bda5c # via sphinx-needs -rlpycairo==0.4.0 \ - --hash=sha256:07c2c3c47828e83d9c09657a54ecbcd1a97aac9dc199780234456d3473faadc7 \ - --hash=sha256:3ce83825d5761c03bc3571c7db12a336ad51417e63189e3512d11b8922576aa9 - # via svglib roman-numerals==4.1.0 \ --hash=sha256:1af8b147eb1405d5839e78aeb93131690495fe9da5c91856cb33ad55a7f1e5b2 \ --hash=sha256:647ba99caddc2cc1e55a51e4360689115551bf4476d90e8162cf8c345fe233c7 # via sphinx -rst2pdf==0.104 \ - --hash=sha256:cc26a7990192842927f02e983bdea41985f0908de914f08678e8bb07ecee504d \ - --hash=sha256:d68e8c721841e93d1e251b8d8bc9e766a42758cfbbf99469625128c4bb0495b3 - # via -r bazel/rules/rules_score/requirements.in snowballstemmer==3.0.1 \ --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 \ --hash=sha256:6d5eeeec8e9f84d4d56b847692bacf79bc2c8e90c7f80ca4444ff8b6f2e52895 @@ -767,16 +483,6 @@ sphinxcontrib-umlet==1.0.2 \ --hash=sha256:0b028e2be46a8312b497cae3370ffb0b5b3c1470dae75a3ad33aa32bf7af45f0 \ --hash=sha256:c342c2506675f135baafc19f44fa0375d6d508655b12f33cdc8b7b91c20c62a3 # via -r bazel/rules/rules_score/requirements.in -svglib==1.6.0 \ - --hash=sha256:4c38a274a744ef0d1677f55d5d62fc0fb798819f813e52872a796e615741733d \ - --hash=sha256:9aea8e2e81cbbf9c844460e4c7dc90e0a06aea7983bc201975ccd279d7b2d194 - # via -r bazel/rules/rules_score/requirements.in -tinycss2==1.5.1 \ - --hash=sha256:3415ba0f5839c062696996998176c4a3751d18b7edaaeeb658c9ce21ec150661 \ - --hash=sha256:d339d2b616ba90ccce58da8495a78f46e55d4d25f9fd71dfd526f07e7d53f957 - # via - # cssselect2 - # svglib typing-extensions==4.15.0 \ --hash=sha256:0cea48d173cc12fa28ecabc3b837ea3cf6f38c6d1136f85cbaaf598984861466 \ --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 @@ -785,9 +491,3 @@ urllib3==2.7.0 \ --hash=sha256:231e0ec3b63ceb14667c67be60f2f2c40a518cb38b03af60abc813da26505f4c \ --hash=sha256:9fb4c81ebbb1ce9531cce37674bbc6f1360472bc18ca9a553ede278ef7276897 # via requests -webencodings==0.5.1 \ - --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 \ - --hash=sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923 - # via - # cssselect2 - # tinycss2 diff --git a/bazel/rules/rules_score/requirements_3_12.txt b/bazel/rules/rules_score/requirements_3_12.txt index c6f34e51..29099e31 100644 --- a/bazel/rules/rules_score/requirements_3_12.txt +++ b/bazel/rules/rules_score/requirements_3_12.txt @@ -146,30 +146,14 @@ charset-normalizer==3.4.7 \ --hash=sha256:f59ad4c0e8f6bba240a9bb85504faa1ab438237199d4cce5f622761507b8f6a6 \ --hash=sha256:fbccdc05410c9ee21bbf16a35f4c1d16123dcdeb8a1d38f33654fa21d0234f79 \ --hash=sha256:fea24543955a6a729c45a73fe90e08c743f0b3334bbf3201e6c4bc1b0c7fa464 - # via - # reportlab - # requests -cssselect2==0.9.0 \ - --hash=sha256:6a99e5f91f9a016a304dd929b0966ca464bcfda15177b6fb4a118fc0fb5d9563 \ - --hash=sha256:759aa22c216326356f65e62e791d66160a0f9c91d1424e8d8adc5e74dddfc6fb - # via svglib + # via requests docutils==0.22.4 \ --hash=sha256:4db53b1fde9abecbb74d91230d32ab626d94f6badfc575d6db9194a49df29968 \ --hash=sha256:d0013f540772d1420576855455d050a2180186c91c15779301ac2ccb3eeb68de # via # myst-parser - # rst2pdf # sphinx # sphinx-rtd-theme -freetype-py==2.5.1 \ - --hash=sha256:0b7f8e0342779f65ca13ef8bc103938366fecade23e6bb37cb671c2b8ad7f124 \ - --hash=sha256:289b443547e03a4f85302e3ac91376838e0d11636050166662a4f75e3087ed0b \ - --hash=sha256:3c1aefc4f0d5b7425f014daccc5fdc7c6f914fb7d6a695cc684f1c09cd8c1660 \ - --hash=sha256:5d2f6b3d68496797da23204b3b9c4e77e67559c80390fc0dc8b3f454ae1cd819 \ - --hash=sha256:cd3bfdbb7e1a84818cfbc8025fca3096f4f2afcd5d4641184bf0a3a2e6f97bbf \ - --hash=sha256:cfe2686a174d0dd3d71a9d8ee9bf6a2c23f5872385cf8ce9f24af83d076e2fbd \ - --hash=sha256:d01ded2557694f06aa0413f3400c0c0b2b5ebcaabeef7aaf3d756be44f51e90b - # via rlpycairo idna==3.15 \ --hash=sha256:048adeaf8c2d788c40fee287673ccaa74c24ffd8dcf09ffa555a2fbb59f10ac8 \ --hash=sha256:ca962446ea538f7092a95e057da437618e886f4d349216d2b1e294abfdb65fdc @@ -184,7 +168,6 @@ jinja2==3.1.6 \ # via # myst-parser # readthedocs-sphinx-ext - # rst2pdf # sphinx jsonschema-rs==0.37.4 \ --hash=sha256:03b34f911e99343fc388651688683010daee538a3cf8cf86a7997bca28fdf16b \ @@ -200,142 +183,6 @@ jsonschema-rs==0.37.4 \ --hash=sha256:e159075b1846718466998d5a9294c661113b347b8b4749767680a97c8ed2bf4d \ --hash=sha256:e93a8720f6e858d872dc2882e7d3b3243ee76f7aa4d60048272773d44df466e7 # via sphinx-needs -lxml==6.1.0 \ - --hash=sha256:00750d63ef0031a05331b9223463b1c7c02b9004cef2346a5b2877f0f9494dd2 \ - --hash=sha256:022981127642fe19866d2907d76241bb07ed21749601f727d5d5dd1ce5d1b773 \ - --hash=sha256:045e387d1f4f42a418380930fa3f45c73c9b392faf67e495e58902e68e8f44a7 \ - --hash=sha256:05b9b8787e35bec69e68daf4952b2e6dfcfb0db7ecf1a06f8cdfbbac4eb71aad \ - --hash=sha256:07f98f5496f96bf724b1e3c933c107f0cbf2745db18c03d2e13a291c3afd2635 \ - --hash=sha256:08950a23f296b3f83521577274e3d3b0f3d739bf2e68d01a752e4288bc50d286 \ - --hash=sha256:0d082495c5fcf426e425a6e28daaba1fcb6d8f854a4ff01effb1f1f381203eb9 \ - --hash=sha256:0f0f08beb0182e3e9a86fae124b3c47a7b41b7b69b225e1377db983802404e54 \ - --hash=sha256:1081dd10bc6fa437db2500e13993abf7cc30716d0a2f40e65abb935f02ec559c \ - --hash=sha256:11a873c77a181b4fef9c2e357d08ed399542c2af1390101da66720a19c7c9618 \ - --hash=sha256:183bfb45a493081943be7ea2b5adfc2b611e1cf377cefa8b8a8be404f45ef9a7 \ - --hash=sha256:19f4164243fc206d12ed3d866e80e74f5bc3627966520da1a5f97e42c32a3f39 \ - --hash=sha256:1ae225f66e5938f4fa29d37e009a3bb3b13032ac57eb4eb42afa44f6e4054e69 \ - --hash=sha256:1bc4cc83fb7f66ffb16f74d6dd0162e144333fc36ebcce32246f80c8735b2551 \ - --hash=sha256:1dd6a1c3ad4cb674f44525d9957f3e9c209bb6dd9213245195167a281fcc2bdc \ - --hash=sha256:20cf4d0651987c906a2f5cba4e3a8d6ba4bfdf973cfe2a96c0d6053888ea2ecd \ - --hash=sha256:2173a7bffe97667bbf0767f8a99e587740a8c56fdf3befac4b09cb29a80276fd \ - --hash=sha256:21c3302068f50d1e8728c67c87ba92aa87043abee517aa2576cca1855326b405 \ - --hash=sha256:23a5dc68e08ed13331d61815c08f260f46b4a60fdd1640bbeb82cf89a9d90289 \ - --hash=sha256:23cad0cc86046d4222f7f418910e46b89971c5a45d3c8abfad0f64b7b05e4a9b \ - --hash=sha256:2593a0a6621545b9095b71ad74ed4226eba438a7d9fc3712a99bdb15508cf93a \ - --hash=sha256:264c605ab9c0e4aa1a679636f4582c4d3313700009fac3ec9c3412ed0d8f3e1d \ - --hash=sha256:26c5272c6a4bf4cf32d3f5a7890c942b0e04438691157d341616d02cca74d4bd \ - --hash=sha256:26dd9f57ee3bd41e7d35b4c98a2ffd89ed11591649f421f0ec19f67d50ec67ac \ - --hash=sha256:28902146ffbe5222df411c5d19e5352490122e14447e98cd118907ee3fd6ee62 \ - --hash=sha256:29f5c00cb7d752bce2c70ebd2d31b0a42f9499ffdd3ecb2f31a5b73ee43031ad \ - --hash=sha256:30e7b2ed63b6c8e97cca8af048589a788ab5c9c905f36d9cf1c2bb549f450d2f \ - --hash=sha256:32662519149fd7a9db354175aa5e417d83485a8039b8aaa62f873ceee7ea4cad \ - --hash=sha256:363e47283bde87051b821826e71dde47f107e08614e1aa312ba0c5711e77738c \ - --hash=sha256:3648f20d25102a22b6061c688beb3a805099ea4beb0a01ce62975d926944d292 \ - --hash=sha256:37448bf9c7d7adfc5254763901e2bbd6bb876228dfc1fc7f66e58c06368a7544 \ - --hash=sha256:37fabd1452852636cf38ecdcc9dd5ca4bba7a35d6c53fa09725deeb894a87491 \ - --hash=sha256:398443df51c538bd578529aa7e5f7afc6c292644174b47961f3bf87fe5741120 \ - --hash=sha256:3ae5d8d5427f3cc317e7950f2da7ad276df0cfa37b8de2f5658959e618ea8512 \ - --hash=sha256:3f00972f84450204cd5d93a5395965e348956aaceaadec693a22ec743f8ae3eb \ - --hash=sha256:40d9189f80075f2e1f88db21ef815a2b17b28adf8e50aaf5c789bfe737027f32 \ - --hash=sha256:419c58fc92cc3a2c3fa5f78c63dbf5da70c1fa9c1b25f25727ecee89a96c7de2 \ - --hash=sha256:41dcc4c7b10484257cbd6c37b83ddb26df2b0e5aff5ac00d095689015af868ec \ - --hash=sha256:43e4d297f11080ec9d64a4b1ad7ac02b4484c9f0e2179d9c4ef78e886e747b88 \ - --hash=sha256:45e9dfbd1b661eb64ba0d4dbe762bd210c42d86dd1e5bd2bdf89d634231beb43 \ - --hash=sha256:4642e04449a1e164b5ff71ffd901ddb772dfabf5c9adf1b7be5dffe1212bc037 \ - --hash=sha256:468479e52ecf3ec23799c863336d02c05fc2f7ffd1a1424eeeb9a28d4eb69d13 \ - --hash=sha256:47024feaae386a92a146af0d2aeed65229bf6fff738e6a11dda6b0015fb8fd03 \ - --hash=sha256:481d6e2104285d9add34f41b42b247b76b61c5b5c26c303c2e9707bbf8bd9a64 \ - --hash=sha256:4937460dc5df0cdd2f06a86c285c28afda06aefa3af949f9477d3e8df430c485 \ - --hash=sha256:4a1503c56e4e2b38dc76f2f2da7bae69670c0f1933e27cfa34b2fa5876410b16 \ - --hash=sha256:4b89b098105b8599dc57adac95d1813409ac476d3c948a498775d3d0c6124bfb \ - --hash=sha256:4bd1bdb8a9e0e2dd229de19b5f8aebac80e916921b4b2c6ef8a52bc131d0c1f9 \ - --hash=sha256:4e2c54d6b47361d0f1d3bc8d4e082ad87201e56ccdcca4d3b9ee3644ff595ec8 \ - --hash=sha256:52b0ac6903cf74ebf997eb8c682d2fbac7d1ab7e4c552413eec55868a9b73f39 \ - --hash=sha256:546b66c0dd1bb8d9fa89d7123e5fa19a8aff3a1f2141eb22df96112afb17b842 \ - --hash=sha256:56971379bc5ee8037c5a0f09fa88f66cdb7d37c3e38af3e45cf539f41131ac1f \ - --hash=sha256:5715e0e28736a070f3f34a7ccc09e2fdcba0e3060abbcf61a1a5718ff6d6b105 \ - --hash=sha256:5cfa1a34df366d9dc0d5eaf420f4cf2bb1e1bebe1066d1c2fc28c179f8a4004c \ - --hash=sha256:5d27bbe326c6b539c64b42638b18bc6003a8d88f76213a97ac9ed4f885efeab7 \ - --hash=sha256:6262b87f9e5c1e5fe501d6c153247289af42eb44ad7660b9b3de17baaf92d6f6 \ - --hash=sha256:63aeafc26aac0be8aff14af7871249e87ea1319be92090bfd632ec68e03b16a5 \ - --hash=sha256:690022c7fae793b0489aa68a658822cea83e0d5933781811cabbf5ea3bcfe73d \ - --hash=sha256:6fd8b1df8254ff4fd93fd31da1fc15770bde23ac045be9bb1f87425702f61cc9 \ - --hash=sha256:73becf6d8c81d4c76b1014dbd3584cb26d904492dcf73ca85dc8bff08dcd6d2d \ - --hash=sha256:73d658216fc173cf2c939e90e07b941c5e12736b0bf6a99e7af95459cfe8eabb \ - --hash=sha256:75c4c7c619a744f972f4451bf5adf6d0fb00992a1ffc9fd78e13b0bc817cc99f \ - --hash=sha256:76b958b4ea3104483c20f74866d55aa056546e15ebe83dd7aecd63698f43b755 \ - --hash=sha256:77b9f99b17cbf14026d1e618035077060fc7195dd940d025149f3e2e830fbfcb \ - --hash=sha256:7ba11752e346bd804ea312ec2eea2532dfa8b8d3261d81a32ef9e6ab16256280 \ - --hash=sha256:7da13bb6fbadfafb474e0226a30570a3445cfd47c86296f2446dafbd77079ace \ - --hash=sha256:7e39ab3a28af7784e206d8606ec0e4bcad0190f63a492bca95e94e5a4aef7f6e \ - --hash=sha256:7f4a77d6f7edf9230cee3e1f7f6764722a41604ee5681844f18db9a81ea0ec33 \ - --hash=sha256:80410c3a7e3c617af04de17caa9f9f20adaa817093293d69eae7d7d0522836f5 \ - --hash=sha256:81ff55c70b67d19d52b6fd118a114c0a4c97d799cd3089ff9bd9e2ff4b414ee2 \ - --hash=sha256:857efde87d365706590847b916baff69c0bc9252dc5af030e378c9800c0b10e3 \ - --hash=sha256:89e8d73d09ac696a5ba42ec69787913d53284f12092f651506779314f10ba585 \ - --hash=sha256:8c11b984b5ce6add4dccc7144c7be5d364d298f15b0c6a57da1991baedc750ce \ - --hash=sha256:8c8984e1d8c4b3949e419158fda14d921ff703a9ed8a47236c6eb7a2b6cb4946 \ - --hash=sha256:8e369cbd690e788c8d15e56222d91a09c6a417f49cbc543040cba0fe2e25a79e \ - --hash=sha256:9147d8e386ec3b82c3b15d88927f734f565b0aaadef7def562b853adca45784a \ - --hash=sha256:920354904d1cb86577d4b3cfe2830c2dbe81d6f4449e57ada428f1609b5985f7 \ - --hash=sha256:942454ff253da14218f972b23dc72fa4edf6c943f37edd19cd697618b626fac5 \ - --hash=sha256:972a6451204798675407beaad97b868d0c733d9a74dafefc63120b81b8c2de28 \ - --hash=sha256:976a6b39b1b13e8c354ad8d3f261f3a4ac6609518af91bdb5094760a08f132c4 \ - --hash=sha256:97faa0860e13b05b15a51fb4986421ef7a30f0b3334061c416e0981e9450ca4c \ - --hash=sha256:9c03e048b6ce8e77b09c734e931584894ecd58d08296804ca2d0b184c933ce50 \ - --hash=sha256:9e7b0a4ca6dcc007a4cef00a761bba2dea959de4bd2df98f926b33c92ca5dfb9 \ - --hash=sha256:9eb667bf50856c4a58145f8ca2d5e5be160191e79eb9e30855a476191b3c3495 \ - --hash=sha256:9f93d5b8b07f73e8c77e3c6556a3db269918390c804b5e5fcdd4858232cc8f16 \ - --hash=sha256:a0092f2b107b69601adf562a57c956fbb596e05e3e6651cabd3054113b007e45 \ - --hash=sha256:a02ca8fe48815bddcfca3248efe54451abb9dbf2f7d1c5744c8aa4142d476919 \ - --hash=sha256:a1d9b99e5b2597e4f5aed2484fef835256fa1b68a19e4265c97628ef4bf8bcf4 \ - --hash=sha256:a2853c8b2170cc6cd54a6b4d50d2c1a8a7aeca201f23804b4898525c7a152cfc \ - --hash=sha256:a31286dbb5e74c8e9a5344465b77ab4c5bd511a253b355b5ca2fae7e579fafec \ - --hash=sha256:a86f06f059e22a0d574990ee2df24ede03f7f3c68c1336293eee9536c4c776cd \ - --hash=sha256:ab863fd37458fed6456525f297d21239d987800c46e67da5ef04fc6b3dd93ac8 \ - --hash=sha256:ac4db068889f8772a4a698c5980ec302771bb545e10c4b095d4c8be26749616f \ - --hash=sha256:b6c2f225662bc5ad416bdd06f72ca301b31b39ce4261f0e0097017fc2891b940 \ - --hash=sha256:bb40648d96157f9081886defe13eac99253e663be969ff938a9289eff6e47b72 \ - --hash=sha256:bba078de0031c219e5dd06cf3e6bf8fb8e6e64a77819b358f53bb132e3e03366 \ - --hash=sha256:bc783ee3147e60a25aa0445ea82b3e8aabb83b240f2b95d32cb75587ff781814 \ - --hash=sha256:be10838781cb3be19251e276910cd508fe127e27c3242e50521521a0f3781690 \ - --hash=sha256:bfd57d8008c4965709a919c3e9a98f76c2c7cb319086b3d26858250620023b13 \ - --hash=sha256:c08da09dc003c9e8c70e06b53a11db6fb3b250c21c4236b03c7d7b443c318e7a \ - --hash=sha256:c3592631e652afa34999a088f98ba7dfc7d6aff0d535c410bea77a71743f3819 \ - --hash=sha256:c4a699432846df86cc3de502ee85f445ebad748a1c6021d445f3e514d2cd4b1c \ - --hash=sha256:c4e425db0c5445ef0ad56b0eec54f89b88b2d884656e536a90b2f52aecb4ca86 \ - --hash=sha256:c53fa3a5a52122d590e847a57ccf955557b9634a7f99ff5a35131321b0a85317 \ - --hash=sha256:c6854e9cf99c84beb004eecd7d3a3868ef1109bf2b1df92d7bc11e96a36c2180 \ - --hash=sha256:c748ebcb6877de89f48ab90ca96642ac458fff5dec291a2b9337cd4d0934e383 \ - --hash=sha256:c871299c595ee004d186f61840f0bfc4941aa3f17c8ba4a565ead7e4f4f820ee \ - --hash=sha256:cbd7b79cdcb4986ad78a2662625882747f09db5e4cd7b2ae178a88c9c51b3dfe \ - --hash=sha256:cc16682cc987a3da00aa56a3aa3075b08edb10d9b1e476938cfdbee8f3b67181 \ - --hash=sha256:cec05be8c876f92a5aa07b01d60bbb4d11cfbdd654cad0561c0d7b5c043a61b9 \ - --hash=sha256:d036ee7b99d5148072ac7c9b847193decdfeac633db350363f7bce4fff108f0e \ - --hash=sha256:d0d799ff958655781296ec870d5e2448e75150da2b3d07f13ff5b0c2c35beefd \ - --hash=sha256:d1392c569c032f78a11a25d1de1c43fff13294c793b39e19d84fade3045cbbc3 \ - --hash=sha256:d2f17a16cd8751e8eb233a7e41aecdf8e511712e00088bf9be455f604cd0d28d \ - --hash=sha256:d3829a6e6fd550a219564912d4002c537f65da4c6ae4e093cc34462f4fa027ad \ - --hash=sha256:d43aa26dcda363f21e79afa0668f5029ed7394b3bb8c92a6927a3d34e8b610ea \ - --hash=sha256:d6d8efe71429635f0559579092bb5e60560d7b9115ee38c4adbea35632e7fa24 \ - --hash=sha256:dabecc48db5f42ba348d1f5d5afdc54c6c4cc758e676926c7cd327045749517d \ - --hash=sha256:db88156fcf544cdbf0d95588051515cfdfd4c876fc66444eb98bceb5d6db76de \ - --hash=sha256:de550d129f18d8ab819651ffe4f38b1b713c7e116707de3c0c6400d0ef34fbc1 \ - --hash=sha256:e0af85773850417d994d019741239b901b22c6680206f46a34766926e466141d \ - --hash=sha256:e3c4f84b24a1fcba435157d111c4b755099c6ff00a3daee1ad281817de75ed11 \ - --hash=sha256:e3dd5fe19c9e0ac818a9c7f132a5e43c1339ec1cbbfecb1a938bd3a47875b7c9 \ - --hash=sha256:e69aa6805905807186eb00e66c6d97a935c928275182eb02ee40ba00da9623b2 \ - --hash=sha256:e80807d72f96b96ad5588cb85c75616e4f2795a7737d4630784c51497beb7776 \ - --hash=sha256:ebe33f4ec1b2de38ceb225a1749a2965855bffeef435ba93cd2d5d540783bf2f \ - --hash=sha256:f0cea5b1d3e6e77d71bd2b9972eb2446221a69dc52bb0b9c3c6f6e5700592d93 \ - --hash=sha256:f15401d8d3dbf239e23c818afc10c7207f7b95f9a307e092122b6f86dd43209a \ - --hash=sha256:f504d861d9f2a8f94020130adac88d66de93841707a23a86244263d1e54682f5 \ - --hash=sha256:fc46da94826188ed45cb53bd8e3fc076ae22675aea2087843d4735627f867c6d \ - --hash=sha256:fc7140d7a7386e6b545d41b7358f4d02b656d4053f5fa6859f92f4b9c2572c4d \ - --hash=sha256:fcf3da95e93349e0647d48d4b36a12783105bcc74cb0c416952f9988410846a3 \ - --hash=sha256:fe022f20bc4569ec66b63b3fb275a3d628d9d32da6326b2982584104db6d3086 \ - --hash=sha256:ffb34ea45a82dd637c2c97ae1bbb920850c1e59bcae79ce1c15af531d83e7215 - # via svglib markdown-it-py==4.0.0 \ --hash=sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147 \ --hash=sha256:cb0a2b4aa34f932c007117b194e945bd74e0ec24133ceb5bac59009cda1cb9f3 @@ -464,127 +311,11 @@ packaging==25.0 \ --hash=sha256:d443872c98d677bf60f6a1f2f8c1cb748e8fe762d2bf9d3148b5599295b0fc4f # via # readthedocs-sphinx-ext - # rst2pdf # sphinx -pillow==12.2.0 \ - --hash=sha256:00a2865911330191c0b818c59103b58a5e697cae67042366970a6b6f1b20b7f9 \ - --hash=sha256:01afa7cf67f74f09523699b4e88c73fb55c13346d212a59a2db1f86b0a63e8c5 \ - --hash=sha256:03e7e372d5240cc23e9f07deca4d775c0817bffc641b01e9c3af208dbd300987 \ - --hash=sha256:03f6fab9219220f041c74aeaa2939ff0062bd5c364ba9ce037197f4c6d498cd9 \ - --hash=sha256:042db20a421b9bafecc4b84a8b6e444686bd9d836c7fd24542db3e7df7baad9b \ - --hash=sha256:0538bd5e05efec03ae613fd89c4ce0368ecd2ba239cc25b9f9be7ed426b0af1f \ - --hash=sha256:0a34329707af4f73cf1782a36cd2289c0368880654a2c11f027bcee9052d35dd \ - --hash=sha256:0c838a5125cee37e68edec915651521191cef1e6aa336b855f495766e77a366e \ - --hash=sha256:144748b3af2d1b358d41286056d0003f47cb339b8c43a9ea42f5fea4d8c66b6e \ - --hash=sha256:1610dd6c61621ae1cf811bef44d77e149ce3f7b95afe66a4512f8c59f25d9ebe \ - --hash=sha256:1e1757442ed87f4912397c6d35a0db6a7b52592156014706f17658ff58bbf795 \ - --hash=sha256:22db17c68434de69d8ecfc2fe821569195c0c373b25cccb9cbdacf2c6e53c601 \ - --hash=sha256:25373b66e0dd5905ed63fa3cae13c82fbddf3079f2c8bf15c6fb6a35586324c1 \ - --hash=sha256:2bb4a8d594eacdfc59d9e5ad972aa8afdd48d584ffd5f13a937a664c3e7db0ed \ - --hash=sha256:2c727a6d53cb0018aadd8018c2b938376af27914a68a492f59dfcaca650d5eea \ - --hash=sha256:2d192a155bbcec180f8564f693e6fd9bccff5a7af9b32e2e4bf8c9c69dbad6b5 \ - --hash=sha256:2e589959f10d9824d39b350472b92f0ce3b443c0a3442ebf41c40cb8361c5b97 \ - --hash=sha256:2e5a76d03a6c6dcef67edabda7a52494afa4035021a79c8558e14af25313d453 \ - --hash=sha256:325ca0528c6788d2a6c3d40e3568639398137346c3d6e66bb61db96b96511c98 \ - --hash=sha256:34c0d99ecccea270c04882cb3b86e7b57296079c9a4aff88cb3b33563d95afaa \ - --hash=sha256:390ede346628ccc626e5730107cde16c42d3836b89662a115a921f28440e6a3b \ - --hash=sha256:394167b21da716608eac917c60aa9b969421b5dcbbe02ae7f013e7b85811c69d \ - --hash=sha256:3997232e10d2920a68d25191392e3a4487d8183039e1c74c2297f00ed1c50705 \ - --hash=sha256:3adc9215e8be0448ed6e814966ecf3d9952f0ea40eb14e89a102b87f450660d8 \ - --hash=sha256:3e080565d8d7c671db5802eedfb438e5565ffa40115216eabb8cd52d0ecce024 \ - --hash=sha256:4a6c9fa44005fa37a91ebfc95d081e8079757d2e904b27103f4f5fa6f0bf78c0 \ - --hash=sha256:4bfd07bc812fbd20395212969e41931001fd59eb55a60658b0e5710872e95286 \ - --hash=sha256:4e6c62e9d237e9b65fac06857d511e90d8461a32adcc1b9065ea0c0fa3a28150 \ - --hash=sha256:50d8520da2a6ce0af445fa6d648c4273c3eeefbc32d7ce049f22e8b5c3daecc2 \ - --hash=sha256:51c4167c34b0d8ba05b547a3bb23578d0ba17b80a5593f93bd8ecb123dd336a3 \ - --hash=sha256:56a3f9c60a13133a98ecff6197af34d7824de9b7b38c3654861a725c970c197b \ - --hash=sha256:56b25336f502b6ed02e889f4ece894a72612fe885889a6e8c4c80239ff6e5f5f \ - --hash=sha256:57850958fe9c751670e49b2cecf6294acc99e562531f4bd317fa5ddee2068463 \ - --hash=sha256:58f62cc0f00fd29e64b29f4fd923ffdb3859c9f9e6105bfc37ba1d08994e8940 \ - --hash=sha256:5c0a9f29ca8e79f09de89293f82fc9b0270bb4af1d58bc98f540cc4aedf03166 \ - --hash=sha256:5cdfebd752ec52bf5bb4e35d9c64b40826bc5b40a13df7c3cda20a2c03a0f5ed \ - --hash=sha256:5d04bfa02cc2d23b497d1e90a0f927070043f6cbf303e738300532379a4b4e0f \ - --hash=sha256:5d2fd0fa6b5d9d1de415060363433f28da8b1526c1c129020435e186794b3795 \ - --hash=sha256:62f5409336adb0663b7caa0da5c7d9e7bdbaae9ce761d34669420c2a801b2780 \ - --hash=sha256:632ff19b2778e43162304d50da0181ce24ac5bb8180122cbe1bf4673428328c7 \ - --hash=sha256:6562ace0d3fb5f20ed7290f1f929cae41b25ae29528f2af1722966a0a02e2aa1 \ - --hash=sha256:673aa32138f3e7531ccdbca7b3901dba9b70940a19ccecc6a37c77d5fdeb05b5 \ - --hash=sha256:6a6e67ea2e6feda684ed370f9a1c52e7a243631c025ba42149a2cc5934dec295 \ - --hash=sha256:6a9adfc6d24b10f89588096364cc726174118c62130c817c2837c60cf08a392b \ - --hash=sha256:6bb77b2dcb06b20f9f4b4a8454caa581cd4dd0643a08bacf821216a16d9c8354 \ - --hash=sha256:6e6b2a0c538fc200b38ff9eb6628228b77908c319a005815f2dde585a0664b60 \ - --hash=sha256:71cde9a1e1551df7d34a25462fc60325e8a11a82cc2e2f54578e5e9a1e153d65 \ - --hash=sha256:7371b48c4fa448d20d2714c9a1f775a81155050d383333e0a6c15b1123dda005 \ - --hash=sha256:766cef22385fa1091258ad7e6216792b156dc16d8d3fa607e7545b2b72061f1c \ - --hash=sha256:7b14cc0106cd9aecda615dd6903840a058b4700fcb817687d0ee4fc8b6e389be \ - --hash=sha256:7f84204dee22a783350679a0333981df803dac21a0190d706a50475e361c93f5 \ - --hash=sha256:8023abc91fba39036dbce14a7d6535632f99c0b857807cbbbf21ecc9f4717f06 \ - --hash=sha256:80b2da48193b2f33ed0c32c38140f9d3186583ce7d516526d462645fd98660ae \ - --hash=sha256:8297651f5b5679c19968abefd6bb84d95fe30ef712eb1b2d9b2d31ca61267f4c \ - --hash=sha256:88d387ff40b3ff7c274947ed3125dedf5262ec6919d83946753b5f3d7c67ea4c \ - --hash=sha256:88ddbc66737e277852913bd1e07c150cc7bb124539f94c4e2df5344494e0a612 \ - --hash=sha256:8bd7903a5f2a4545f6fd5935c90058b89d30045568985a71c79f5fd6edf9b91e \ - --hash=sha256:8be29e59487a79f173507c30ddf57e733a357f67881430449bb32614075a40ab \ - --hash=sha256:8c984051042858021a54926eb597d6ee3012393ce9c181814115df4c60b9a808 \ - --hash=sha256:8cbeb542b2ebc6fcdacabf8aca8c1a97c9b3ad3927d46b8723f9d4f033288a0f \ - --hash=sha256:8e9c4f5b3c546fa3458a29ab22646c1c6c787ea8f5ef51300e5a60300736905e \ - --hash=sha256:90e6f81de50ad6b534cab6e5aef77ff6e37722b2f5d908686f4a5c9eba17a909 \ - --hash=sha256:975385f4776fafde056abb318f612ef6285b10a1f12b8570f3647ad0d74b48ec \ - --hash=sha256:9a8a34cc89c67a65ea7437ce257cea81a9dad65b29805f3ecee8c8fe8ff25ffe \ - --hash=sha256:9aba9a17b623ef750a4d11b742cbafffeb48a869821252b30ee21b5e91392c50 \ - --hash=sha256:9f08483a632889536b8139663db60f6724bfcb443c96f1b18855860d7d5c0fd4 \ - --hash=sha256:a4e8f36e677d3336f35089648c8955c51c6d386a13cf6ee9c189c5f5bd713a9f \ - --hash=sha256:a52edc8bfff4429aaabdf4d9ee0daadbbf8562364f940937b941f87a4290f5ff \ - --hash=sha256:a830b1a40919539d07806aa58e1b114df53ddd43213d9c8b75847eee6c0182b5 \ - --hash=sha256:aa88ccfe4e32d362816319ed727a004423aab09c5cea43c01a4b435643fa34eb \ - --hash=sha256:af73337013e0b3b46f175e79492d96845b16126ddf79c438d7ea7ff27783a414 \ - --hash=sha256:b1c1fbd8a5a1af3412a0810d060a78b5136ec0836c8a4ef9aa11807f2a22f4e1 \ - --hash=sha256:b85f66ae9eb53e860a873b858b789217ba505e5e405a24b85c0464822fe88032 \ - --hash=sha256:b86024e52a1b269467a802258c25521e6d742349d760728092e1bc2d135b4d76 \ - --hash=sha256:bd9c0c7a0c681a347b3194c500cb1e6ca9cab053ea4d82a5cf45b6b754560136 \ - --hash=sha256:bfa9c230d2fe991bed5318a5f119bd6780cda2915cca595393649fc118ab895e \ - --hash=sha256:d362d1878f00c142b7e1a16e6e5e780f02be8195123f164edf7eddd911eefe7c \ - --hash=sha256:d5d38f1411c0ed9f97bcb49b7bd59b6b7c314e0e27420e34d99d844b9ce3b6f3 \ - --hash=sha256:dac8d77255a37e81a2efcbd1fc05f1c15ee82200e6c240d7e127e25e365c39ea \ - --hash=sha256:dd025009355c926a84a612fecf58bb315a3f6814b17ead51a8e48d3823d9087f \ - --hash=sha256:deede7c263feb25dba4e82ea23058a235dcc2fe1f6021025dc71f2b618e26104 \ - --hash=sha256:e74473c875d78b8e9d5da2a70f7099549f9eb37ded4e2f6a463e60125bccd176 \ - --hash=sha256:ee3120ae9dff32f121610bb08e4313be87e03efeadfc6c0d18f89127e24d0c24 \ - --hash=sha256:eedf4b74eda2b5a4b2b2fb4c006d6295df3bf29e459e198c90ea48e130dc75c3 \ - --hash=sha256:efd8c21c98c5cc60653bcb311bef2ce0401642b7ce9d09e03a7da87c878289d4 \ - --hash=sha256:f1c943e96e85df3d3478f7b691f229887e143f81fedab9b20205349ab04d73ed \ - --hash=sha256:f278f034eb75b4e8a13a54a876cc4a5ab39173d2cdd93a638e1b467fc545ac43 \ - --hash=sha256:f3f40b3c5a968281fd507d519e444c35f0ff171237f4fdde090dd60699458421 \ - --hash=sha256:f490f9368b6fc026f021db16d7ec2fbf7d89e2edb42e8ec09d2c60505f5729c7 \ - --hash=sha256:fb043ee2f06b41473269765c2feae53fc2e2fbf96e5e22ca94fb5ad677856f06 \ - --hash=sha256:fc3d34d4a8fbec3e88a79b92e5465e0f9b842b628675850d860b8bd300b159f5 - # via reportlab -pycairo==1.29.0 \ - --hash=sha256:09b7f69a5ff6881e151354ea092137b97b0b1f0b2ab4eb81c92a02cc4a08e335 \ - --hash=sha256:12757ebfb304b645861283c20585c9204c3430671fad925419cba04844d6dfed \ - --hash=sha256:15b36aea699e2ff215cb6a21501223246032e572a3a10858366acdd69c81a1c8 \ - --hash=sha256:3391532db03f9601c1cee9ebfa15b7d1db183c6020f3e75c1348cee16825934f \ - --hash=sha256:3eb382a4141591807073274522f7aecab9e8fa2f14feafd11ac03a13a58141d7 \ - --hash=sha256:3f01c3b5e49ef9411fff6bc7db1e765f542dc1c9cfed4542958a5afa3a8b8e76 \ - --hash=sha256:5e45fce6185f553e79e4ef1722b8e98e6cde9900dbc48cb2637a9ccba86f627a \ - --hash=sha256:65bddd944aee9f7d7d72821b1c87e97593856617c2820a78d589d66aa8afbd08 \ - --hash=sha256:69e2a7968a3fbb839736257bae153f547bca787113cc8d21e9e08ca4526e0b6b \ - --hash=sha256:91114e4b3fbf4287c2b0788f83e1f566ce031bda49cf1c3c3c19c3e986e95c38 \ - --hash=sha256:91bcd7b5835764c616a615d9948a9afea29237b34d2ed013526807c3d79bb1d0 \ - --hash=sha256:96c67e6caba72afd285c2372806a0175b1aa2f4537aa88fb4d9802d726effcd1 \ - --hash=sha256:b69be8bb65c46b680771dc6a1a422b1cdd0cffb17be548f223e8cbbb6205567c \ - --hash=sha256:b72200ea0e5f73ae4c788cd2028a750062221385eb0e6d8f1ecc714d0b4fdf82 \ - --hash=sha256:caba0837a4b40d47c8dfb0f24cccc12c7831e3dd450837f2a356c75f21ce5a15 \ - --hash=sha256:e91243437a21cc4c67c401eff4433eadc45745275fa3ade1a0d877e50ffb90da \ - --hash=sha256:eafe3d2076f3533535ad4a361fa0754e0ee66b90e548a3a0f558fed00b1248f2 \ - --hash=sha256:f3f7fde97325cae80224c09f12564ef58d0d0f655da0e3b040f5807bd5bd3142 - # via rlpycairo pygments==2.20.0 \ --hash=sha256:6757cd03768053ff99f3039c1a36d6c0aa0b263438fcab17520b30a303a82b5f \ --hash=sha256:81a9e26dd42fd28a23a2d169d86d7ac03b46e2f8b59ed4698fb4785f946d0176 - # via - # rst2pdf - # sphinx + # via sphinx pyyaml==6.0.3 \ --hash=sha256:00c4bdeba853cc34e7dd471f16b4114f4162dc03e6b7afcc2128711f0eca823c \ --hash=sha256:0150219816b6a1fa26fb4699fb7daa9caf09eb1999f3b70fb6e786805e80375a \ @@ -662,17 +393,10 @@ pyyaml==6.0.3 \ # via # -r bazel/rules/rules_score/requirements.in # myst-parser - # rst2pdf readthedocs-sphinx-ext==2.2.5 \ --hash=sha256:ee5fd5b99db9f0c180b2396cbce528aa36671951b9526bb0272dbfce5517bd27 \ --hash=sha256:f8c56184ea011c972dd45a90122568587cc85b0127bc9cf064d17c68bc809daa # via -r bazel/rules/rules_score/requirements.in -reportlab==4.4.10 \ - --hash=sha256:5abc815746ae2bc44e7ff25db96814f921349ca814c992c7eac3c26029bf7c24 \ - --hash=sha256:5cbbb34ac3546039d0086deb2938cdec06b12da3cdb836e813258eb33cd28487 - # via - # rst2pdf - # svglib requests==2.33.1 \ --hash=sha256:18817f8c57c6263968bc123d237e3b8b08ac046f5456bd1e307ee8f4250d3517 \ --hash=sha256:4e6d1ef462f3626a1f0a0a9c42dd93c63bad33f9f1c1937509b8c5c8718ab56a @@ -685,18 +409,10 @@ requests-file==2.1.0 \ --hash=sha256:0f549a3f3b0699415ac04d167e9cb39bccfb730cb832b4d20be3d9867356e658 \ --hash=sha256:cf270de5a4c5874e84599fc5778303d496c10ae5e870bfa378818f35d21bda5c # via sphinx-needs -rlpycairo==0.4.0 \ - --hash=sha256:07c2c3c47828e83d9c09657a54ecbcd1a97aac9dc199780234456d3473faadc7 \ - --hash=sha256:3ce83825d5761c03bc3571c7db12a336ad51417e63189e3512d11b8922576aa9 - # via svglib roman-numerals==4.1.0 \ --hash=sha256:1af8b147eb1405d5839e78aeb93131690495fe9da5c91856cb33ad55a7f1e5b2 \ --hash=sha256:647ba99caddc2cc1e55a51e4360689115551bf4476d90e8162cf8c345fe233c7 # via sphinx -rst2pdf==0.104 \ - --hash=sha256:cc26a7990192842927f02e983bdea41985f0908de914f08678e8bb07ecee504d \ - --hash=sha256:d68e8c721841e93d1e251b8d8bc9e766a42758cfbbf99469625128c4bb0495b3 - # via -r bazel/rules/rules_score/requirements.in snowballstemmer==3.0.1 \ --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 \ --hash=sha256:6d5eeeec8e9f84d4d56b847692bacf79bc2c8e90c7f80ca4444ff8b6f2e52895 @@ -767,16 +483,6 @@ sphinxcontrib-umlet==1.0.2 \ --hash=sha256:0b028e2be46a8312b497cae3370ffb0b5b3c1470dae75a3ad33aa32bf7af45f0 \ --hash=sha256:c342c2506675f135baafc19f44fa0375d6d508655b12f33cdc8b7b91c20c62a3 # via -r bazel/rules/rules_score/requirements.in -svglib==1.6.0 \ - --hash=sha256:4c38a274a744ef0d1677f55d5d62fc0fb798819f813e52872a796e615741733d \ - --hash=sha256:9aea8e2e81cbbf9c844460e4c7dc90e0a06aea7983bc201975ccd279d7b2d194 - # via -r bazel/rules/rules_score/requirements.in -tinycss2==1.5.1 \ - --hash=sha256:3415ba0f5839c062696996998176c4a3751d18b7edaaeeb658c9ce21ec150661 \ - --hash=sha256:d339d2b616ba90ccce58da8495a78f46e55d4d25f9fd71dfd526f07e7d53f957 - # via - # cssselect2 - # svglib typing-extensions==4.15.0 \ --hash=sha256:0cea48d173cc12fa28ecabc3b837ea3cf6f38c6d1136f85cbaaf598984861466 \ --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 @@ -785,9 +491,3 @@ urllib3==2.7.0 \ --hash=sha256:231e0ec3b63ceb14667c67be60f2f2c40a518cb38b03af60abc813da26505f4c \ --hash=sha256:9fb4c81ebbb1ce9531cce37674bbc6f1360472bc18ca9a553ede278ef7276897 # via requests -webencodings==0.5.1 \ - --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 \ - --hash=sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923 - # via - # cssselect2 - # tinycss2 diff --git a/tools/sphinx/BUILD b/tools/sphinx/BUILD index 86f4b637..a529197b 100644 --- a/tools/sphinx/BUILD +++ b/tools/sphinx/BUILD @@ -25,9 +25,7 @@ sphinx_build_binary( requirement("sphinx_rtd_theme"), requirement("myst_parser"), requirement("readthedocs_sphinx_ext"), - requirement("rst2pdf"), requirement("sphinxcontrib-umlet"), - requirement("svglib"), requirement("sphinxcontrib-plantuml"), ], )