From 5314a7676efd5b4ade48539b10bb79385cc5dc86 Mon Sep 17 00:00:00 2001 From: Jeremy Nimmer Date: Tue, 22 Oct 2024 05:52:56 -0700 Subject: [PATCH] [workspace] Reorganize patches headed to upstream (#22052) --- tools/workspace/README.md | 18 +++++++++++++++ .../patches/disable_int128_on_clang.patch | 3 +++ .../patches/hidden_visibility.patch | 3 +++ .../patches/inline_namespace.patch | 3 +++ .../{ => upstream}/civil_time_linkopts.patch | 0 .../abseil_cpp_internal/repository.bzl | 2 +- .../patches/{ => upstream}/pull494.patch | 0 tools/workspace/bazelisk/repository.bzl | 2 +- .../patches/no_bazel_features.patch | 3 +++ .../patches/clang-15.patch | 2 ++ .../patches/extern_c.patch | 4 ++-- .../patches/git_submodule.patch | 3 +++ .../clarabel_cpp_internal/patches/sdp.patch | 3 +++ .../{ => upstream}/missing_include.patch | 0 tools/workspace/clp_internal/repository.bzl | 2 +- .../patches/vendor.patch | 2 ++ .../conex_internal/patches/no_eigen_io.patch | 2 ++ .../patches/{ => upstream}/debug_macros.patch | 0 .../eigen_namespace_pollution.patch | 0 .../conex_internal/patches/vendor.patch | 2 ++ tools/workspace/conex_internal/repository.bzl | 4 ++-- .../patches/clarabel_blas.patch | 2 ++ .../patches/params_pathname.patch | 2 ++ .../csdp_internal/patches/printlevel.patch | 2 ++ .../patches/{ => upstream}/cassert.patch | 0 tools/workspace/fcl_internal/repository.bzl | 2 +- .../patches/{ => upstream}/bazel7.patch | 0 tools/workspace/gflags/repository.bzl | 2 +- .../patches/console_allocs.patch | 3 +++ .../remove_overloaded_fixture_set_up.patch | 2 ++ .../patches/string_precision.patch | 3 +++ .../gtest/patches/add_printers.patch | 2 ++ .../highway_internal/patches/linkstatic.patch | 3 +-- .../target_get_index_inline_always.patch | 2 +- .../patches/target_update_noinline.patch | 2 ++ .../msgpack_internal/patches/vendor.patch | 1 + .../mypy_internal/patches/no_retry.patch | 2 ++ .../mypy_internal/patches/timeout.patch | 2 ++ .../{ => upstream}/reject_double_colon.patch | 0 tools/workspace/mypy_internal/repository.bzl | 2 +- .../patches/namespace.patch | 2 ++ .../nlohmann_internal/patches/vendor.patch | 2 ++ .../nlopt_internal/patches/gen_enums.patch | 2 ++ .../patches/remove_luksan.patch | 2 ++ .../nlopt_internal/patches/stogo.patch | 22 ------------------- .../nlopt_internal/patches/vendor.patch | 2 ++ .../patches/dlopen_forbidden.patch | 2 ++ .../openusd_internal/patches/namespace.patch | 2 +- .../openusd_internal/patches/no_gnu_ext.patch | 3 ++- .../patches/pegtl_workaround.patch | 5 +++-- .../00_work_thread_limits_namespace.patch | 0 .../patches/{ => upstream}/cmake_gf.patch | 0 .../{ => upstream}/cmake_rapidjson.patch | 0 .../{ => upstream}/cmake_usd_usd_shared.patch | 0 .../{ => upstream}/nanocolor_namespace.patch | 0 .../{ => upstream}/pegtl_namespace.patch | 0 .../patches/usd_sdf_flex_hidden.patch | 2 ++ .../patches/weakptrfacade_cxx20.patch | 4 ++-- .../workspace/openusd_internal/repository.bzl | 12 +++++----- .../picosha2_internal/patches/vendor.patch | 2 ++ .../patches/disable_dead_code.patch | 2 ++ .../patches/{ => upstream}/cxx20.patch | 0 .../qhull_internal/patches/vendor.patch | 2 ++ tools/workspace/qhull_internal/repository.bzl | 2 +- .../patches/disable-import-warning.patch | 2 ++ .../patches/internal_config_repo.patch | 2 ++ .../rules_rust/patches/import_cycle.patch | 2 ++ .../{ => upstream}/include_paths.patch | 0 tools/workspace/scs_internal/repository.bzl | 2 +- .../sdformat_internal/patches/console.patch | 1 + .../patches/deprecation_unit_testing.patch | 2 ++ .../patches/environment.patch | 2 ++ .../patches/no_global_config.patch | 2 ++ ...no_share_path.path => no_share_path.patch} | 2 +- .../sdformat_internal/patches/no_urdf.patch | 2 ++ .../sdformat_internal/repository.bzl | 2 +- .../snopt/patches/snopt-openmp.patch | 2 ++ .../patches/no_torch.patch | 2 ++ .../stduuid_internal/patches/vendor.patch | 2 ++ .../styleguide/patches/test_paths.patch | 2 ++ .../{ => upstream}/sre_deprecation.patch | 0 tools/workspace/styleguide/repository.bzl | 2 +- .../tinygltf_internal/patches/json.patch | 2 ++ .../patches/default_texture_color.patch | 2 ++ .../patches/faster_float_parsing.patch | 2 ++ .../in_memory_parsing_support.patch | 0 .../{ => upstream}/silence_materials.patch | 0 .../tinyobjloader_internal/repository.bzl | 4 ++-- .../tinyxml2_internal/patches/namespace.patch | 2 ++ .../patches/vendor.patch | 2 ++ .../patches/common_core_nobacktrace.patch | 2 ++ .../patches/common_core_version.patch | 2 +- .../patches/disable_static_destructors.patch | 2 ++ .../patches/io_image_formats.patch | 3 +-- .../vtk_internal/patches/nerf_pegtl.patch | 2 +- .../rendering_opengl2_no_factory.patch | 2 +- .../rendering_opengl2_nobacktrace.patch | 2 ++ .../fix_illumination_bugs.patch | 0 .../gltf_importer_from_stream.patch | 0 .../{ => upstream}/gltf_selected_load.patch | 0 .../io_geometry_gltf_default_scene.patch | 0 .../patches/vtkdoubleconversion_hidden.patch | 2 +- .../patches/vtkfast_float_hidden.patch | 2 +- .../patches/vtkpugixml_hidden.patch | 2 +- .../vtk_internal/patches/vtksys_hidden.patch | 2 ++ tools/workspace/vtk_internal/repository.bzl | 8 +++---- .../patches/emit-local-tag.patch | 2 ++ 107 files changed, 174 insertions(+), 66 deletions(-) rename tools/workspace/abseil_cpp_internal/patches/{ => upstream}/civil_time_linkopts.patch (100%) rename tools/workspace/bazelisk/patches/{ => upstream}/pull494.patch (100%) rename tools/workspace/clp_internal/patches/{ => upstream}/missing_include.patch (100%) rename tools/workspace/conex_internal/patches/{ => upstream}/debug_macros.patch (100%) rename tools/workspace/conex_internal/patches/{ => upstream}/eigen_namespace_pollution.patch (100%) rename tools/workspace/fcl_internal/patches/{ => upstream}/cassert.patch (100%) rename tools/workspace/gflags/patches/{ => upstream}/bazel7.patch (100%) rename tools/workspace/mypy_internal/patches/{ => upstream}/reject_double_colon.patch (100%) delete mode 100644 tools/workspace/nlopt_internal/patches/stogo.patch rename tools/workspace/openusd_internal/patches/{ => upstream}/00_work_thread_limits_namespace.patch (100%) rename tools/workspace/openusd_internal/patches/{ => upstream}/cmake_gf.patch (100%) rename tools/workspace/openusd_internal/patches/{ => upstream}/cmake_rapidjson.patch (100%) rename tools/workspace/openusd_internal/patches/{ => upstream}/cmake_usd_usd_shared.patch (100%) rename tools/workspace/openusd_internal/patches/{ => upstream}/nanocolor_namespace.patch (100%) rename tools/workspace/openusd_internal/patches/{ => upstream}/pegtl_namespace.patch (100%) rename tools/workspace/qhull_internal/patches/{ => upstream}/cxx20.patch (100%) rename tools/workspace/scs_internal/patches/{ => upstream}/include_paths.patch (100%) rename tools/workspace/sdformat_internal/patches/{no_share_path.path => no_share_path.patch} (88%) rename tools/workspace/styleguide/patches/{ => upstream}/sre_deprecation.patch (100%) rename tools/workspace/tinyobjloader_internal/patches/{ => upstream}/in_memory_parsing_support.patch (100%) rename tools/workspace/tinyobjloader_internal/patches/{ => upstream}/silence_materials.patch (100%) rename tools/workspace/vtk_internal/patches/{ => upstream}/fix_illumination_bugs.patch (100%) rename tools/workspace/vtk_internal/patches/{ => upstream}/gltf_importer_from_stream.patch (100%) rename tools/workspace/vtk_internal/patches/{ => upstream}/gltf_selected_load.patch (100%) rename tools/workspace/vtk_internal/patches/{ => upstream}/io_geometry_gltf_default_scene.patch (100%) diff --git a/tools/workspace/README.md b/tools/workspace/README.md index b080dfd13cb8..72aebdc0885d 100644 --- a/tools/workspace/README.md +++ b/tools/workspace/README.md @@ -189,6 +189,24 @@ this will be susceptible to Ubuntu vs macOS differences, so please opt-in to the macOS build(s) in Jenkins before merging, using the instructions at https://drake.mit.edu/jenkins.html#running-an-on-demand-build. +### Using patch files + +When we need to adjust an upstream source release for our purposes, we do that +with `*.patch` files in Drake, not by forking the repository and pointing to +the fork. + +Patches should live at tools/workspace/foobar/patches/quux.patch. In case the +change should be upstreamed (even if we haven't filed that pull request yet), +put the patch in tools/workspace/foobar/patches/upstream/quux.patch to make +it easier to search for patches that require follow-up action. In case the +patch should not be upstreamed, you should probably explain why in a comment. + +If a change should be upstreamed but our current patch isn't yet groomed to be +good enough, still place it into `.../patches/upstream/quux.patch`; the idea is +to separate patches where some further work is required (whether that be opening +a pull request, or grooming the patch, or even just opening an issue for +discussion) from patches that are quiescent. + ## Updating pkg_config_repository software versions Most `pkg_config_repository` calls refer to libraries provided by the host diff --git a/tools/workspace/abseil_cpp_internal/patches/disable_int128_on_clang.patch b/tools/workspace/abseil_cpp_internal/patches/disable_int128_on_clang.patch index 08a3f294d482..11f5dddfea27 100644 --- a/tools/workspace/abseil_cpp_internal/patches/disable_int128_on_clang.patch +++ b/tools/workspace/abseil_cpp_internal/patches/disable_int128_on_clang.patch @@ -1,6 +1,9 @@ Disable __int128 in Clang which triggers linker error under UBSan. See https://bugs.llvm.org/show_bug.cgi?id=16404 +Reasoning for not upstreaming this patch: would need too much surgery to +gold-plate it for all of their supported build modes. + --- absl/base/config.h +++ absl/base/config.h @@ -317,8 +317,7 @@ static_assert(ABSL_INTERNAL_INLINE_NAMESPACE_STR[0] != 'h' || diff --git a/tools/workspace/abseil_cpp_internal/patches/hidden_visibility.patch b/tools/workspace/abseil_cpp_internal/patches/hidden_visibility.patch index 957497d38e8a..e0eb752c79d1 100644 --- a/tools/workspace/abseil_cpp_internal/patches/hidden_visibility.patch +++ b/tools/workspace/abseil_cpp_internal/patches/hidden_visibility.patch @@ -2,6 +2,9 @@ Use hidden symbol visibility for Abseil's C++ code. This probably improves linker and loader throughput. +Reasoning for not upstreaming this patch: would need too much surgery to +gold-plate it for all of their supported build modes. + --- absl/base/config.h.orig +++ absl/base/config.h @@ -153,7 +153,7 @@ diff --git a/tools/workspace/abseil_cpp_internal/patches/inline_namespace.patch b/tools/workspace/abseil_cpp_internal/patches/inline_namespace.patch index d5494ccbb1ee..acfc3a357cf2 100644 --- a/tools/workspace/abseil_cpp_internal/patches/inline_namespace.patch +++ b/tools/workspace/abseil_cpp_internal/patches/inline_namespace.patch @@ -3,6 +3,9 @@ Use an inline namespace for Abseil. This prevents Drake's build of Abseil from interfering with a user's downstream build of Abseil when the user is using static linking. +Reasoning for not upstreaming this patch: the options header is specifically +designed for end-user customization, and that's basically all we're doing here. + --- absl/base/options.h +++ absl/base/options.h @@ -205,8 +205,8 @@ diff --git a/tools/workspace/abseil_cpp_internal/patches/civil_time_linkopts.patch b/tools/workspace/abseil_cpp_internal/patches/upstream/civil_time_linkopts.patch similarity index 100% rename from tools/workspace/abseil_cpp_internal/patches/civil_time_linkopts.patch rename to tools/workspace/abseil_cpp_internal/patches/upstream/civil_time_linkopts.patch diff --git a/tools/workspace/abseil_cpp_internal/repository.bzl b/tools/workspace/abseil_cpp_internal/repository.bzl index 73fbd7a9a1a1..be3eef0dc96c 100644 --- a/tools/workspace/abseil_cpp_internal/repository.bzl +++ b/tools/workspace/abseil_cpp_internal/repository.bzl @@ -9,7 +9,7 @@ def abseil_cpp_internal_repository( commit = "03b8d6ea3dc6a0b8c6bcf42503c2053754dab2e4", sha256 = "e16fb80e8fad73d5a6af7787c8a52a1b1181a0219133272ade0e200c0a1788d6", # noqa patches = [ - ":patches/civil_time_linkopts.patch", + ":patches/upstream/civil_time_linkopts.patch", ":patches/disable_int128_on_clang.patch", ":patches/hidden_visibility.patch", ":patches/inline_namespace.patch", diff --git a/tools/workspace/bazelisk/patches/pull494.patch b/tools/workspace/bazelisk/patches/upstream/pull494.patch similarity index 100% rename from tools/workspace/bazelisk/patches/pull494.patch rename to tools/workspace/bazelisk/patches/upstream/pull494.patch diff --git a/tools/workspace/bazelisk/repository.bzl b/tools/workspace/bazelisk/repository.bzl index ee0e1d9d426d..c971aade239e 100644 --- a/tools/workspace/bazelisk/repository.bzl +++ b/tools/workspace/bazelisk/repository.bzl @@ -23,7 +23,7 @@ def bazelisk_repository( sha256 = "4e136f6f1212f28d5c6fdd4cfa3f016d7443831fc98ce8b7ee3caee81ef956fa", # noqa build_file = ":package.BUILD.bazel", patches = [ - ":patches/pull494.patch", + ":patches/upstream/pull494.patch", ], mirrors = mirrors, ) diff --git a/tools/workspace/build_bazel_apple_support/patches/no_bazel_features.patch b/tools/workspace/build_bazel_apple_support/patches/no_bazel_features.patch index b3f57cc6aac2..1742238509c6 100644 --- a/tools/workspace/build_bazel_apple_support/patches/no_bazel_features.patch +++ b/tools/workspace/build_bazel_apple_support/patches/no_bazel_features.patch @@ -6,6 +6,9 @@ compatible with our approach to loading phases. When we switch to bzlmod, we can reconsider. +Reasoning for not upstreaming this patch: limited value, given the +pending switch to bzlmod. + --- crosstool/cc_toolchain_config.bzl +++ crosstool/cc_toolchain_config.bzl @@ -13,7 +13,6 @@ diff --git a/tools/workspace/clang_cindex_python3_internal/patches/clang-15.patch b/tools/workspace/clang_cindex_python3_internal/patches/clang-15.patch index 20c707ac6c21..e1798d5c548b 100644 --- a/tools/workspace/clang_cindex_python3_internal/patches/clang-15.patch +++ b/tools/workspace/clang_cindex_python3_internal/patches/clang-15.patch @@ -1,5 +1,7 @@ [clang_cindex] Support pre- and post-Clang 15 cursor kinds +Reasoning for not upstreaming this patch: upstream is dead. + --- cindex.py +++ cindex.py @@ -1313,5 +1313,9 @@ diff --git a/tools/workspace/clarabel_cpp_internal/patches/extern_c.patch b/tools/workspace/clarabel_cpp_internal/patches/extern_c.patch index 346420fab6be..01c17d138d60 100644 --- a/tools/workspace/clarabel_cpp_internal/patches/extern_c.patch +++ b/tools/workspace/clarabel_cpp_internal/patches/extern_c.patch @@ -4,8 +4,8 @@ Drake's vendor_cxx tool doesn't know how to parse `extern "C" { ... }` groupings. Work around that by marking all of the individual functions one by one. -We should improve vendor_cxx to handle the original file (e.g., rather -than trying to upstream this patch). +Reasoning for not upstreaming this patch: it would be more vaulable to +improve vendor_cxx to handle the original file, instead. --- include/cpp/DefaultSettings.h +++ include/cpp/DefaultSettings.h diff --git a/tools/workspace/clarabel_cpp_internal/patches/git_submodule.patch b/tools/workspace/clarabel_cpp_internal/patches/git_submodule.patch index 555dcc20006d..e46e79b1f691 100644 --- a/tools/workspace/clarabel_cpp_internal/patches/git_submodule.patch +++ b/tools/workspace/clarabel_cpp_internal/patches/git_submodule.patch @@ -1,5 +1,8 @@ [Clarabel.cpp] Pin Clarabel to the Crate (not the git submodule) +Reasoning for not upstreaming this patch: if they want to use submodules, +then so be it. + --- rust_wrapper/Cargo.toml +++ rust_wrapper/Cargo.toml @@ -5,4 +5,4 @@ diff --git a/tools/workspace/clarabel_cpp_internal/patches/sdp.patch b/tools/workspace/clarabel_cpp_internal/patches/sdp.patch index 5ae6eb77b3d5..7ddc02452b31 100644 --- a/tools/workspace/clarabel_cpp_internal/patches/sdp.patch +++ b/tools/workspace/clarabel_cpp_internal/patches/sdp.patch @@ -1,5 +1,8 @@ [Clarabel.cpp] Enable the SDP feature by default +Reasoning for not upstreaming this patch: changing an option, which is +our prerogative but not relevant for upstream. + --- rust_wrapper/Cargo.toml +++ rust_wrapper/Cargo.toml @@ -14,6 +14,7 @@ opt-level = 3 diff --git a/tools/workspace/clp_internal/patches/missing_include.patch b/tools/workspace/clp_internal/patches/upstream/missing_include.patch similarity index 100% rename from tools/workspace/clp_internal/patches/missing_include.patch rename to tools/workspace/clp_internal/patches/upstream/missing_include.patch diff --git a/tools/workspace/clp_internal/repository.bzl b/tools/workspace/clp_internal/repository.bzl index 321e3abbfc68..8ab6ec819998 100644 --- a/tools/workspace/clp_internal/repository.bzl +++ b/tools/workspace/clp_internal/repository.bzl @@ -10,7 +10,7 @@ def clp_internal_repository( sha256 = "0d79ece896cdaa4a3855c37f1c28e6c26285f74d45f635046ca0b6d68a509885", # noqa build_file = ":package.BUILD.bazel", patches = [ - ":patches/missing_include.patch", + ":patches/upstream/missing_include.patch", ], mirrors = mirrors, ) diff --git a/tools/workspace/common_robotics_utilities/patches/vendor.patch b/tools/workspace/common_robotics_utilities/patches/vendor.patch index de83f451b56d..623dc2df62d8 100644 --- a/tools/workspace/common_robotics_utilities/patches/vendor.patch +++ b/tools/workspace/common_robotics_utilities/patches/vendor.patch @@ -2,6 +2,8 @@ This prevents ODR violations in case downstream code also links to CRU. +Reasoning for not upstreaming this patch: Drake-specific vendoring. + --- include/common_robotics_utilities/cru_namespace.hpp +++ include/common_robotics_utilities/cru_namespace.hpp @@ -17,5 +17,5 @@ diff --git a/tools/workspace/conex_internal/patches/no_eigen_io.patch b/tools/workspace/conex_internal/patches/no_eigen_io.patch index 3e6b84009230..1bbd40e4451d 100644 --- a/tools/workspace/conex_internal/patches/no_eigen_io.patch +++ b/tools/workspace/conex_internal/patches/no_eigen_io.patch @@ -2,6 +2,8 @@ Drake builds using EIGEN_NO_IO, so Conex can't use it either. +Reasoning for not upstreaming this patch: Drake-specific build option. + --- conex/debug_macros.h +++ conex/debug_macros.h @@ -8,7 +8,7 @@ diff --git a/tools/workspace/conex_internal/patches/debug_macros.patch b/tools/workspace/conex_internal/patches/upstream/debug_macros.patch similarity index 100% rename from tools/workspace/conex_internal/patches/debug_macros.patch rename to tools/workspace/conex_internal/patches/upstream/debug_macros.patch diff --git a/tools/workspace/conex_internal/patches/eigen_namespace_pollution.patch b/tools/workspace/conex_internal/patches/upstream/eigen_namespace_pollution.patch similarity index 100% rename from tools/workspace/conex_internal/patches/eigen_namespace_pollution.patch rename to tools/workspace/conex_internal/patches/upstream/eigen_namespace_pollution.patch diff --git a/tools/workspace/conex_internal/patches/vendor.patch b/tools/workspace/conex_internal/patches/vendor.patch index d338e6faadf9..25f69cbe7c46 100644 --- a/tools/workspace/conex_internal/patches/vendor.patch +++ b/tools/workspace/conex_internal/patches/vendor.patch @@ -1,5 +1,7 @@ [conex] Use a custom cc_library rule for vendoring +Reasoning for not upstreaming this patch: Drake-specific vendoring. + --- conex/BUILD +++ conex/BUILD @@ -1,3 +1,8 @@ diff --git a/tools/workspace/conex_internal/repository.bzl b/tools/workspace/conex_internal/repository.bzl index 65d29423a4d2..8af88db9edc9 100644 --- a/tools/workspace/conex_internal/repository.bzl +++ b/tools/workspace/conex_internal/repository.bzl @@ -10,8 +10,8 @@ def conex_internal_repository( sha256 = "3f88f45276a1b474946b67e7c650fefd6d7c9dcb48f0c0a11393be3e6adc5ba7", # noqa build_file = ":package.BUILD.bazel", patches = [ - ":patches/debug_macros.patch", - ":patches/eigen_namespace_pollution.patch", + ":patches/upstream/debug_macros.patch", + ":patches/upstream/eigen_namespace_pollution.patch", ":patches/no_eigen_io.patch", ":patches/vendor.patch", ], diff --git a/tools/workspace/crate_universe/patches/clarabel_blas.patch b/tools/workspace/crate_universe/patches/clarabel_blas.patch index 2c686555d021..22a161bdf88e 100644 --- a/tools/workspace/crate_universe/patches/clarabel_blas.patch +++ b/tools/workspace/crate_universe/patches/clarabel_blas.patch @@ -11,6 +11,8 @@ However, since Drake's ultimate "application" is to ship our own shared library, we must not allow Rust to govern which libraries to link. Thus, we need to delete the lines that perform the linking. +Reasoning for not upstreaming this patch: Drake-specific option. + --- src/algebra/dense/blas/traits.rs +++ src/algebra/dense/blas/traits.rs @@ -8,8 +8,6 @@ cfg_if::cfg_if! { diff --git a/tools/workspace/csdp_internal/patches/params_pathname.patch b/tools/workspace/csdp_internal/patches/params_pathname.patch index 7a344deb0846..9ef501e25ebe 100644 --- a/tools/workspace/csdp_internal/patches/params_pathname.patch +++ b/tools/workspace/csdp_internal/patches/params_pathname.patch @@ -1,5 +1,7 @@ Add option to specify a filename to parse for CSDP parameters. +Reasoning for not upstreaming this patch: upstream is dead. + --- include/declarations.h 2017-07-25 11:44:57.000000000 -0700 +++ include/declarations.h 2021-06-30 16:17:10.855119121 -0700 @@ -132,7 +132,7 @@ diff --git a/tools/workspace/csdp_internal/patches/printlevel.patch b/tools/workspace/csdp_internal/patches/printlevel.patch index c91ae130064c..2386bce85a66 100644 --- a/tools/workspace/csdp_internal/patches/printlevel.patch +++ b/tools/workspace/csdp_internal/patches/printlevel.patch @@ -1,5 +1,7 @@ When no parameters file is in use, do not console print by default. +Reasoning for not upstreaming this patch: Drake-specific default option. + --- lib/initparams.c 2017-07-25 11:44:57.000000000 -0700 +++ lib/initparams.c 2021-06-30 15:50:10.984899788 -0700 @@ -35,7 +35,7 @@ diff --git a/tools/workspace/fcl_internal/patches/cassert.patch b/tools/workspace/fcl_internal/patches/upstream/cassert.patch similarity index 100% rename from tools/workspace/fcl_internal/patches/cassert.patch rename to tools/workspace/fcl_internal/patches/upstream/cassert.patch diff --git a/tools/workspace/fcl_internal/repository.bzl b/tools/workspace/fcl_internal/repository.bzl index 5eb785e90685..cd3ee774083b 100644 --- a/tools/workspace/fcl_internal/repository.bzl +++ b/tools/workspace/fcl_internal/repository.bzl @@ -10,7 +10,7 @@ def fcl_internal_repository( sha256 = "b055315cad3394b7bb1db8eead56a9063e95ed6cb0f43e12b244ab0bd2ce5be8", # noqa build_file = ":package.BUILD.bazel", patches = [ - ":patches/cassert.patch", + ":patches/upstream/cassert.patch", ], mirrors = mirrors, ) diff --git a/tools/workspace/gflags/patches/bazel7.patch b/tools/workspace/gflags/patches/upstream/bazel7.patch similarity index 100% rename from tools/workspace/gflags/patches/bazel7.patch rename to tools/workspace/gflags/patches/upstream/bazel7.patch diff --git a/tools/workspace/gflags/repository.bzl b/tools/workspace/gflags/repository.bzl index d25bd9e0c328..610b001a338c 100644 --- a/tools/workspace/gflags/repository.bzl +++ b/tools/workspace/gflags/repository.bzl @@ -9,7 +9,7 @@ def gflags_repository( commit = "v2.2.2", sha256 = "34af2f15cf7367513b352bdcd2493ab14ce43692d2dcd9dfc499492966c64dcf", # noqa patches = [ - ":patches/bazel7.patch", + ":patches/upstream/bazel7.patch", ], mirrors = mirrors, ) diff --git a/tools/workspace/googlebenchmark/patches/console_allocs.patch b/tools/workspace/googlebenchmark/patches/console_allocs.patch index 2826ad78f6bc..91079da5b7d0 100644 --- a/tools/workspace/googlebenchmark/patches/console_allocs.patch +++ b/tools/workspace/googlebenchmark/patches/console_allocs.patch @@ -1,5 +1,8 @@ If a memory manager is installed then shows allocs in the summary table. +Reasoning for not upstreaming this patch: don't want to spend the time +reworking the patch and tests to be suitable. + --- src/console_reporter.cc +++ src/console_reporter.cc @@ -53,9 +53,11 @@ bool ConsoleReporter::ReportContext(const Context& context) { diff --git a/tools/workspace/googlebenchmark/patches/remove_overloaded_fixture_set_up.patch b/tools/workspace/googlebenchmark/patches/remove_overloaded_fixture_set_up.patch index 3967454a0e34..88d90bd612b3 100644 --- a/tools/workspace/googlebenchmark/patches/remove_overloaded_fixture_set_up.patch +++ b/tools/workspace/googlebenchmark/patches/remove_overloaded_fixture_set_up.patch @@ -2,6 +2,8 @@ Avoid GCC warnings about overloaded virtuals We only need the mutable spelling for Drake code. +Reasoning for not upstreaming this patch: Drake-specific API choice. + --- include/benchmark/benchmark.h +++ include/benchmark/benchmark.h @@ -1425,12 +1425,8 @@ diff --git a/tools/workspace/googlebenchmark/patches/string_precision.patch b/tools/workspace/googlebenchmark/patches/string_precision.patch index 09ca5f108181..28ddb8d03694 100644 --- a/tools/workspace/googlebenchmark/patches/string_precision.patch +++ b/tools/workspace/googlebenchmark/patches/string_precision.patch @@ -1,5 +1,8 @@ Actually respect the requested human-readable precision. +Reasoning for not upstreaming this patch: not sure if the bug is +observable in their uncustomized build. + --- src/string_util.cc +++ src/string_util.cc @@ -55,6 +61,8 @@ void ToExponentAndMantissa(double val, double thresh, int precision, diff --git a/tools/workspace/gtest/patches/add_printers.patch b/tools/workspace/gtest/patches/add_printers.patch index 3709f19727e1..28a46c34cc95 100644 --- a/tools/workspace/gtest/patches/add_printers.patch +++ b/tools/workspace/gtest/patches/add_printers.patch @@ -8,6 +8,8 @@ The FmtFormatPrinter knows how to ask fmt::to_string to print values. We need to inject it prior to the osteam formatter, because we should prefer fmt over ostream anytime fmt is offered. +Reasoning for not upstreaming this patch: Drake-specific dependency. + --- googletest/include/gtest/gtest-printers.h +++ googletest/include/gtest/gtest-printers.h @@ -115,6 +115,9 @@ diff --git a/tools/workspace/highway_internal/patches/linkstatic.patch b/tools/workspace/highway_internal/patches/linkstatic.patch index f6efb46593b2..b76102f307a6 100644 --- a/tools/workspace/highway_internal/patches/linkstatic.patch +++ b/tools/workspace/highway_internal/patches/linkstatic.patch @@ -3,8 +3,7 @@ In general, setting -fvisibility on C++ source code is problematic, but hwy upstream has been specifically engineered to allow it. -This situation is unique to Drake, so we do not plan to upstream this -patch. +Reasoning for not upstreaming this patch: Drake-specific vendoring. --- BUILD +++ BUILD diff --git a/tools/workspace/highway_internal/patches/target_get_index_inline_always.patch b/tools/workspace/highway_internal/patches/target_get_index_inline_always.patch index 4d86bebd8f55..81771ffa3c6c 100644 --- a/tools/workspace/highway_internal/patches/target_get_index_inline_always.patch +++ b/tools/workspace/highway_internal/patches/target_get_index_inline_always.patch @@ -13,7 +13,7 @@ an `#if MSVC` stanza. This is not strictly necessary for Drake, but keeps the patch itself compiler-neutral. The second change block is for all remaining compilers, and the third change block applies the repair. -These changes should not be upstreamed to highway. The deeper issue is +Reasoning for not upstreaming this patch: The deeper issue is that highway currently relies on delicate handling of deliberate ODR violations. Analyzing and fixing ODR issues in highway is beyond the scope of work needed for Drake. diff --git a/tools/workspace/highway_internal/patches/target_update_noinline.patch b/tools/workspace/highway_internal/patches/target_update_noinline.patch index fdad1c6a9ef7..97510d7c1f54 100644 --- a/tools/workspace/highway_internal/patches/target_update_noinline.patch +++ b/tools/workspace/highway_internal/patches/target_update_noinline.patch @@ -6,6 +6,8 @@ flags it as a violation (non-Drake public symbol in a shared library). Moving the function to the cc file works around the problem. +Reasoning for not upstreaming this patch: Drake-specific vendoring. + --- hwy/targets.h +++ hwy/targets.h @@ -300,11 +300,7 @@ diff --git a/tools/workspace/msgpack_internal/patches/vendor.patch b/tools/workspace/msgpack_internal/patches/vendor.patch index 5b228fe561bd..fca3335a8965 100644 --- a/tools/workspace/msgpack_internal/patches/vendor.patch +++ b/tools/workspace/msgpack_internal/patches/vendor.patch @@ -4,6 +4,7 @@ For cpp_config_decl.hpp, vendor_cxx gets a bit too greedy and tries to span its namespace changes across #ifdef branches. We can avoid that outcome by adding a redundant #include statement to help guide it. +Reasoning for not upstreaming this patch: Drake-specific vendoring. --- include/msgpack/v2/cpp_config_decl.hpp.orig +++ include/msgpack/v2/cpp_config_decl.hpp diff --git a/tools/workspace/mypy_internal/patches/no_retry.patch b/tools/workspace/mypy_internal/patches/no_retry.patch index 6080963b1e85..89b259c8ba29 100644 --- a/tools/workspace/mypy_internal/patches/no_retry.patch +++ b/tools/workspace/mypy_internal/patches/no_retry.patch @@ -4,6 +4,8 @@ Nothing Drake loads should have nasty side-effects, so there should never be any reason to crash and resume. Retrying might slow things down, which we definitely do NOT want. +Reasoning for not upstreaming this patch: Drake-specific option value. + --- mypy/moduleinspect.py +++ mypy/moduleinspect.py @@ -143,5 +143,5 @@ diff --git a/tools/workspace/mypy_internal/patches/timeout.patch b/tools/workspace/mypy_internal/patches/timeout.patch index 51645b8bca7a..053972ba5b3c 100644 --- a/tools/workspace/mypy_internal/patches/timeout.patch +++ b/tools/workspace/mypy_internal/patches/timeout.patch @@ -1,5 +1,7 @@ Increase timeout from 30 seconds to 360 seconds +Reasoning for not upstreaming this patch: Drake-specific option value. + --- mypy/moduleinspect.py +++ mypy/moduleinspect.py @@ -157,13 +157,15 @@ diff --git a/tools/workspace/mypy_internal/patches/reject_double_colon.patch b/tools/workspace/mypy_internal/patches/upstream/reject_double_colon.patch similarity index 100% rename from tools/workspace/mypy_internal/patches/reject_double_colon.patch rename to tools/workspace/mypy_internal/patches/upstream/reject_double_colon.patch diff --git a/tools/workspace/mypy_internal/repository.bzl b/tools/workspace/mypy_internal/repository.bzl index ce73b623f37c..2644b319484a 100644 --- a/tools/workspace/mypy_internal/repository.bzl +++ b/tools/workspace/mypy_internal/repository.bzl @@ -13,8 +13,8 @@ def mypy_internal_repository( sha256 = "64bb56c93fbeae322af1bec7105554ac12369687825341cc9b7f0b139b6d688d", # noqa build_file = ":package.BUILD.bazel", patches = [ + ":patches/upstream/reject_double_colon.patch", ":patches/no_retry.patch", - ":patches/reject_double_colon.patch", ":patches/timeout.patch", ], mirrors = mirrors, diff --git a/tools/workspace/nanoflann_internal/patches/namespace.patch b/tools/workspace/nanoflann_internal/patches/namespace.patch index f471a526d45f..10403f6abb7f 100644 --- a/tools/workspace/nanoflann_internal/patches/namespace.patch +++ b/tools/workspace/nanoflann_internal/patches/namespace.patch @@ -3,6 +3,8 @@ Add a drake_vendor namespace ala tools/workspace/vendor_cxx This prevents link-time symbol conflicts in case code downstream of Drake wants to use a different build of nanoflann. +Reasoning for not upstreaming this patch: Drake-specific vendoring. + --- include/nanoflann.hpp.orig +++ include/nanoflann.hpp @@ -70,6 +70,7 @@ diff --git a/tools/workspace/nlohmann_internal/patches/vendor.patch b/tools/workspace/nlohmann_internal/patches/vendor.patch index d765024e2b47..f3b0f25b0ebb 100644 --- a/tools/workspace/nlohmann_internal/patches/vendor.patch +++ b/tools/workspace/nlohmann_internal/patches/vendor.patch @@ -2,6 +2,8 @@ Add vendoring namespace. This prevents ODR violations in case downstream code also links to json. +Reasoning for not upstreaming this patch: Drake-specific vendoring. + --- single_include/nlohmann/json.hpp +++ single_include/nlohmann/json.hpp @@ -131,19 +131,21 @@ diff --git a/tools/workspace/nlopt_internal/patches/gen_enums.patch b/tools/workspace/nlopt_internal/patches/gen_enums.patch index 4c027e146e7b..33e822e267d7 100644 --- a/tools/workspace/nlopt_internal/patches/gen_enums.patch +++ b/tools/workspace/nlopt_internal/patches/gen_enums.patch @@ -4,6 +4,8 @@ Here we create the same effect by patching the source file directly. Separately (in a unit test), we cross-check that this patch and the CMake script both produce consistent results. +Reasoning for not upstreaming this patch: Drake-specific build hack. + --- src/api/nlopt-in.hpp.orig +++ src/api/nlopt-in.hpp @@ -46,6 +46,68 @@ diff --git a/tools/workspace/nlopt_internal/patches/remove_luksan.patch b/tools/workspace/nlopt_internal/patches/remove_luksan.patch index 97799c3e3809..d04958ce9f75 100644 --- a/tools/workspace/nlopt_internal/patches/remove_luksan.patch +++ b/tools/workspace/nlopt_internal/patches/remove_luksan.patch @@ -4,6 +4,8 @@ That library is licensed under LGPL-2.1+ but the rest of NLopt is licensed under MIT or similar notice-only licenses, and we really don't want to distribute this code using dynamic linking. +Reasoning for not upstreaming this patch: Drake-specific build option. + --- src/api/optimize.c.orig +++ src/api/optimize.c @@ -40,7 +40,9 @@ diff --git a/tools/workspace/nlopt_internal/patches/stogo.patch b/tools/workspace/nlopt_internal/patches/stogo.patch deleted file mode 100644 index bdfec7c5d706..000000000000 --- a/tools/workspace/nlopt_internal/patches/stogo.patch +++ /dev/null @@ -1,22 +0,0 @@ -[nlopt] Use the anonymous namespace for a file-local class - -This is filed as https://github.com/stevengj/nlopt/pull/535 upstream. - ---- src/algs/stogo/stogo.cc -+++ src/algs/stogo/stogo.cc -@@ -4,6 +4,7 @@ - #include "stogo.h" - #include "global.h" - -+namespace { - class MyGlobal : public Global { - protected: - objective_func my_func; -@@ -25,6 +26,7 @@ - return 0.0; - } - }; -+} // namespace - - int stogo_minimize(int n, - objective_func fgrad, void *data, diff --git a/tools/workspace/nlopt_internal/patches/vendor.patch b/tools/workspace/nlopt_internal/patches/vendor.patch index 4e9e915aeb3c..955210e1a12a 100644 --- a/tools/workspace/nlopt_internal/patches/vendor.patch +++ b/tools/workspace/nlopt_internal/patches/vendor.patch @@ -3,6 +3,8 @@ When weaving the inline namespace into this file, we need to ensure that it doesn't cross an `#if 0` block. +Reasoning for not upstreaming this patch: Drake-specific vendoring. + --- src/algs/stogo/local.cc +++ src/algs/stogo/local.cc @@ -11,11 +11,12 @@ diff --git a/tools/workspace/openusd_internal/patches/dlopen_forbidden.patch b/tools/workspace/openusd_internal/patches/dlopen_forbidden.patch index 121025f7828c..7c4769f14ef5 100644 --- a/tools/workspace/openusd_internal/patches/dlopen_forbidden.patch +++ b/tools/workspace/openusd_internal/patches/dlopen_forbidden.patch @@ -4,6 +4,8 @@ By policy, Drake forbids dlopen (and thus dlclose). We'll change those functions in OpenUSD to be no-ops. Any symbol names that we need to look up using dlsym should already be loaded by the time we need them. +Reasoning for not upstreaming this patch: Drake-specific build option. + --- pxr/base/arch/library.cpp +++ pxr/base/arch/library.cpp @@ -40,6 +40,8 @@ DWORD arch_lastLibraryError = 0; diff --git a/tools/workspace/openusd_internal/patches/namespace.patch b/tools/workspace/openusd_internal/patches/namespace.patch index f18fc538474e..ea9f003b1e7b 100644 --- a/tools/workspace/openusd_internal/patches/namespace.patch +++ b/tools/workspace/openusd_internal/patches/namespace.patch @@ -1,6 +1,6 @@ [openusd_internal] Adjust top-level namespace -This mitigates Drake build settings, so we don't plan to upstream this patch. +Reasoning for not upstreaming this patch: Drake-specific vendoring. --- pxr/pxr.h.in +++ pxr/pxr.h.in diff --git a/tools/workspace/openusd_internal/patches/no_gnu_ext.patch b/tools/workspace/openusd_internal/patches/no_gnu_ext.patch index 52f318b8464f..1cd28f17d9c0 100644 --- a/tools/workspace/openusd_internal/patches/no_gnu_ext.patch +++ b/tools/workspace/openusd_internal/patches/no_gnu_ext.patch @@ -1,7 +1,8 @@ [openusd_internal] Opt-out of GNU libstdc++ extensions They are deprecated old smelly stuff that spews compiler warnings. -This opt-out is a Drake choice, do we don't plan to upstream this patch. + +Reasoning for not upstreaming this patch: Drake-specific build option. --- pxr/base/arch/defines.h +++ pxr/base/arch/defines.h diff --git a/tools/workspace/openusd_internal/patches/pegtl_workaround.patch b/tools/workspace/openusd_internal/patches/pegtl_workaround.patch index b926ff22dc32..fc9014cd2a86 100644 --- a/tools/workspace/openusd_internal/patches/pegtl_workaround.patch +++ b/tools/workspace/openusd_internal/patches/pegtl_workaround.patch @@ -1,8 +1,9 @@ [openusd_internal] Fix symbol leak in pegtl linking workaround The patch effectively hides the (mostly useless) symbol from downstream -consumers of Drake. Since it fixes a Drake-only issue, it should not be -upstreamed. +consumers of Drake. + +Reasoning for not upstreaming this patch: Drake-specific vendoring. --- pxr/base/pegtl/build-workaround.cpp +++ pxr/base/pegtl/build-workaround.cpp diff --git a/tools/workspace/openusd_internal/patches/00_work_thread_limits_namespace.patch b/tools/workspace/openusd_internal/patches/upstream/00_work_thread_limits_namespace.patch similarity index 100% rename from tools/workspace/openusd_internal/patches/00_work_thread_limits_namespace.patch rename to tools/workspace/openusd_internal/patches/upstream/00_work_thread_limits_namespace.patch diff --git a/tools/workspace/openusd_internal/patches/cmake_gf.patch b/tools/workspace/openusd_internal/patches/upstream/cmake_gf.patch similarity index 100% rename from tools/workspace/openusd_internal/patches/cmake_gf.patch rename to tools/workspace/openusd_internal/patches/upstream/cmake_gf.patch diff --git a/tools/workspace/openusd_internal/patches/cmake_rapidjson.patch b/tools/workspace/openusd_internal/patches/upstream/cmake_rapidjson.patch similarity index 100% rename from tools/workspace/openusd_internal/patches/cmake_rapidjson.patch rename to tools/workspace/openusd_internal/patches/upstream/cmake_rapidjson.patch diff --git a/tools/workspace/openusd_internal/patches/cmake_usd_usd_shared.patch b/tools/workspace/openusd_internal/patches/upstream/cmake_usd_usd_shared.patch similarity index 100% rename from tools/workspace/openusd_internal/patches/cmake_usd_usd_shared.patch rename to tools/workspace/openusd_internal/patches/upstream/cmake_usd_usd_shared.patch diff --git a/tools/workspace/openusd_internal/patches/nanocolor_namespace.patch b/tools/workspace/openusd_internal/patches/upstream/nanocolor_namespace.patch similarity index 100% rename from tools/workspace/openusd_internal/patches/nanocolor_namespace.patch rename to tools/workspace/openusd_internal/patches/upstream/nanocolor_namespace.patch diff --git a/tools/workspace/openusd_internal/patches/pegtl_namespace.patch b/tools/workspace/openusd_internal/patches/upstream/pegtl_namespace.patch similarity index 100% rename from tools/workspace/openusd_internal/patches/pegtl_namespace.patch rename to tools/workspace/openusd_internal/patches/upstream/pegtl_namespace.patch diff --git a/tools/workspace/openusd_internal/patches/usd_sdf_flex_hidden.patch b/tools/workspace/openusd_internal/patches/usd_sdf_flex_hidden.patch index bff30ccaecb5..8e565d85b53f 100644 --- a/tools/workspace/openusd_internal/patches/usd_sdf_flex_hidden.patch +++ b/tools/workspace/openusd_internal/patches/usd_sdf_flex_hidden.patch @@ -1,5 +1,7 @@ [openusd_internal] Hide symbols from GNU flex output +Reasoning for not upstreaming this patch: Drake-specific vendoring. + index 7e7234d21..e923daff2 100644 --- pxr/usd/sdf/textFileFormat.lex.cpp +++ pxr/usd/sdf/textFileFormat.lex.cpp diff --git a/tools/workspace/openusd_internal/patches/weakptrfacade_cxx20.patch b/tools/workspace/openusd_internal/patches/weakptrfacade_cxx20.patch index be12c1c61ad0..18320738f25b 100644 --- a/tools/workspace/openusd_internal/patches/weakptrfacade_cxx20.patch +++ b/tools/workspace/openusd_internal/patches/weakptrfacade_cxx20.patch @@ -21,8 +21,8 @@ delegate to the other one, but in C++20 ends up as a self-call and infinite recursion. We need to nix one of overloads in when compiling in C++20 mode. -We should probably upstream something like this, or at least file an -issue around C++ 20 support generally. +Reasoning for not upstreaming this patch: wholly incomplete; instead +we should file an issue. --- pxr/base/tf/weakPtrFacade.h +++ pxr/base/tf/weakPtrFacade.h diff --git a/tools/workspace/openusd_internal/repository.bzl b/tools/workspace/openusd_internal/repository.bzl index 9fa680293214..3d19ef787e80 100644 --- a/tools/workspace/openusd_internal/repository.bzl +++ b/tools/workspace/openusd_internal/repository.bzl @@ -14,15 +14,15 @@ def openusd_internal_repository( sha256 = "6640bb184bf602c6df14fa4a83af6ac5ae1ab8d1d38cf7bb7decfaa9a7ad5d06", # noqa build_file = ":package.BUILD.bazel", patches = [ - ":patches/00_work_thread_limits_namespace.patch", - ":patches/cmake_gf.patch", - ":patches/cmake_rapidjson.patch", - ":patches/cmake_usd_usd_shared.patch", + ":patches/upstream/00_work_thread_limits_namespace.patch", + ":patches/upstream/cmake_gf.patch", + ":patches/upstream/cmake_rapidjson.patch", + ":patches/upstream/cmake_usd_usd_shared.patch", ":patches/dlopen_forbidden.patch", + ":patches/upstream/nanocolor_namespace.patch", + ":patches/upstream/pegtl_namespace.patch", ":patches/namespace.patch", - ":patches/nanocolor_namespace.patch", ":patches/no_gnu_ext.patch", - ":patches/pegtl_namespace.patch", ":patches/pegtl_workaround.patch", ":patches/usd_sdf_flex_hidden.patch", ":patches/weakptrfacade_cxx20.patch", diff --git a/tools/workspace/picosha2_internal/patches/vendor.patch b/tools/workspace/picosha2_internal/patches/vendor.patch index e691a700b147..24a76bdde3d4 100644 --- a/tools/workspace/picosha2_internal/patches/vendor.patch +++ b/tools/workspace/picosha2_internal/patches/vendor.patch @@ -1,5 +1,7 @@ Adds a hidden drake_vendor namespace for ODR safety +Reasoning for not upstreaming this patch: Drake-specific vendoring. + --- picosha2.h +++ picosha2.h @@ -36,6 +36,7 @@ diff --git a/tools/workspace/qhull_internal/patches/disable_dead_code.patch b/tools/workspace/qhull_internal/patches/disable_dead_code.patch index c0261ca35ca0..10fda2e7379a 100644 --- a/tools/workspace/qhull_internal/patches/disable_dead_code.patch +++ b/tools/workspace/qhull_internal/patches/disable_dead_code.patch @@ -3,6 +3,8 @@ Don't try to compile functions that require source files that we've omitted from the build. +Reasoning for not upstreaming this patch: Drake-specific build option. + The Qhull license requires us to publish the author, date, and reason for changes: Author: Jeremy Nimmer; Date: Jun 2, 2022. diff --git a/tools/workspace/qhull_internal/patches/cxx20.patch b/tools/workspace/qhull_internal/patches/upstream/cxx20.patch similarity index 100% rename from tools/workspace/qhull_internal/patches/cxx20.patch rename to tools/workspace/qhull_internal/patches/upstream/cxx20.patch diff --git a/tools/workspace/qhull_internal/patches/vendor.patch b/tools/workspace/qhull_internal/patches/vendor.patch index 47ed6878b7f1..27cc6f2abbe6 100644 --- a/tools/workspace/qhull_internal/patches/vendor.patch +++ b/tools/workspace/qhull_internal/patches/vendor.patch @@ -5,6 +5,8 @@ an `extern "C"` function. This doesn't work with drake's namespace vendoring. Instead, just make the fields public. +Reasoning for not upstreaming this patch: Drake-specific vendoring. + The Qhull license requires us to publish the author, date, and reason for changes: Author: Jeremy Nimmer; Date: Jun 2, 2022. diff --git a/tools/workspace/qhull_internal/repository.bzl b/tools/workspace/qhull_internal/repository.bzl index 1a30fe6a2db1..4f846c3714be 100644 --- a/tools/workspace/qhull_internal/repository.bzl +++ b/tools/workspace/qhull_internal/repository.bzl @@ -13,7 +13,7 @@ def qhull_internal_repository( # The Qhull license requires us to publish the author, date, and # reason for changes. Ensure that any new patch files added here # contain that information in their opening commentary. - ":patches/cxx20.patch", + ":patches/upstream/cxx20.patch", ":patches/disable_dead_code.patch", ":patches/vendor.patch", ], diff --git a/tools/workspace/ros_xacro_internal/patches/disable-import-warning.patch b/tools/workspace/ros_xacro_internal/patches/disable-import-warning.patch index 283accfad767..bab811611071 100644 --- a/tools/workspace/ros_xacro_internal/patches/disable-import-warning.patch +++ b/tools/workspace/ros_xacro_internal/patches/disable-import-warning.patch @@ -1,5 +1,7 @@ Disable an 'import rosgraph' console warning. +Reasoning for not upstreaming this patch: Drake-specific build option. + --- xacro/cli.py +++ xacro/cli.py @@ -97,7 +97,7 @@ diff --git a/tools/workspace/rules_python/patches/internal_config_repo.patch b/tools/workspace/rules_python/patches/internal_config_repo.patch index 9933ada1857e..89a894f32c1c 100644 --- a/tools/workspace/rules_python/patches/internal_config_repo.patch +++ b/tools/workspace/rules_python/patches/internal_config_repo.patch @@ -2,6 +2,8 @@ Our linter needs to read this file in order to compare it to our vendored copy. +Reasoning for not upstreaming this patch: Drake-specific vendoring. + --- python/private/BUILD.bazel +++ python/private/BUILD.bazel @@ -80,4 +80,5 @@ diff --git a/tools/workspace/rules_rust/patches/import_cycle.patch b/tools/workspace/rules_rust/patches/import_cycle.patch index 40b375c79d58..7a2e6df76761 100644 --- a/tools/workspace/rules_rust/patches/import_cycle.patch +++ b/tools/workspace/rules_rust/patches/import_cycle.patch @@ -3,6 +3,8 @@ https://github.com/bazelbuild/rules_rust/issues/2383 claims that this is already fixed, but clearly it is not. +Reasoning for not upstreaming this patch: Drake-specific build option. + --- util/import/BUILD.bazel +++ util/import/BUILD.bazel @@ -20,10 +20,7 @@ diff --git a/tools/workspace/scs_internal/patches/include_paths.patch b/tools/workspace/scs_internal/patches/upstream/include_paths.patch similarity index 100% rename from tools/workspace/scs_internal/patches/include_paths.patch rename to tools/workspace/scs_internal/patches/upstream/include_paths.patch diff --git a/tools/workspace/scs_internal/repository.bzl b/tools/workspace/scs_internal/repository.bzl index 29acbba23bd1..690b084c24fa 100644 --- a/tools/workspace/scs_internal/repository.bzl +++ b/tools/workspace/scs_internal/repository.bzl @@ -13,7 +13,7 @@ def scs_internal_repository( sha256 = "bc8211cfd213f3117676ceb7842f4ed8a3bc7ed9625c4238cc7d83f666e22cc9", # noqa build_file = ":package.BUILD.bazel", patches = [ - ":patches/include_paths.patch", + ":patches/upstream/include_paths.patch", ], mirrors = mirrors, ) diff --git a/tools/workspace/sdformat_internal/patches/console.patch b/tools/workspace/sdformat_internal/patches/console.patch index 440b37167f78..92a0edbeec60 100644 --- a/tools/workspace/sdformat_internal/patches/console.patch +++ b/tools/workspace/sdformat_internal/patches/console.patch @@ -7,6 +7,7 @@ Remove all configuration options for sdf::Console logging. All of them make thread-unsafe uses of globals, and Drake doesn't call them in any case. Add "color" to sdfdbg messages to help communicate the log level. +Reasoning for not upstreaming this patch: Drake-specific build option. diff --git include/sdf/Console.hh include/sdf/Console.hh index 04856e90..0f379ab2 100644 diff --git a/tools/workspace/sdformat_internal/patches/deprecation_unit_testing.patch b/tools/workspace/sdformat_internal/patches/deprecation_unit_testing.patch index c26bc0a9f803..585ca317b23e 100644 --- a/tools/workspace/sdformat_internal/patches/deprecation_unit_testing.patch +++ b/tools/workspace/sdformat_internal/patches/deprecation_unit_testing.patch @@ -5,6 +5,8 @@ rely on any _actually_ deprecated elements, because they will disappear in a future upstream release. Therefore, we inject a Drake-specific element definition that will always be available. +Reasoning for not upstreaming this patch: Drake-specific test tool. + --- src/parser.cc.orig +++ src/parser.cc @@ -379,7 +379,12 @@ diff --git a/tools/workspace/sdformat_internal/patches/environment.patch b/tools/workspace/sdformat_internal/patches/environment.patch index 2bd1b7d7cf3b..cd92a0e2a362 100644 --- a/tools/workspace/sdformat_internal/patches/environment.patch +++ b/tools/workspace/sdformat_internal/patches/environment.patch @@ -4,6 +4,8 @@ We choose to opt-out the environment-variable-based include path tweaks defined by the SDFormat specification. Our design intent is that include files are always package:// URIs, never relative filenames. +Reasoning for not upstreaming this patch: Drake-specific build option. + --- src/SDF.cc +++ src/SDF.cc @@ -33,8 +33,6 @@ diff --git a/tools/workspace/sdformat_internal/patches/no_global_config.patch b/tools/workspace/sdformat_internal/patches/no_global_config.patch index daa23415f19d..f2f25bc1ebf6 100644 --- a/tools/workspace/sdformat_internal/patches/no_global_config.patch +++ b/tools/workspace/sdformat_internal/patches/no_global_config.patch @@ -3,6 +3,8 @@ Change the global singleton into a bomb. Use the default config when parsing the built-in root.sdf, and in the gz_sdf command-line tool. +Reasoning for not upstreaming this patch: Drake-specific build option. + --- src/ParserConfig.cc +++ src/ParserConfig.cc @@ -65,8 +65,7 @@ diff --git a/tools/workspace/sdformat_internal/patches/no_share_path.path b/tools/workspace/sdformat_internal/patches/no_share_path.patch similarity index 88% rename from tools/workspace/sdformat_internal/patches/no_share_path.path rename to tools/workspace/sdformat_internal/patches/no_share_path.patch index 23e0c10cb84d..d32c6ffde092 100644 --- a/tools/workspace/sdformat_internal/patches/no_share_path.path +++ b/tools/workspace/sdformat_internal/patches/no_share_path.patch @@ -1,6 +1,6 @@ Disable the "optional binary relocatability" path hunting -This is a Drake-specific choice, not to be upstreamed. +Reasoning for not upstreaming this patch: Drake-specific build option. --- src/SDF.cc +++ src/SDF.cc diff --git a/tools/workspace/sdformat_internal/patches/no_urdf.patch b/tools/workspace/sdformat_internal/patches/no_urdf.patch index 28f17dad02a4..040d8ae1d9f4 100644 --- a/tools/workspace/sdformat_internal/patches/no_urdf.patch +++ b/tools/workspace/sdformat_internal/patches/no_urdf.patch @@ -1,6 +1,8 @@ Disable transmogrification of URDF files into SDFormat files. Drake has its own URDF parser that we should always use. +Reasoning for not upstreaming this patch: Drake-specific build option. + diff --git a/src/parser.cc b/src/parser.cc index 444d60a2..432fe42b 100644 --- src/parser.cc diff --git a/tools/workspace/sdformat_internal/repository.bzl b/tools/workspace/sdformat_internal/repository.bzl index c892396315c7..809a87d8778e 100644 --- a/tools/workspace/sdformat_internal/repository.bzl +++ b/tools/workspace/sdformat_internal/repository.bzl @@ -17,7 +17,7 @@ def sdformat_internal_repository( ":patches/deprecation_unit_testing.patch", ":patches/environment.patch", ":patches/no_global_config.patch", - ":patches/no_share_path.path", + ":patches/no_share_path.patch", ":patches/no_urdf.patch", ], mirrors = mirrors, diff --git a/tools/workspace/snopt/patches/snopt-openmp.patch b/tools/workspace/snopt/patches/snopt-openmp.patch index b2b46a92f687..ae29164dcbf7 100644 --- a/tools/workspace/snopt/patches/snopt-openmp.patch +++ b/tools/workspace/snopt/patches/snopt-openmp.patch @@ -1,6 +1,8 @@ We patch the snopt_interface to mark the character workspace as threadprivate. Otherwise, solving distinct problems in multiple threads still has data races. +Reasoning for not upstreaming this patch: upstream is dead. + --- interfaces/src/snopt_wrapper.f90.orig 2019-01-28 17:12:02.415160931 -0500 +++ interfaces/src/snopt_wrapper.f90 2019-01-28 17:10:52.610244839 -0500 @@ -192,6 +192,7 @@ diff --git a/tools/workspace/stable_baselines3_internal/patches/no_torch.patch b/tools/workspace/stable_baselines3_internal/patches/no_torch.patch index 30d11f8cda10..f912ef790ee7 100644 --- a/tools/workspace/stable_baselines3_internal/patches/no_torch.patch +++ b/tools/workspace/stable_baselines3_internal/patches/no_torch.patch @@ -1,3 +1,5 @@ +Reasoning for not upstreaming this patch: Drake-specific build option. + diff --git stable_baselines3/__init__.py stable_baselines3/__init__.py index 0775a8e..633ae10 100644 --- stable_baselines3/__init__.py diff --git a/tools/workspace/stduuid_internal/patches/vendor.patch b/tools/workspace/stduuid_internal/patches/vendor.patch index ff8393e80c0e..819a8730c722 100644 --- a/tools/workspace/stduuid_internal/patches/vendor.patch +++ b/tools/workspace/stduuid_internal/patches/vendor.patch @@ -2,6 +2,8 @@ Add vendoring namespace and disable std::hash This prevents ODR violations in case downstream code also links to stduuid. +Reasoning for not upstreaming this patch: Drake-specific vendoring. + --- include/uuid.h +++ include/uuid.h @@ -49,6 +49,7 @@ diff --git a/tools/workspace/styleguide/patches/test_paths.patch b/tools/workspace/styleguide/patches/test_paths.patch index 6a2c32e09ca5..541b903c3b67 100644 --- a/tools/workspace/styleguide/patches/test_paths.patch +++ b/tools/workspace/styleguide/patches/test_paths.patch @@ -5,6 +5,8 @@ We have a directory named cpplint and file named cpplint/cpplint.py. We want to import the latter, but sometimes we end up with the empty __init__.py from the former. Force the issue by munging Python's path. +Reasoning for not upstreaming this patch: Drake-specific build option. + --- cpplint/cpplint_unittest.py +++ cpplint/cpplint_unittest.py @@ -41,7 +41,8 @@ diff --git a/tools/workspace/styleguide/patches/sre_deprecation.patch b/tools/workspace/styleguide/patches/upstream/sre_deprecation.patch similarity index 100% rename from tools/workspace/styleguide/patches/sre_deprecation.patch rename to tools/workspace/styleguide/patches/upstream/sre_deprecation.patch diff --git a/tools/workspace/styleguide/repository.bzl b/tools/workspace/styleguide/repository.bzl index 33b0c54bee81..a1b277722670 100644 --- a/tools/workspace/styleguide/repository.bzl +++ b/tools/workspace/styleguide/repository.bzl @@ -10,7 +10,7 @@ def styleguide_repository( sha256 = "d5cf0a3567392e5c3f0a30bbda852a30d945eced6858b3d6749226d02d5ef7eb", # noqa build_file = ":package.BUILD.bazel", patches = [ - ":patches/sre_deprecation.patch", + ":patches/upstream/sre_deprecation.patch", ":patches/test_paths.patch", ], mirrors = mirrors, diff --git a/tools/workspace/tinygltf_internal/patches/json.patch b/tools/workspace/tinygltf_internal/patches/json.patch index b09d420d28b0..ade34c16ad38 100644 --- a/tools/workspace/tinygltf_internal/patches/json.patch +++ b/tools/workspace/tinygltf_internal/patches/json.patch @@ -1,5 +1,7 @@ Redirects tinygltf to use Drake's vendored nlohmann json. +Reasoning for not upstreaming this patch: Drake-specific build option. + --- tiny_gltf.h +++ tiny_gltf.h @@ -1705,7 +1705,7 @@ class TinyGLTF { diff --git a/tools/workspace/tinyobjloader_internal/patches/default_texture_color.patch b/tools/workspace/tinyobjloader_internal/patches/default_texture_color.patch index 1ec49e9e3a29..28a20f1b14ac 100644 --- a/tools/workspace/tinyobjloader_internal/patches/default_texture_color.patch +++ b/tools/workspace/tinyobjloader_internal/patches/default_texture_color.patch @@ -3,6 +3,8 @@ If only a diffuse texture is given (map_Kd) tinyobj modulates it to 60% grey. We prefer 100%. +Reasoning for not upstreaming this patch: Drake-specific default option. + --- tiny_obj_loader.h +++ tiny_obj_loader.h @@ -2297,12 +2297,13 @@ void LoadMtl(std::map *material_map, diff --git a/tools/workspace/tinyobjloader_internal/patches/faster_float_parsing.patch b/tools/workspace/tinyobjloader_internal/patches/faster_float_parsing.patch index 57b90243c061..1cb780e2b98c 100644 --- a/tools/workspace/tinyobjloader_internal/patches/faster_float_parsing.patch +++ b/tools/workspace/tinyobjloader_internal/patches/faster_float_parsing.patch @@ -3,6 +3,8 @@ We replace tinyobjloader's implementation of float parsing with a faster call to strtod_l. +Reasoning for not upstreaming this patch: Drake-specific build option. + --- tiny_obj_loader.h +++ tiny_obj_loader.h @@ -63,6 +63,14 @@ diff --git a/tools/workspace/tinyobjloader_internal/patches/in_memory_parsing_support.patch b/tools/workspace/tinyobjloader_internal/patches/upstream/in_memory_parsing_support.patch similarity index 100% rename from tools/workspace/tinyobjloader_internal/patches/in_memory_parsing_support.patch rename to tools/workspace/tinyobjloader_internal/patches/upstream/in_memory_parsing_support.patch diff --git a/tools/workspace/tinyobjloader_internal/patches/silence_materials.patch b/tools/workspace/tinyobjloader_internal/patches/upstream/silence_materials.patch similarity index 100% rename from tools/workspace/tinyobjloader_internal/patches/silence_materials.patch rename to tools/workspace/tinyobjloader_internal/patches/upstream/silence_materials.patch diff --git a/tools/workspace/tinyobjloader_internal/repository.bzl b/tools/workspace/tinyobjloader_internal/repository.bzl index 454f09e8526b..5d86d2145336 100644 --- a/tools/workspace/tinyobjloader_internal/repository.bzl +++ b/tools/workspace/tinyobjloader_internal/repository.bzl @@ -11,9 +11,9 @@ def tinyobjloader_internal_repository( build_file = ":package.BUILD.bazel", mirrors = mirrors, patches = [ + ":patches/upstream/in_memory_parsing_support.patch", + ":patches/upstream/silence_materials.patch", ":patches/faster_float_parsing.patch", ":patches/default_texture_color.patch", - ":patches/in_memory_parsing_support.patch", - ":patches/silence_materials.patch", ], ) diff --git a/tools/workspace/tinyxml2_internal/patches/namespace.patch b/tools/workspace/tinyxml2_internal/patches/namespace.patch index 5f7d10ef6b9b..874da88d17bc 100644 --- a/tools/workspace/tinyxml2_internal/patches/namespace.patch +++ b/tools/workspace/tinyxml2_internal/patches/namespace.patch @@ -7,6 +7,8 @@ Note that the upstream source repository contains windows newlines throughout, so we need to entertain `^M` shrapnel throughout this patch file. +Reasoning for not upstreaming this patch: Drake-specific vendoring. + --- tinyxml2.h.orig 2021-06-06 17:10:24.000000000 -0700 +++ tinyxml2.h 2022-09-03 07:30:36.319764029 -0700 @@ -42,6 +42,8 @@ diff --git a/tools/workspace/voxelized_geometry_tools/patches/vendor.patch b/tools/workspace/voxelized_geometry_tools/patches/vendor.patch index 85242e3f9e69..45681482ef89 100644 --- a/tools/workspace/voxelized_geometry_tools/patches/vendor.patch +++ b/tools/workspace/voxelized_geometry_tools/patches/vendor.patch @@ -2,6 +2,8 @@ This prevents ODR violations in case downstream code also links to VGT. +Reasoning for not upstreaming this patch: Drake-specific vendoring. + --- include/voxelized_geometry_tools/vgt_namespace.hpp +++ include/voxelized_geometry_tools/vgt_namespace.hpp @@ -17,5 +17,5 @@ diff --git a/tools/workspace/vtk_internal/patches/common_core_nobacktrace.patch b/tools/workspace/vtk_internal/patches/common_core_nobacktrace.patch index 8ef453fc161f..aa78822ea800 100644 --- a/tools/workspace/vtk_internal/patches/common_core_nobacktrace.patch +++ b/tools/workspace/vtk_internal/patches/common_core_nobacktrace.patch @@ -3,6 +3,8 @@ Generically printing a stack trace induces a whole lot of complicated support code that Drake neither wants nor needs. +Reasoning for not upstreaming this patch: Drake-specific build option. + --- Common/Core/vtkDeserializer.cxx +++ Common/Core/vtkDeserializer.cxx @@ -186,8 +186,10 @@ vtkDeserializer::ConstructorType vtkDeserializer::GetConstructor( diff --git a/tools/workspace/vtk_internal/patches/common_core_version.patch b/tools/workspace/vtk_internal/patches/common_core_version.patch index 1c24b6210873..8b5afebc9ac9 100644 --- a/tools/workspace/vtk_internal/patches/common_core_version.patch +++ b/tools/workspace/vtk_internal/patches/common_core_version.patch @@ -6,7 +6,7 @@ but that doesn't give us values for VTK_VERSION_FULL (nominally scraped from git) nor VTK_EPOCH_VERSION (some upstream CI voodoo). We need to patch those substitutions using what we do have access to. -This change is Drake-specific, so we do not plan to upstream it. +Reasoning for not upstreaming this patch: Drake-specific build option. --- Common/Core/vtkVersionFull.h.in +++ Common/Core/vtkVersionFull.h.in diff --git a/tools/workspace/vtk_internal/patches/disable_static_destructors.patch b/tools/workspace/vtk_internal/patches/disable_static_destructors.patch index d7c924d7d2d7..3acf0f47eeed 100644 --- a/tools/workspace/vtk_internal/patches/disable_static_destructors.patch +++ b/tools/workspace/vtk_internal/patches/disable_static_destructors.patch @@ -7,6 +7,8 @@ is an anti-requirement in Drake.) This should not be upstreamed to VTK, although CMake configuration option for "disable all static destructors" would be appreciated. +Reasoning for not upstreaming this patch: Drake-specific build option. + --- Common/ExecutionModel/vtkFilteringInformationKeyManager.h +++ Common/ExecutionModel/vtkFilteringInformationKeyManager.h @@ -24,11 +24,13 @@ diff --git a/tools/workspace/vtk_internal/patches/io_image_formats.patch b/tools/workspace/vtk_internal/patches/io_image_formats.patch index a990090ba584..2d6af3a0f71e 100644 --- a/tools/workspace/vtk_internal/patches/io_image_formats.patch +++ b/tools/workspace/vtk_internal/patches/io_image_formats.patch @@ -4,8 +4,7 @@ The list of supported (uncommented) image types seen in this patch should be congruent with the *.cxx files listed in settings.bzl for VTK::IOImage. -This situation is unique to Drake, so we do not plan to upstream this -patch. +Reasoning for not upstreaming this patch: Drake-specific build option. --- IO/Image/vtkImageReader2Factory.cxx +++ IO/Image/vtkImageReader2Factory.cxx diff --git a/tools/workspace/vtk_internal/patches/nerf_pegtl.patch b/tools/workspace/vtk_internal/patches/nerf_pegtl.patch index 2f2811b4d10f..70f27ee204a7 100644 --- a/tools/workspace/vtk_internal/patches/nerf_pegtl.patch +++ b/tools/workspace/vtk_internal/patches/nerf_pegtl.patch @@ -10,7 +10,7 @@ the API but with an "always throws" implementation where we don't exercise the code paths in question, or b) restore all of the code and bring in pegtl as a supported VTK dependency. -This situation is unique to Drake, so we won't to upstream this patch. +Reasoning for not upstreaming this patch: Drake-specific build option. --- Common/DataModel/vtk.module +++ Common/DataModel/vtk.module diff --git a/tools/workspace/vtk_internal/patches/rendering_opengl2_no_factory.patch b/tools/workspace/vtk_internal/patches/rendering_opengl2_no_factory.patch index bc34fc3feea7..1d260cd16ac0 100644 --- a/tools/workspace/vtk_internal/patches/rendering_opengl2_no_factory.patch +++ b/tools/workspace/vtk_internal/patches/rendering_opengl2_no_factory.patch @@ -7,7 +7,7 @@ uses a process-wide environment variable to govern a preference. Both of those disqualify it from use in Drake, so we lobotomize it to prevent it from ever being accidentally used. -This patch should not be upstreamed. +Reasoning for not upstreaming this patch: Drake-specific build option. --- Rendering/OpenGL2/vtkOpenGLRenderWindow.cxx +++ Rendering/OpenGL2/vtkOpenGLRenderWindow.cxx diff --git a/tools/workspace/vtk_internal/patches/rendering_opengl2_nobacktrace.patch b/tools/workspace/vtk_internal/patches/rendering_opengl2_nobacktrace.patch index 126af91df650..b8f7407013b5 100644 --- a/tools/workspace/vtk_internal/patches/rendering_opengl2_nobacktrace.patch +++ b/tools/workspace/vtk_internal/patches/rendering_opengl2_nobacktrace.patch @@ -3,6 +3,8 @@ Generically printing a stack trace induces a whole lot of complicated support code that Drake neither wants nor needs. +Reasoning for not upstreaming this patch: Drake-specific build option. + --- Rendering/OpenGL2/vtkOpenGLState.cxx +++ Rendering/OpenGL2/vtkOpenGLState.cxx @@ -539,6 +539,8 @@ diff --git a/tools/workspace/vtk_internal/patches/fix_illumination_bugs.patch b/tools/workspace/vtk_internal/patches/upstream/fix_illumination_bugs.patch similarity index 100% rename from tools/workspace/vtk_internal/patches/fix_illumination_bugs.patch rename to tools/workspace/vtk_internal/patches/upstream/fix_illumination_bugs.patch diff --git a/tools/workspace/vtk_internal/patches/gltf_importer_from_stream.patch b/tools/workspace/vtk_internal/patches/upstream/gltf_importer_from_stream.patch similarity index 100% rename from tools/workspace/vtk_internal/patches/gltf_importer_from_stream.patch rename to tools/workspace/vtk_internal/patches/upstream/gltf_importer_from_stream.patch diff --git a/tools/workspace/vtk_internal/patches/gltf_selected_load.patch b/tools/workspace/vtk_internal/patches/upstream/gltf_selected_load.patch similarity index 100% rename from tools/workspace/vtk_internal/patches/gltf_selected_load.patch rename to tools/workspace/vtk_internal/patches/upstream/gltf_selected_load.patch diff --git a/tools/workspace/vtk_internal/patches/io_geometry_gltf_default_scene.patch b/tools/workspace/vtk_internal/patches/upstream/io_geometry_gltf_default_scene.patch similarity index 100% rename from tools/workspace/vtk_internal/patches/io_geometry_gltf_default_scene.patch rename to tools/workspace/vtk_internal/patches/upstream/io_geometry_gltf_default_scene.patch diff --git a/tools/workspace/vtk_internal/patches/vtkdoubleconversion_hidden.patch b/tools/workspace/vtk_internal/patches/vtkdoubleconversion_hidden.patch index 5f44eabca813..a2d959390b13 100644 --- a/tools/workspace/vtk_internal/patches/vtkdoubleconversion_hidden.patch +++ b/tools/workspace/vtk_internal/patches/vtkdoubleconversion_hidden.patch @@ -1,6 +1,6 @@ [vtk] Use a custom hidden namespace for vtkdoubleconversion -This situation is unique to Drake, so we won't to upstream this patch. +Reasoning for not upstreaming this patch: Drake-specific vendoring. --- ThirdParty/doubleconversion/vtkdoubleconversion/double-conversion/utils.h +++ ThirdParty/doubleconversion/vtkdoubleconversion/double-conversion/utils.h diff --git a/tools/workspace/vtk_internal/patches/vtkfast_float_hidden.patch b/tools/workspace/vtk_internal/patches/vtkfast_float_hidden.patch index 05b1fbe022a0..90f13b220f1a 100644 --- a/tools/workspace/vtk_internal/patches/vtkfast_float_hidden.patch +++ b/tools/workspace/vtk_internal/patches/vtkfast_float_hidden.patch @@ -1,6 +1,6 @@ [vtk] Use custom namespace for vtkfast_float -This situation is unique to Drake, so we won't to upstream this patch. +Reasoning for not upstreaming this patch: Drake-specific vendoring. --- ThirdParty/fast_float/vtkfast_float/vtkfast_float/vtkfast_float_mangle.h +++ ThirdParty/fast_float/vtkfast_float/vtkfast_float/vtkfast_float_mangle.h diff --git a/tools/workspace/vtk_internal/patches/vtkpugixml_hidden.patch b/tools/workspace/vtk_internal/patches/vtkpugixml_hidden.patch index cf33f865b615..47f6581dd20d 100644 --- a/tools/workspace/vtk_internal/patches/vtkpugixml_hidden.patch +++ b/tools/workspace/vtk_internal/patches/vtkpugixml_hidden.patch @@ -1,6 +1,6 @@ [vtk] Use a custom hidden inline namespace for vtkpugixml -This situation is unique to Drake, so we won't to upstream this patch. +Reasoning for not upstreaming this patch: Drake-specific vendoring. --- ThirdParty/pugixml/vtkpugixml/src/pugixml.hpp +++ ThirdParty/pugixml/vtkpugixml/src/pugixml.hpp diff --git a/tools/workspace/vtk_internal/patches/vtksys_hidden.patch b/tools/workspace/vtk_internal/patches/vtksys_hidden.patch index ff981691f81a..7eb26b8b403c 100644 --- a/tools/workspace/vtk_internal/patches/vtksys_hidden.patch +++ b/tools/workspace/vtk_internal/patches/vtksys_hidden.patch @@ -4,6 +4,8 @@ The vtksys library doesn't obey the VTK_ABI_NAMESPACE macros, so it's an ODR hazard versus other non-Drake builds of VTK. Switch it to use hidden visibility to help mitigate the risk. +Reasoning for not upstreaming this patch: Drake-specific vendoring. + --- Utilities/KWSys/vtksys/Configure.h.in +++ Utilities/KWSys/vtksys/Configure.h.in @@ -39,7 +39,7 @@ diff --git a/tools/workspace/vtk_internal/repository.bzl b/tools/workspace/vtk_internal/repository.bzl index 16f3052f59e3..610e14000ee6 100644 --- a/tools/workspace/vtk_internal/repository.bzl +++ b/tools/workspace/vtk_internal/repository.bzl @@ -176,13 +176,13 @@ def vtk_internal_repository( sha256 = "52fc7fdac0132d362d10f9145de1afb4420a41914261ba8848f1e8dabca68423", # noqa build_file = ":package.BUILD.bazel", patches = [ + ":patches/upstream/fix_illumination_bugs.patch", + ":patches/upstream/gltf_selected_load.patch", + ":patches/upstream/io_geometry_gltf_default_scene.patch", + ":patches/upstream/gltf_importer_from_stream.patch", ":patches/common_core_nobacktrace.patch", ":patches/common_core_version.patch", ":patches/disable_static_destructors.patch", - ":patches/fix_illumination_bugs.patch", - ":patches/gltf_selected_load.patch", - ":patches/io_geometry_gltf_default_scene.patch", - ":patches/gltf_importer_from_stream.patch", ":patches/io_image_formats.patch", ":patches/nerf_pegtl.patch", ":patches/rendering_opengl2_nobacktrace.patch", diff --git a/tools/workspace/yaml_cpp_internal/patches/emit-local-tag.patch b/tools/workspace/yaml_cpp_internal/patches/emit-local-tag.patch index f77b7b42d7c5..da70483a9ee3 100644 --- a/tools/workspace/yaml_cpp_internal/patches/emit-local-tag.patch +++ b/tools/workspace/yaml_cpp_internal/patches/emit-local-tag.patch @@ -4,6 +4,8 @@ Upstream yaml-cpp does not support writing out primary tags, so here we patch our vendored copy of yaml-cpp's emitter to write them, so that Drake's YamlWriteArchive can support std::variant<> emitting. +Reasoning for not upstreaming this patch: Drake-specific default option. + --- src/emitfromevents.cpp +++ src/emitfromevents.cpp @@ -109,8 +109,18 @@ void EmitFromEvents::BeginNode() {