diff --git a/.bazelrc b/.bazelrc index 07de279e..93467247 100644 --- a/.bazelrc +++ b/.bazelrc @@ -6,7 +6,7 @@ build --incompatible_default_to_explicit_init_py # All code will be compiled with C++17 flag. # Users can naturally override copts for cc_* targets. -# NOTE: ROS 2 Humble needs min C++17. +# NOTE: ROS 2 Jazzy needs min C++17. # NOTE: googletest >=v1.13.0 requires min C++14. # This is a mandatory flag. build --cxxopt=-std=c++17 diff --git a/MODULE.bazel b/MODULE.bazel index 4cb2069d..7efcb966 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -32,13 +32,11 @@ bazel_dep(name = "googletest", version = "1.17.0.bcr.2", dev_dependency = True) http_archive = use_repo_rule("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") _PYTHON_VERSIONS = [ - "3.10", - "3.11", "3.12", "3.13", ] -_DEFAULT_PYTHON = "3.10" +_DEFAULT_PYTHON = "3.12" python = use_extension("@rules_python//python/extensions:python.bzl", "python") @@ -71,7 +69,7 @@ use_repo(pip, "rules_ros2_pip_deps") dev_pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip", dev_dependency = True) dev_pip.parse( hub_name = "rules_ros2_resolver_deps", - python_version = "3.10", + python_version = "3.12", requirements_lock = "//repositories/private:resolver_requirements_lock.txt", ) use_repo(dev_pip, "rules_ros2_resolver_deps") diff --git a/README.md b/README.md index 715eb30f..f4e81aea 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ Besides Bazel, you will need a C++ compiler and a Python 3 interpreter. And no, you don't have to install any ROS 2 packages via `apt`. -The code is developed and tested on Ubuntu 22.04 with Python 3.10. +The code is developed and tested on Ubuntu 22.04 with Python 3.12. ## What works? @@ -39,7 +39,7 @@ Available features: Please take a look at the [examples](examples) folder to get started. -ROS 2 packages are by default locked to versions from [release-humble-20250721](https://github.com/ros2/ros2/releases/tag/release-humble-20250721). +ROS 2 packages are by default locked to versions from [release-jazzy-20250820](https://github.com/ros2/ros2/releases/tag/release-jazzy-20250820). ## Notes diff --git a/WORKSPACE b/WORKSPACE index d3295bce..6a4b7c38 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -15,15 +15,15 @@ load("@rules_python//python:repositories.bzl", "py_repositories", "python_regist py_repositories() python_register_toolchains( - name = "rules_ros2_python", - python_version = "3.10", + name = "rules_ros2_python_3_12", + python_version = "3.12", ) load("@rules_python//python:pip.bzl", "pip_parse") pip_parse( name = "rules_ros2_pip_deps", - python_interpreter_target = "@rules_ros2_python_host//:python", + python_interpreter_target = "@rules_ros2_python_3_12_host//:python", requirements_lock = "@com_github_mvukov_rules_ros2//:requirements_lock.txt", ) @@ -56,7 +56,7 @@ rust_setup_stage_4() pip_parse( name = "rules_ros2_resolver_deps", - python_interpreter_target = "@rules_ros2_python_host//:python", + python_interpreter_target = "@rules_ros2_python_3_12_host//:python", requirements_lock = "//repositories/private:resolver_requirements_lock.txt", ) diff --git a/examples/MODULE.bazel b/examples/MODULE.bazel index 7b1e9430..accea2fe 100644 --- a/examples/MODULE.bazel +++ b/examples/MODULE.bazel @@ -17,7 +17,7 @@ python.toolchain( # Otherwise you will get errors at analysis time like: # configurable attribute "actual" in @@rules_python~~pip~rules_ros2_pip_deps//numpy:_no_matching_repository doesn't match this configuration: No matching wheel for current configuration's Python version. # The current build configuration's Python version doesn't match any of the Python wheels available for this distribution. - python_version = "3.10", + python_version = "3.12", ) register_toolchains( diff --git a/examples/README.md b/examples/README.md index e3a6c2aa..3e000e48 100644 --- a/examples/README.md +++ b/examples/README.md @@ -18,9 +18,9 @@ Please take a look at the `WORKSPACE` file in this folder to get an idea how to This approach allows one to customize a Python interpreter and Python deps in `requirements.txt` file. In particular, the user is responsible to define the interpreter -and requirements lock file in their repo. The official interpreter version for ROS 2 Humble is 3.10 -and in `WORKSPACE` file a 3.10 interpreter is setup up. Please pay attention that -resolved dependencies in `requirements_lock.txt` file are resolved for Python 3.10. +and requirements lock file in their repo. The official interpreter version for ROS 2 Jazzy is 3.12 +and in `WORKSPACE` file a 3.12 interpreter is setup up. Please pay attention that +resolved dependencies in `requirements_lock.txt` file are resolved for Python 3.12. If you want to use this approach, make sure you have the following lines in your `.bazelrc` file: @@ -32,7 +32,7 @@ common --noenable_bzlmod --enable_workspace This is the new external dependency subsystem. Please take a look at the `MODULE.bazel` file in this folder to get an idea how to set up yourself. -With this approach, `rules_ros2` defines a Python 3.10 interpreter and defines the hub with resolved Python deps. If you want a different intepreter and/or you want to extend the Python requirements files with extra deps you might want to use in your monorepo, you'll need to patch `requirements_lock.txt` file and this repo. +With this approach, `rules_ros2` defines a Python 3.12 interpreter and defines the hub with resolved Python deps. If you want a different intepreter and/or you want to extend the Python requirements files with extra deps you might want to use in your monorepo, you'll need to patch `requirements_lock.txt` file and this repo. This is the default way for handling external deps since Bazel 7. diff --git a/examples/WORKSPACE b/examples/WORKSPACE index 55793c09..c074e493 100644 --- a/examples/WORKSPACE +++ b/examples/WORKSPACE @@ -31,19 +31,19 @@ load("@rules_python//python:repositories.bzl", "py_repositories", "python_regist py_repositories() python_register_toolchains( - name = "rules_ros2_python", + name = "rules_ros2_python_3_12", # You must pin the Python version to the one used for rules_ros2_pip_deps_numpy_headers and current_py_cc_headers in rules_ros2. # Otherwise you will get errors at runtime (not build time!) like: # ModuleNotFoundError: No module named 'numpy.core._multiarray_umath' # Importing the numpy C-extensions failed. - python_version = "3.10", + python_version = "3.12", ) load("@rules_python//python:pip.bzl", "pip_parse") pip_parse( name = "rules_ros2_pip_deps", - python_interpreter_target = "@rules_ros2_python_host//:python", + python_interpreter_target = "@rules_ros2_python_3_12_host//:python", requirements_lock = "@com_github_mvukov_rules_ros2//:requirements_lock.txt", ) diff --git a/examples/chatter/BUILD.bazel b/examples/chatter/BUILD.bazel index 6e220507..fc9862f1 100644 --- a/examples/chatter/BUILD.bazel +++ b/examples/chatter/BUILD.bazel @@ -56,6 +56,7 @@ ros2_launch( ":listener", ":talker", ], + visibility = ["//visibility:public"], ) ros2_test( diff --git a/examples/foxglove_bridge/launch.py b/examples/foxglove_bridge/launch.py index eaac79ff..6033b700 100644 --- a/examples/foxglove_bridge/launch.py +++ b/examples/foxglove_bridge/launch.py @@ -26,8 +26,7 @@ def generate_launch_description(): return launch.LaunchDescription([ # ROS_DISTRO is necessary for correct operation of the Foxglove Studio. - launch.actions.SetEnvironmentVariable(name='ROS_DISTRO', - value='humble'), + launch.actions.SetEnvironmentVariable(name='ROS_DISTRO', value='jazzy'), launch_ros.actions.Node( executable=data_paths.ROBOT_STATE_PUBLISHER_NODE_PATH, output='screen', diff --git a/repositories/common_interfaces.BUILD.bazel b/repositories/common_interfaces.BUILD.bazel index 1a92a5c6..997cc699 100644 --- a/repositories/common_interfaces.BUILD.bazel +++ b/repositories/common_interfaces.BUILD.bazel @@ -43,6 +43,7 @@ ros2_interface_library( name = "std_srvs", srcs = glob(["std_srvs/srv/*.srv"]), visibility = ["//visibility:public"], + deps = ["@ros2_rcl_interfaces//:service_msgs"], ) c_ros2_interface_library( @@ -98,6 +99,7 @@ ros2_interface_library( deps = [ ":geometry_msgs", ":std_msgs", + "@ros2_rcl_interfaces//:service_msgs", ], ) @@ -123,6 +125,7 @@ ros2_interface_library( deps = [ ":geometry_msgs", ":std_msgs", + "@ros2_rcl_interfaces//:service_msgs", ], ) @@ -273,6 +276,7 @@ ros2_interface_library( visibility = ["//visibility:public"], deps = [ ":std_msgs", + "@ros2_rcl_interfaces//:service_msgs", ], ) diff --git a/repositories/geometry2.BUILD.bazel b/repositories/geometry2.BUILD.bazel index 08de0485..0ee8e563 100644 --- a/repositories/geometry2.BUILD.bazel +++ b/repositories/geometry2.BUILD.bazel @@ -74,18 +74,31 @@ ros2_cpp_library( ], hdrs = [ "tf2_ros/include/tf2_ros/async_buffer_interface.h", + "tf2_ros/include/tf2_ros/async_buffer_interface.hpp", "tf2_ros/include/tf2_ros/buffer.h", + "tf2_ros/include/tf2_ros/buffer.hpp", "tf2_ros/include/tf2_ros/buffer_client.h", + "tf2_ros/include/tf2_ros/buffer_client.hpp", "tf2_ros/include/tf2_ros/buffer_interface.h", + "tf2_ros/include/tf2_ros/buffer_interface.hpp", "tf2_ros/include/tf2_ros/buffer_server.h", + "tf2_ros/include/tf2_ros/buffer_server.hpp", "tf2_ros/include/tf2_ros/create_timer_interface.h", + "tf2_ros/include/tf2_ros/create_timer_interface.hpp", "tf2_ros/include/tf2_ros/create_timer_ros.h", + "tf2_ros/include/tf2_ros/create_timer_ros.hpp", "tf2_ros/include/tf2_ros/message_filter.h", + "tf2_ros/include/tf2_ros/message_filter.hpp", "tf2_ros/include/tf2_ros/qos.hpp", "tf2_ros/include/tf2_ros/static_transform_broadcaster.h", + "tf2_ros/include/tf2_ros/static_transform_broadcaster.hpp", + "tf2_ros/include/tf2_ros/static_transform_broadcaster_visibility_control.hpp", "tf2_ros/include/tf2_ros/transform_broadcaster.h", + "tf2_ros/include/tf2_ros/transform_broadcaster.hpp", "tf2_ros/include/tf2_ros/transform_listener.h", + "tf2_ros/include/tf2_ros/transform_listener.hpp", "tf2_ros/include/tf2_ros/visibility_control.h", + "tf2_ros/include/tf2_ros/visibility_control.hpp", ], includes = ["tf2_ros/include"], visibility = ["//visibility:public"], diff --git a/repositories/iceoryx.BUILD.bazel b/repositories/iceoryx.BUILD.bazel index 34d9497c..02680e64 100644 --- a/repositories/iceoryx.BUILD.bazel +++ b/repositories/iceoryx.BUILD.bazel @@ -58,7 +58,7 @@ cmake( ), out_binaries = ["iox-roudi"], out_data_dirs = ["lib/cmake"], - out_include_dir = "include/iceoryx/v2.0.5/", + out_include_dir = "include/iceoryx/v2.0.6/", out_static_libs = [ # The order of the libs is important for linking to work out. "libiceoryx_binding_c.a", diff --git a/repositories/image_common.BUILD.bazel b/repositories/image_common.BUILD.bazel index 58f6507f..91c78455 100644 --- a/repositories/image_common.BUILD.bazel +++ b/repositories/image_common.BUILD.bazel @@ -20,7 +20,6 @@ ros2_cpp_library( "camera_calibration_parsers/src/parse_yml.cpp", ]), hdrs = glob([ - "camera_calibration_parsers/include/**/*.h", "camera_calibration_parsers/include/**/*.hpp", ]), includes = ["camera_calibration_parsers/include"], @@ -41,20 +40,14 @@ ros2_cpp_library( "image_transport/src/single_subscriber_publisher.cpp", ], hdrs = [ - "image_transport/include/image_transport/camera_common.h", "image_transport/include/image_transport/camera_common.hpp", - "image_transport/include/image_transport/exception.h", "image_transport/include/image_transport/exception.hpp", - "image_transport/include/image_transport/loader_fwds.h", "image_transport/include/image_transport/loader_fwds.hpp", - "image_transport/include/image_transport/publisher.h", "image_transport/include/image_transport/publisher.hpp", - "image_transport/include/image_transport/publisher_plugin.h", "image_transport/include/image_transport/publisher_plugin.hpp", "image_transport/include/image_transport/simple_publisher_plugin.hpp", "image_transport/include/image_transport/simple_subscriber_plugin.hpp", "image_transport/include/image_transport/single_subscriber_publisher.hpp", - "image_transport/include/image_transport/subscriber_plugin.h", "image_transport/include/image_transport/subscriber_plugin.hpp", "image_transport/include/image_transport/visibility_control.hpp", ], @@ -76,17 +69,11 @@ ros2_cpp_library( "image_transport/src/subscriber.cpp", ], hdrs = [ - "image_transport/include/image_transport/camera_publisher.h", "image_transport/include/image_transport/camera_publisher.hpp", - "image_transport/include/image_transport/camera_subscriber.h", "image_transport/include/image_transport/camera_subscriber.hpp", - "image_transport/include/image_transport/image_transport.h", "image_transport/include/image_transport/image_transport.hpp", - "image_transport/include/image_transport/subscriber.h", "image_transport/include/image_transport/subscriber.hpp", - "image_transport/include/image_transport/subscriber_filter.h", "image_transport/include/image_transport/subscriber_filter.hpp", - "image_transport/include/image_transport/transport_hints.h", "image_transport/include/image_transport/transport_hints.hpp", ], data = [ @@ -105,9 +92,7 @@ ros2_cpp_library( ros2_plugin( name = "image_transport_plugins", srcs = [ - "image_transport/include/image_transport/raw_publisher.h", "image_transport/include/image_transport/raw_publisher.hpp", - "image_transport/include/image_transport/raw_subscriber.h", "image_transport/include/image_transport/raw_subscriber.hpp", "image_transport/src/manifest.cpp", ], @@ -147,6 +132,7 @@ ros2_cpp_library( "@ros2_ament_index//:ament_index_cpp", "@ros2_common_interfaces//:cpp_sensor_msgs", "@ros2_rclcpp//:rclcpp", + "@ros2_rclcpp//:rclcpp_lifecycle", "@ros2_rcpputils//:rcpputils", ], ) diff --git a/repositories/patches/fix-null-allocator-and-racy-condition.-1188.patch b/repositories/patches/fix-null-allocator-and-racy-condition.-1188.patch deleted file mode 100644 index 3a660208..00000000 --- a/repositories/patches/fix-null-allocator-and-racy-condition.-1188.patch +++ /dev/null @@ -1,403 +0,0 @@ -From cd3aa53ba9f8fdeb57d768b828a313e690a37df7 Mon Sep 17 00:00:00 2001 -From: Tomoya Fujita -Date: Sat, 21 Sep 2024 10:42:04 -0700 -Subject: [PATCH] Fix NULL allocator and racy condition. (#1188) - -Signed-off-by: Tomoya Fujita ---- - rcl/src/rcl/arguments.c | 7 +++---- - rcl/src/rcl/client.c | 5 +++-- - rcl/src/rcl/context.c | 2 +- - rcl/src/rcl/event.c | 3 ++- - rcl/src/rcl/guard_condition.c | 8 +++----- - rcl/src/rcl/lexer_lookahead.c | 5 ++--- - rcl/src/rcl/node.c | 6 ++---- - rcl/src/rcl/publisher.c | 5 +++-- - rcl/src/rcl/remap.c | 5 ++--- - rcl/src/rcl/service.c | 5 +++-- - rcl/src/rcl/subscription.c | 5 +++-- - rcl/src/rcl/timer.c | 3 ++- - rcl/src/rcl/wait.c | 17 ++--------------- - rcl_action/src/rcl_action/action_client.c | 5 +++-- - rcl_action/src/rcl_action/action_server.c | 5 +++-- - rcl_action/src/rcl_action/goal_handle.c | 3 ++- - rcl_action/src/rcl_action/types.c | 12 ++++++++---- - rcl_lifecycle/src/transition_map.c | 6 +----- - 18 files changed, 48 insertions(+), 59 deletions(-) - -diff --git rcl/src/rcl/arguments.c rcl/src/rcl/arguments.c -index 8c3e7c0..00f1a5b 100644 ---- rcl/src/rcl/arguments.c -+++ rcl/src/rcl/arguments.c -@@ -751,10 +751,9 @@ rcl_arguments_get_unparsed_ros( - rcl_arguments_t - rcl_get_zero_initialized_arguments(void) - { -- static rcl_arguments_t default_arguments = { -- .impl = NULL -- }; -- return default_arguments; -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static rcl_arguments_t zero_arguments; -+ return zero_arguments; - } - - rcl_ret_t -diff --git rcl/src/rcl/client.c rcl/src/rcl/client.c -index 432948d..0fafccc 100644 ---- rcl/src/rcl/client.c -+++ rcl/src/rcl/client.c -@@ -45,7 +45,8 @@ struct rcl_client_impl_s - rcl_client_t - rcl_get_zero_initialized_client() - { -- static rcl_client_t null_client = {0}; -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static rcl_client_t null_client; - return null_client; - } - -@@ -199,7 +200,7 @@ rcl_client_options_t - rcl_client_get_default_options() - { - // !!! MAKE SURE THAT CHANGES TO THESE DEFAULTS ARE REFLECTED IN THE HEADER DOC STRING -- static rcl_client_options_t default_options; -+ rcl_client_options_t default_options; - // Must set the allocator and qos after because they are not a compile time constant. - default_options.qos = rmw_qos_profile_services_default; - default_options.allocator = rcl_get_default_allocator(); -diff --git rcl/src/rcl/context.c rcl/src/rcl/context.c -index 5414cc5..7f7d371 100644 ---- rcl/src/rcl/context.c -+++ rcl/src/rcl/context.c -@@ -28,7 +28,7 @@ extern "C" - rcl_context_t - rcl_get_zero_initialized_context(void) - { -- static rcl_context_t context = { -+ rcl_context_t context = { - .impl = NULL, - .instance_id_storage = {0}, - }; -diff --git rcl/src/rcl/event.c rcl/src/rcl/event.c -index 6196442..2f6d917 100644 ---- rcl/src/rcl/event.c -+++ rcl/src/rcl/event.c -@@ -38,7 +38,8 @@ extern "C" - rcl_event_t - rcl_get_zero_initialized_event() - { -- static rcl_event_t null_event = {0}; -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static rcl_event_t null_event; - return null_event; - } - -diff --git rcl/src/rcl/guard_condition.c rcl/src/rcl/guard_condition.c -index 6297434..fb55f60 100644 ---- rcl/src/rcl/guard_condition.c -+++ rcl/src/rcl/guard_condition.c -@@ -36,10 +36,8 @@ struct rcl_guard_condition_impl_s - rcl_guard_condition_t - rcl_get_zero_initialized_guard_condition() - { -- static rcl_guard_condition_t null_guard_condition = { -- .context = 0, -- .impl = 0 -- }; -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static rcl_guard_condition_t null_guard_condition; - return null_guard_condition; - } - -@@ -144,7 +142,7 @@ rcl_guard_condition_options_t - rcl_guard_condition_get_default_options() - { - // !!! MAKE SURE THAT CHANGES TO THESE DEFAULTS ARE REFLECTED IN THE HEADER DOC STRING -- static rcl_guard_condition_options_t default_options; -+ rcl_guard_condition_options_t default_options; - default_options.allocator = rcl_get_default_allocator(); - return default_options; - } -diff --git rcl/src/rcl/lexer_lookahead.c rcl/src/rcl/lexer_lookahead.c -index c72d847..9262a18 100644 ---- rcl/src/rcl/lexer_lookahead.c -+++ rcl/src/rcl/lexer_lookahead.c -@@ -36,9 +36,8 @@ struct rcl_lexer_lookahead2_impl_s - rcl_lexer_lookahead2_t - rcl_get_zero_initialized_lexer_lookahead2() - { -- static rcl_lexer_lookahead2_t zero_initialized = { -- .impl = NULL, -- }; -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static rcl_lexer_lookahead2_t zero_initialized; - return zero_initialized; - } - -diff --git rcl/src/rcl/node.c rcl/src/rcl/node.c -index 4afc40f..2b30f27 100644 ---- rcl/src/rcl/node.c -+++ rcl/src/rcl/node.c -@@ -106,10 +106,8 @@ const char * rcl_create_node_logger_name( - rcl_node_t - rcl_get_zero_initialized_node() - { -- static rcl_node_t null_node = { -- .context = 0, -- .impl = 0 -- }; -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static rcl_node_t null_node; - return null_node; - } - -diff --git rcl/src/rcl/publisher.c rcl/src/rcl/publisher.c -index 47582da..ce17ccf 100644 ---- rcl/src/rcl/publisher.c -+++ rcl/src/rcl/publisher.c -@@ -38,7 +38,8 @@ extern "C" - rcl_publisher_t - rcl_get_zero_initialized_publisher() - { -- static rcl_publisher_t null_publisher = {0}; -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static rcl_publisher_t null_publisher; - return null_publisher; - } - -@@ -198,7 +199,7 @@ rcl_publisher_options_t - rcl_publisher_get_default_options() - { - // !!! MAKE SURE THAT CHANGES TO THESE DEFAULTS ARE REFLECTED IN THE HEADER DOC STRING -- static rcl_publisher_options_t default_options; -+ rcl_publisher_options_t default_options; - // Must set the allocator and qos after because they are not a compile time constant. - default_options.qos = rmw_qos_profile_default; - default_options.allocator = rcl_get_default_allocator(); -diff --git rcl/src/rcl/remap.c rcl/src/rcl/remap.c -index d767ddd..ccb9666 100644 ---- rcl/src/rcl/remap.c -+++ rcl/src/rcl/remap.c -@@ -31,9 +31,8 @@ extern "C" - rcl_remap_t - rcl_get_zero_initialized_remap(void) - { -- static rcl_remap_t default_rule = { -- .impl = NULL -- }; -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static rcl_remap_t default_rule; - return default_rule; - } - -diff --git rcl/src/rcl/service.c rcl/src/rcl/service.c -index ea4c792..5b5a0d2 100644 ---- rcl/src/rcl/service.c -+++ rcl/src/rcl/service.c -@@ -41,7 +41,8 @@ struct rcl_service_impl_s - rcl_service_t - rcl_get_zero_initialized_service() - { -- static rcl_service_t null_service = {0}; -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static rcl_service_t null_service; - return null_service; - } - -@@ -209,7 +210,7 @@ rcl_service_options_t - rcl_service_get_default_options() - { - // !!! MAKE SURE THAT CHANGES TO THESE DEFAULTS ARE REFLECTED IN THE HEADER DOC STRING -- static rcl_service_options_t default_options; -+ rcl_service_options_t default_options; - // Must set the allocator and qos after because they are not a compile time constant. - default_options.qos = rmw_qos_profile_services_default; - default_options.allocator = rcl_get_default_allocator(); -diff --git rcl/src/rcl/subscription.c rcl/src/rcl/subscription.c -index bd25659..c77ec73 100644 ---- rcl/src/rcl/subscription.c -+++ rcl/src/rcl/subscription.c -@@ -39,7 +39,8 @@ extern "C" - rcl_subscription_t - rcl_get_zero_initialized_subscription() - { -- static rcl_subscription_t null_subscription = {0}; -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static rcl_subscription_t null_subscription; - return null_subscription; - } - -@@ -202,7 +203,7 @@ rcl_subscription_options_t - rcl_subscription_get_default_options() - { - // !!! MAKE SURE THAT CHANGES TO THESE DEFAULTS ARE REFLECTED IN THE HEADER DOC STRING -- static rcl_subscription_options_t default_options; -+ rcl_subscription_options_t default_options; - // Must set these after declaration because they are not a compile time constants. - default_options.qos = rmw_qos_profile_default; - default_options.allocator = rcl_get_default_allocator(); -diff --git rcl/src/rcl/timer.c rcl/src/rcl/timer.c -index 77239fb..1932252 100644 ---- rcl/src/rcl/timer.c -+++ rcl/src/rcl/timer.c -@@ -55,7 +55,8 @@ struct rcl_timer_impl_s - rcl_timer_t - rcl_get_zero_initialized_timer() - { -- static rcl_timer_t null_timer = {0}; -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static rcl_timer_t null_timer; - return null_timer; - } - -diff --git rcl/src/rcl/wait.c rcl/src/rcl/wait.c -index 1f79a6a..e8af101 100644 ---- rcl/src/rcl/wait.c -+++ rcl/src/rcl/wait.c -@@ -63,21 +63,8 @@ struct rcl_wait_set_impl_s - rcl_wait_set_t - rcl_get_zero_initialized_wait_set() - { -- static rcl_wait_set_t null_wait_set = { -- .subscriptions = NULL, -- .size_of_subscriptions = 0, -- .guard_conditions = NULL, -- .size_of_guard_conditions = 0, -- .clients = NULL, -- .size_of_clients = 0, -- .services = NULL, -- .size_of_services = 0, -- .timers = NULL, -- .size_of_timers = 0, -- .events = NULL, -- .size_of_events = 0, -- .impl = NULL, -- }; -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static rcl_wait_set_t null_wait_set; - return null_wait_set; - } - -diff --git rcl_action/src/rcl_action/action_client.c rcl_action/src/rcl_action/action_client.c -index d999f1e..dcadf6b 100644 ---- rcl_action/src/rcl_action/action_client.c -+++ rcl_action/src/rcl_action/action_client.c -@@ -42,7 +42,8 @@ extern "C" - rcl_action_client_t - rcl_action_get_zero_initialized_client(void) - { -- static rcl_action_client_t null_action_client = {0}; -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static rcl_action_client_t null_action_client; - return null_action_client; - } - -@@ -250,7 +251,7 @@ rcl_action_client_fini(rcl_action_client_t * action_client, rcl_node_t * node) - rcl_action_client_options_t - rcl_action_client_get_default_options(void) - { -- static rcl_action_client_options_t default_options; -+ rcl_action_client_options_t default_options; - default_options.goal_service_qos = rmw_qos_profile_services_default; - default_options.cancel_service_qos = rmw_qos_profile_services_default; - default_options.result_service_qos = rmw_qos_profile_services_default; -diff --git rcl_action/src/rcl_action/action_server.c rcl_action/src/rcl_action/action_server.c -index 63580c4..86d86ae 100644 ---- rcl_action/src/rcl_action/action_server.c -+++ rcl_action/src/rcl_action/action_server.c -@@ -39,7 +39,8 @@ extern "C" - rcl_action_server_t - rcl_action_get_zero_initialized_server(void) - { -- static rcl_action_server_t null_action_server = {0}; -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static rcl_action_server_t null_action_server; - return null_action_server; - } - -@@ -260,7 +261,7 @@ rcl_action_server_options_t - rcl_action_server_get_default_options(void) - { - // !!! MAKE SURE THAT CHANGES TO THESE DEFAULTS ARE REFLECTED IN THE HEADER DOC STRING -- static rcl_action_server_options_t default_options; -+ rcl_action_server_options_t default_options; - default_options.goal_service_qos = rmw_qos_profile_services_default; - default_options.cancel_service_qos = rmw_qos_profile_services_default; - default_options.result_service_qos = rmw_qos_profile_services_default; -diff --git rcl_action/src/rcl_action/goal_handle.c rcl_action/src/rcl_action/goal_handle.c -index 3a67786..dca6853 100644 ---- rcl_action/src/rcl_action/goal_handle.c -+++ rcl_action/src/rcl_action/goal_handle.c -@@ -32,7 +32,8 @@ typedef struct rcl_action_goal_handle_impl_s - rcl_action_goal_handle_t - rcl_action_get_zero_initialized_goal_handle(void) - { -- static rcl_action_goal_handle_t null_handle = {0}; -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static rcl_action_goal_handle_t null_handle; - return null_handle; - } - -diff --git rcl_action/src/rcl_action/types.c rcl_action/src/rcl_action/types.c -index e6df168..db640c3 100644 ---- rcl_action/src/rcl_action/types.c -+++ rcl_action/src/rcl_action/types.c -@@ -24,28 +24,32 @@ extern "C" - rcl_action_goal_info_t - rcl_action_get_zero_initialized_goal_info(void) - { -- static rcl_action_goal_info_t goal_info = {{{0}}, {0, 0}}; -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static rcl_action_goal_info_t goal_info; - return goal_info; - } - - rcl_action_goal_status_array_t - rcl_action_get_zero_initialized_goal_status_array(void) - { -- static rcl_action_goal_status_array_t status_array = {{{0, 0, 0}}, {0, 0, 0, 0, 0}}; -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static rcl_action_goal_status_array_t status_array; - return status_array; - } - - rcl_action_cancel_request_t - rcl_action_get_zero_initialized_cancel_request(void) - { -- static rcl_action_cancel_request_t request = {{{{0}}, {0, 0}}}; -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static rcl_action_cancel_request_t request; - return request; - } - - rcl_action_cancel_response_t - rcl_action_get_zero_initialized_cancel_response(void) - { -- static rcl_action_cancel_response_t response = {{0, {0, 0, 0}}, {0, 0, 0, 0, 0}}; -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static rcl_action_cancel_response_t response; - return response; - } - -diff --git rcl_lifecycle/src/transition_map.c rcl_lifecycle/src/transition_map.c -index 6b7454c..f6ffc96 100644 ---- rcl_lifecycle/src/transition_map.c -+++ rcl_lifecycle/src/transition_map.c -@@ -30,12 +30,8 @@ extern "C" - rcl_lifecycle_transition_map_t - rcl_lifecycle_get_zero_initialized_transition_map() - { -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. - static rcl_lifecycle_transition_map_t transition_map; -- transition_map.states = NULL; -- transition_map.states_size = 0; -- transition_map.transitions = NULL; -- transition_map.transitions_size = 0; -- - return transition_map; - } - --- -2.34.1 - diff --git a/repositories/patches/geometry2_fix-use-after-free-bug.patch b/repositories/patches/geometry2_fix-use-after-free-bug.patch deleted file mode 100644 index 1cab2101..00000000 --- a/repositories/patches/geometry2_fix-use-after-free-bug.patch +++ /dev/null @@ -1,65 +0,0 @@ -From f95dfbef3f7b2b65ecf18c7cc70bdac84a2bb6d4 Mon Sep 17 00:00:00 2001 -From: Alexander Hans -Date: Wed, 18 Jan 2023 17:21:46 +0100 -Subject: [PATCH] Fix use-after-free bug in BufferServer::cancelCB (#579) - -`info` was a reference to the `GoalInfo` entry in `active_goals_` that -`it` pointed at. It was used after the entry had been erased from the -list (through `it`). Swapping the line with `erase` and the one with the -call to `canceled` would have been the minimal fix, but instead we do a -refactor here to improve the overall code quality and make such errors -less likely in the future. - -Signed-off-by: Alexander Hans ---- - tf2_ros/src/buffer_server.cpp | 27 +++++++++++++-------------- - 1 file changed, 13 insertions(+), 14 deletions(-) - -diff --git a/tf2_ros/src/buffer_server.cpp b/tf2_ros/src/buffer_server.cpp -index a91de83..37f8a9b 100644 ---- a/tf2_ros/src/buffer_server.cpp -+++ b/tf2_ros/src/buffer_server.cpp -@@ -40,6 +40,7 @@ - #include // Only needed for toMsg() and fromMsg() - #include - -+#include - #include - #include - #include -@@ -119,20 +120,18 @@ rclcpp_action::CancelResponse BufferServer::cancelCB(GoalHandle gh) - // we need to find the goal in the list and remove it... also setting it as canceled - // if its not in the list, we won't do anything since it will have already been set - // as completed -- for (std::list::iterator it = active_goals_.begin(); it != active_goals_.end(); ) { -- GoalInfo & info = *it; -- if (info.handle == gh) { -- RCLCPP_DEBUG( -- logger_, -- "Accept cancel request for goal %s", -- rclcpp_action::to_string(gh->get_goal_id()).c_str()); -- it = active_goals_.erase(it); -- auto result = std::make_shared(); -- info.handle->canceled(result); -- return rclcpp_action::CancelResponse::ACCEPT; -- } else { -- ++it; -- } -+ auto goal_to_cancel_it = std::find_if( -+ active_goals_.begin(), active_goals_.end(), [&gh](const auto & info) { -+ return info.handle == gh; -+ }); -+ if (goal_to_cancel_it != active_goals_.end()) { -+ RCLCPP_DEBUG( -+ logger_, -+ "Accept cancel request for goal %s", -+ rclcpp_action::to_string(gh->get_goal_id()).c_str()); -+ goal_to_cancel_it->handle->canceled(std::make_shared()); -+ active_goals_.erase(goal_to_cancel_it); -+ return rclcpp_action::CancelResponse::ACCEPT; - } - - RCLCPP_DEBUG( --- -2.34.1 - diff --git a/repositories/patches/launch_no_log_dir_latest_symlink.patch b/repositories/patches/launch_no_log_dir_latest_symlink.patch new file mode 100644 index 00000000..901c716a --- /dev/null +++ b/repositories/patches/launch_no_log_dir_latest_symlink.patch @@ -0,0 +1,48 @@ +diff --git a/launch/launch/logging/__init__.py b/launch/launch/logging/__init__.py +index 207a8ed..6a07d72 100644 +--- a/launch/launch/logging/__init__.py ++++ b/launch/launch/logging/__init__.py +@@ -82,24 +82,6 @@ def _make_unique_log_dir(*, base_path): + return log_dir + + +-def _renew_latest_log_dir(*, log_dir): +- """ +- Renew the symbolic link to the latest logging directory. +- +- :param log_dir: the current logging directory +- :return True if the link was successfully created/updated, False otherwise +- """ +- base_dir = os.path.dirname(log_dir) +- latest_dir = os.path.join(base_dir, 'latest') +- +- if os.path.lexists(latest_dir): +- if not os.path.islink(latest_dir): +- return False +- os.unlink(latest_dir) +- os.symlink(log_dir, latest_dir, target_is_directory=True) +- return True +- +- + class LaunchConfig: + """Launch Logging Configuration class.""" + +@@ -137,18 +119,6 @@ class LaunchConfig: + self._log_dir = _make_unique_log_dir( + base_path=_get_logging_directory() + ) +- try: +- success = _renew_latest_log_dir(log_dir=self._log_dir) +- if not success: +- import warnings +- warnings.warn( +- 'Cannot create a symlink to latest log directory') +- +- except OSError as e: +- import warnings +- warnings.warn( +- ('Cannot create a symlink to latest log directory: {}\n') +- .format(e)) + + return self._log_dir + diff --git a/repositories/patches/rclcpp_fix-maybe-uninitialized-warning.patch b/repositories/patches/rclcpp_fix-maybe-uninitialized-warning.patch deleted file mode 100644 index b2c1308a..00000000 --- a/repositories/patches/rclcpp_fix-maybe-uninitialized-warning.patch +++ /dev/null @@ -1,228 +0,0 @@ -From 37adc03c11171f67c213ee72f7ce43fdcbda7b9e Mon Sep 17 00:00:00 2001 -From: Alexander Hans -Date: Tue, 17 Jan 2023 20:50:44 +0100 -Subject: [PATCH] Fix -Wmaybe-uninitialized warning (#2081) - -* Fix -Wmaybe-uninitialized warning - -gcc 12 warned about `callback_list_ptr` potentially being uninitialized -when compiling in release mode (i.e., with `-O2`). Since `shutdown_type` -is a compile-time parameter, we fix the warning by enforcing the -decision at compile time. - -Signed-off-by: Alexander Hans ---- - rclcpp/include/rclcpp/context.hpp | 8 ++- - rclcpp/src/rclcpp/context.cpp | 111 +++++++++++++----------------- - 2 files changed, 54 insertions(+), 65 deletions(-) - -diff --git a/rclcpp/include/rclcpp/context.hpp b/rclcpp/include/rclcpp/context.hpp -index 3add3f6d..2917ce33 100644 ---- a/rclcpp/include/rclcpp/context.hpp -+++ b/rclcpp/include/rclcpp/context.hpp -@@ -398,20 +398,22 @@ private: - - using ShutdownCallback = ShutdownCallbackHandle::ShutdownCallbackType; - -+ template - RCLCPP_LOCAL - ShutdownCallbackHandle - add_shutdown_callback( -- ShutdownType shutdown_type, - ShutdownCallback callback); - -+ template - RCLCPP_LOCAL - bool - remove_shutdown_callback( -- ShutdownType shutdown_type, - const ShutdownCallbackHandle & callback_handle); - -+ template -+ RCLCPP_LOCAL - std::vector -- get_shutdown_callback(ShutdownType shutdown_type) const; -+ get_shutdown_callback() const; - }; - - /// Return a copy of the list of context shared pointers. -diff --git a/rclcpp/src/rclcpp/context.cpp b/rclcpp/src/rclcpp/context.cpp -index 1599172e..971c0ee7 100644 ---- a/rclcpp/src/rclcpp/context.cpp -+++ b/rclcpp/src/rclcpp/context.cpp -@@ -365,49 +365,45 @@ Context::on_shutdown(OnShutdownCallback callback) - rclcpp::OnShutdownCallbackHandle - Context::add_on_shutdown_callback(OnShutdownCallback callback) - { -- return add_shutdown_callback(ShutdownType::on_shutdown, callback); -+ return add_shutdown_callback(callback); - } - - bool - Context::remove_on_shutdown_callback(const OnShutdownCallbackHandle & callback_handle) - { -- return remove_shutdown_callback(ShutdownType::on_shutdown, callback_handle); -+ return remove_shutdown_callback(callback_handle); - } - - rclcpp::PreShutdownCallbackHandle - Context::add_pre_shutdown_callback(PreShutdownCallback callback) - { -- return add_shutdown_callback(ShutdownType::pre_shutdown, callback); -+ return add_shutdown_callback(callback); - } - - bool - Context::remove_pre_shutdown_callback( - const PreShutdownCallbackHandle & callback_handle) - { -- return remove_shutdown_callback(ShutdownType::pre_shutdown, callback_handle); -+ return remove_shutdown_callback(callback_handle); - } - -+template - rclcpp::ShutdownCallbackHandle - Context::add_shutdown_callback( -- ShutdownType shutdown_type, - ShutdownCallback callback) - { - auto callback_shared_ptr = - std::make_shared(callback); - -- switch (shutdown_type) { -- case ShutdownType::pre_shutdown: -- { -- std::lock_guard lock(pre_shutdown_callbacks_mutex_); -- pre_shutdown_callbacks_.emplace(callback_shared_ptr); -- } -- break; -- case ShutdownType::on_shutdown: -- { -- std::lock_guard lock(on_shutdown_callbacks_mutex_); -- on_shutdown_callbacks_.emplace(callback_shared_ptr); -- } -- break; -+ static_assert( -+ shutdown_type == ShutdownType::pre_shutdown || shutdown_type == ShutdownType::on_shutdown); -+ -+ if constexpr (shutdown_type == ShutdownType::pre_shutdown) { -+ std::lock_guard lock(pre_shutdown_callbacks_mutex_); -+ pre_shutdown_callbacks_.emplace(callback_shared_ptr); -+ } else { -+ std::lock_guard lock(on_shutdown_callbacks_mutex_); -+ on_shutdown_callbacks_.emplace(callback_shared_ptr); - } - - ShutdownCallbackHandle callback_handle; -@@ -415,73 +411,64 @@ Context::add_shutdown_callback( - return callback_handle; - } - -+template - bool - Context::remove_shutdown_callback( -- ShutdownType shutdown_type, - const ShutdownCallbackHandle & callback_handle) - { -- std::mutex * mutex_ptr = nullptr; -- std::unordered_set< -- std::shared_ptr> * callback_list_ptr; -- -- switch (shutdown_type) { -- case ShutdownType::pre_shutdown: -- mutex_ptr = &pre_shutdown_callbacks_mutex_; -- callback_list_ptr = &pre_shutdown_callbacks_; -- break; -- case ShutdownType::on_shutdown: -- mutex_ptr = &on_shutdown_callbacks_mutex_; -- callback_list_ptr = &on_shutdown_callbacks_; -- break; -- } -- -- std::lock_guard lock(*mutex_ptr); -- auto callback_shared_ptr = callback_handle.callback.lock(); -+ const auto callback_shared_ptr = callback_handle.callback.lock(); - if (callback_shared_ptr == nullptr) { - return false; - } -- return callback_list_ptr->erase(callback_shared_ptr) == 1; -+ -+ const auto remove_callback = [this, &callback_shared_ptr](auto & mutex, auto & callback_set) { -+ const std::lock_guard lock(mutex); -+ return callback_set.erase(callback_shared_ptr) == 1; -+ }; -+ -+ static_assert( -+ shutdown_type == ShutdownType::pre_shutdown || shutdown_type == ShutdownType::on_shutdown); -+ -+ if constexpr (shutdown_type == ShutdownType::pre_shutdown) { -+ return remove_callback(pre_shutdown_callbacks_mutex_, pre_shutdown_callbacks_); -+ } else { -+ return remove_callback(on_shutdown_callbacks_mutex_, on_shutdown_callbacks_); -+ } - } - - std::vector - Context::get_on_shutdown_callbacks() const - { -- return get_shutdown_callback(ShutdownType::on_shutdown); -+ return get_shutdown_callback(); - } - - std::vector - Context::get_pre_shutdown_callbacks() const - { -- return get_shutdown_callback(ShutdownType::pre_shutdown); -+ return get_shutdown_callback(); - } - -+template - std::vector --Context::get_shutdown_callback(ShutdownType shutdown_type) const -+Context::get_shutdown_callback() const - { -- std::mutex * mutex_ptr = nullptr; -- const std::unordered_set< -- std::shared_ptr> * callback_list_ptr; -- -- switch (shutdown_type) { -- case ShutdownType::pre_shutdown: -- mutex_ptr = &pre_shutdown_callbacks_mutex_; -- callback_list_ptr = &pre_shutdown_callbacks_; -- break; -- case ShutdownType::on_shutdown: -- mutex_ptr = &on_shutdown_callbacks_mutex_; -- callback_list_ptr = &on_shutdown_callbacks_; -- break; -- } -+ const auto get_callback_vector = [this](auto & mutex, auto & callback_set) { -+ const std::lock_guard lock(mutex); -+ std::vector callbacks; -+ for (auto & callback : callback_set) { -+ callbacks.push_back(*callback); -+ } -+ return callbacks; -+ }; - -- std::vector callbacks; -- { -- std::lock_guard lock(*mutex_ptr); -- for (auto & iter : *callback_list_ptr) { -- callbacks.emplace_back(*iter); -- } -- } -+ static_assert( -+ shutdown_type == ShutdownType::pre_shutdown || shutdown_type == ShutdownType::on_shutdown); - -- return callbacks; -+ if constexpr (shutdown_type == ShutdownType::pre_shutdown) { -+ return get_callback_vector(pre_shutdown_callbacks_mutex_, pre_shutdown_callbacks_); -+ } else { -+ return get_callback_vector(on_shutdown_callbacks_mutex_, on_shutdown_callbacks_); -+ } - } - - std::shared_ptr --- -2.34.1 - diff --git a/repositories/patches/rclcpp_ts_libs_ownership.patch b/repositories/patches/rclcpp_ts_libs_ownership.patch deleted file mode 100644 index a788f790..00000000 --- a/repositories/patches/rclcpp_ts_libs_ownership.patch +++ /dev/null @@ -1,98 +0,0 @@ -diff --git a/rclcpp/include/rclcpp/create_generic_publisher.hpp b/rclcpp/include/rclcpp/create_generic_publisher.hpp -index 296446f7..f636c7fd 100644 ---- a/rclcpp/include/rclcpp/create_generic_publisher.hpp -+++ b/rclcpp/include/rclcpp/create_generic_publisher.hpp -@@ -47,15 +47,15 @@ std::shared_ptr create_generic_publisher( - const std::string & topic_name, - const std::string & topic_type, - const rclcpp::QoS & qos, -+ std::shared_ptr ts_lib, - const rclcpp::PublisherOptionsWithAllocator & options = ( - rclcpp::PublisherOptionsWithAllocator() - ) - ) - { -- auto ts_lib = rclcpp::get_typesupport_library(topic_type, "rosidl_typesupport_cpp"); - auto pub = std::make_shared( - topics_interface->get_node_base_interface(), -- std::move(ts_lib), -+ ts_lib, - topic_name, - topic_type, - qos, -diff --git a/rclcpp/include/rclcpp/create_generic_subscription.hpp b/rclcpp/include/rclcpp/create_generic_subscription.hpp -index f5281cc6..72a47c35 100644 ---- a/rclcpp/include/rclcpp/create_generic_subscription.hpp -+++ b/rclcpp/include/rclcpp/create_generic_subscription.hpp -@@ -52,17 +52,15 @@ std::shared_ptr create_generic_subscription( - const std::string & topic_type, - const rclcpp::QoS & qos, - std::function)> callback, -+ std::shared_ptr ts_lib, - const rclcpp::SubscriptionOptionsWithAllocator & options = ( - rclcpp::SubscriptionOptionsWithAllocator() - ) - ) - { -- auto ts_lib = rclcpp::get_typesupport_library( -- topic_type, "rosidl_typesupport_cpp"); -- - auto subscription = std::make_shared( - topics_interface->get_node_base_interface(), -- std::move(ts_lib), -+ ts_lib, - topic_name, - topic_type, - qos, -diff --git a/rclcpp/include/rclcpp/node.hpp b/rclcpp/include/rclcpp/node.hpp -index 65b87977..43699b0e 100644 ---- a/rclcpp/include/rclcpp/node.hpp -+++ b/rclcpp/include/rclcpp/node.hpp -@@ -37,6 +37,8 @@ - #include "rcl_interfaces/msg/parameter_event.hpp" - #include "rcl_interfaces/msg/set_parameters_result.hpp" - -+#include "rcpputils/shared_library.hpp" -+ - #include "rclcpp/callback_group.hpp" - #include "rclcpp/client.hpp" - #include "rclcpp/clock.hpp" -@@ -1298,6 +1300,18 @@ protected: - private: - RCLCPP_DISABLE_COPY(Node) - -+ std::shared_ptr create_ts_lib(const std::string& topic_type) { -+ std::lock_guard lock(topic_types_to_ts_libs_mutex_); -+ if (topic_types_to_ts_libs_.count(topic_type) == 0) { -+ topic_types_to_ts_libs_[topic_type] = -+ rclcpp::get_typesupport_library(topic_type, "rosidl_typesupport_cpp"); -+ } -+ return topic_types_to_ts_libs_[topic_type]; -+ } -+ -+ std::map> topic_types_to_ts_libs_; -+ std::mutex topic_types_to_ts_libs_mutex_; -+ - rclcpp::node_interfaces::NodeBaseInterface::SharedPtr node_base_; - rclcpp::node_interfaces::NodeGraphInterface::SharedPtr node_graph_; - rclcpp::node_interfaces::NodeLoggingInterface::SharedPtr node_logging_; -diff --git a/rclcpp/include/rclcpp/node_impl.hpp b/rclcpp/include/rclcpp/node_impl.hpp -index 086c2bb1..7a2fbb12 100644 ---- a/rclcpp/include/rclcpp/node_impl.hpp -+++ b/rclcpp/include/rclcpp/node_impl.hpp -@@ -166,6 +166,7 @@ Node::create_generic_publisher( - extend_name_with_sub_namespace(topic_name, this->get_sub_namespace()), - topic_type, - qos, -+ create_ts_lib(topic_type), - options - ); - } -@@ -185,6 +186,7 @@ Node::create_generic_subscription( - topic_type, - qos, - std::move(callback), -+ create_ts_lib(topic_type), - options - ); - } diff --git a/repositories/patches/rcutils_fix-setting-allocator-to-null.-478.patch b/repositories/patches/rcutils_fix-setting-allocator-to-null.-478.patch deleted file mode 100644 index 6362922b..00000000 --- a/repositories/patches/rcutils_fix-setting-allocator-to-null.-478.patch +++ /dev/null @@ -1,157 +0,0 @@ -From ed86a401c42e821733e02b4a262d53f9c9576874 Mon Sep 17 00:00:00 2001 -From: Chris Lalancette -Date: Tue, 17 Sep 2024 18:23:10 -0400 -Subject: [PATCH] Fix setting allocator to NULL. (#478) - -* Fix setting allocator to NULL. - -That is, previously the code was setting the allocator at -runtime, not during static initialization. Switch to static -initialization, which should fix a possible race. - -* Statically initialize all zero_initialized functions. - -Signed-off-by: Chris Lalancette ---- - src/allocator.c | 8 +------- - src/array_list.c | 2 +- - src/char_array.c | 8 +------- - src/hash_map.c | 2 +- - src/shared_library.c | 5 +---- - src/string_array.c | 6 +----- - src/string_map.c | 3 +-- - src/uint8_array.c | 7 +------ - 8 files changed, 8 insertions(+), 33 deletions(-) - -diff --git src/allocator.c src/allocator.c -index 0309da9..c351127 100644 ---- src/allocator.c -+++ src/allocator.c -@@ -65,13 +65,7 @@ __default_zero_allocate(size_t number_of_elements, size_t size_of_element, void - rcutils_allocator_t - rcutils_get_zero_initialized_allocator(void) - { -- static rcutils_allocator_t zero_allocator = { -- .allocate = NULL, -- .deallocate = NULL, -- .reallocate = NULL, -- .zero_allocate = NULL, -- .state = NULL, -- }; -+ static rcutils_allocator_t zero_allocator = {0}; - return zero_allocator; - } - -diff --git src/array_list.c src/array_list.c -index a9a08db..8761cec 100644 ---- src/array_list.c -+++ src/array_list.c -@@ -44,7 +44,7 @@ typedef struct rcutils_array_list_impl_s - rcutils_array_list_t - rcutils_get_zero_initialized_array_list(void) - { -- static rcutils_array_list_t zero_initialized_array_list = {NULL}; -+ static rcutils_array_list_t zero_initialized_array_list = {0}; - return zero_initialized_array_list; - } - -diff --git src/char_array.c src/char_array.c -index f36a883..f66b262 100644 ---- src/char_array.c -+++ src/char_array.c -@@ -21,13 +21,7 @@ - rcutils_char_array_t - rcutils_get_zero_initialized_char_array(void) - { -- static rcutils_char_array_t char_array = { -- .buffer = NULL, -- .owns_buffer = true, -- .buffer_length = 0u, -- .buffer_capacity = 0u -- }; -- char_array.allocator = rcutils_get_zero_initialized_allocator(); -+ static rcutils_char_array_t char_array = {0}; - return char_array; - } - -diff --git src/hash_map.c src/hash_map.c -index ecab884..2a7dbef 100644 ---- src/hash_map.c -+++ src/hash_map.c -@@ -77,7 +77,7 @@ int rcutils_hash_map_string_cmp_func(const void * val1, const void * val2) - rcutils_hash_map_t - rcutils_get_zero_initialized_hash_map() - { -- static rcutils_hash_map_t zero_initialized_hash_map = {NULL}; -+ static rcutils_hash_map_t zero_initialized_hash_map = {0}; - return zero_initialized_hash_map; - } - -diff --git src/shared_library.c src/shared_library.c -index 0190afc..721dbf6 100644 ---- src/shared_library.c -+++ src/shared_library.c -@@ -56,10 +56,7 @@ C_ASSERT(sizeof(char) == sizeof(TCHAR)); - rcutils_shared_library_t - rcutils_get_zero_initialized_shared_library(void) - { -- rcutils_shared_library_t zero_initialized_shared_library; -- zero_initialized_shared_library.library_path = NULL; -- zero_initialized_shared_library.lib_pointer = NULL; -- zero_initialized_shared_library.allocator = rcutils_get_zero_initialized_allocator(); -+ static rcutils_shared_library_t zero_initialized_shared_library = {0}; - return zero_initialized_shared_library; - } - -diff --git src/string_array.c src/string_array.c -index 40adb54..e279a37 100644 ---- src/string_array.c -+++ src/string_array.c -@@ -28,11 +28,7 @@ extern "C" - rcutils_string_array_t - rcutils_get_zero_initialized_string_array(void) - { -- static rcutils_string_array_t array = { -- .size = 0, -- .data = NULL, -- }; -- array.allocator = rcutils_get_zero_initialized_allocator(); -+ static rcutils_string_array_t array = {0}; - return array; - } - -diff --git src/string_map.c src/string_map.c -index ab3c5b7..090cd91 100644 ---- src/string_map.c -+++ src/string_map.c -@@ -41,8 +41,7 @@ typedef struct rcutils_string_map_impl_s - rcutils_string_map_t - rcutils_get_zero_initialized_string_map(void) - { -- static rcutils_string_map_t zero_initialized_string_map; -- zero_initialized_string_map.impl = NULL; -+ static rcutils_string_map_t zero_initialized_string_map = {0}; - return zero_initialized_string_map; - } - -diff --git src/uint8_array.c src/uint8_array.c -index 5c34803..844d370 100644 ---- src/uint8_array.c -+++ src/uint8_array.c -@@ -18,12 +18,7 @@ - rcutils_uint8_array_t - rcutils_get_zero_initialized_uint8_array(void) - { -- static rcutils_uint8_array_t uint8_array = { -- .buffer = NULL, -- .buffer_length = 0lu, -- .buffer_capacity = 0lu -- }; -- uint8_array.allocator = rcutils_get_zero_initialized_allocator(); -+ static rcutils_uint8_array_t uint8_array = {0}; - return uint8_array; - } - --- -2.34.1 - diff --git a/repositories/patches/rmw_initialize-the-null-strucutre-with-static-value.-378.patch b/repositories/patches/rmw_initialize-the-null-strucutre-with-static-value.-378.patch deleted file mode 100644 index e02b3589..00000000 --- a/repositories/patches/rmw_initialize-the-null-strucutre-with-static-value.-378.patch +++ /dev/null @@ -1,260 +0,0 @@ -From d41c46d1e5eaeca5ab4fac3f9bd3ec7df30e03a2 Mon Sep 17 00:00:00 2001 -From: Tomoya Fujita -Date: Mon, 16 Sep 2024 08:56:53 -0700 -Subject: [PATCH] Initialize the NULL structure with static value. (#378) - -* Initialize the NULL structure with static value. - -Signed-off-by: Tomoya Fujita - -* use static const for xxx_get_zero_initialized_yyy functions. - -Signed-off-by: Tomoya Fujita - -* address review comment. - -Signed-off-by: Tomoya Fujita - ---------- - -Signed-off-by: Tomoya Fujita ---- - rmw/src/event.c | 6 ++++-- - rmw/src/init_options.c | 9 ++++++--- - rmw/src/message_sequence.c | 18 ++++-------------- - rmw/src/names_and_types.c | 7 ++----- - rmw/src/network_flow_endpoint.c | 3 ++- - rmw/src/network_flow_endpoint_array.c | 3 ++- - rmw/src/security_options.c | 5 +++-- - rmw/src/subscription_content_filter_options.c | 7 +++---- - rmw/src/topic_endpoint_info.c | 10 ++-------- - rmw/src/topic_endpoint_info_array.c | 10 ++-------- - rmw/src/types.c | 3 ++- - 11 files changed, 32 insertions(+), 49 deletions(-) - -diff --git rmw/src/event.c rmw/src/event.c -index 8005fe4..9a9ed23 100644 ---- rmw/src/event.c -+++ rmw/src/event.c -@@ -24,11 +24,13 @@ extern "C" { - rmw_event_t - rmw_get_zero_initialized_event(void) - { -- const rmw_event_t event = { -+ // TODO(@fujitatomoya): This is not exactly zero initialized structure. -+ /// We should introduce xxx_get_default_event to return the default values. -+ static const rmw_event_t event = { - .implementation_identifier = NULL, - .data = NULL, - .event_type = RMW_EVENT_INVALID -- }; // NOLINT(readability/braces): false positive -+ }; - return event; - } - -diff --git rmw/src/init_options.c rmw/src/init_options.c -index 204a7a1..0554e8b 100644 ---- rmw/src/init_options.c -+++ rmw/src/init_options.c -@@ -25,15 +25,18 @@ extern "C" - rmw_init_options_t - rmw_get_zero_initialized_init_options(void) - { -- return (const rmw_init_options_t) { -+ // TODO(@fujitatomoya): This is not exactly zero initialized structure. -+ /// We should introduce xxx_get_default_init_optionst to return the default values. -+ static const rmw_init_options_t init_option = { - .domain_id = RMW_DEFAULT_DOMAIN_ID, - .localhost_only = RMW_LOCALHOST_ONLY_DEFAULT, - .implementation_identifier = NULL, - .impl = NULL, - .instance_id = 0, - .enclave = NULL, -- .security_options = rmw_get_default_security_options(), -- }; // NOLINT(readability/braces): false positive -+ .security_options = {RMW_SECURITY_ENFORCEMENT_PERMISSIVE, NULL}, -+ }; -+ return init_option; - } - - #ifdef __cplusplus -diff --git rmw/src/message_sequence.c rmw/src/message_sequence.c -index 373feb0..49897bd 100644 ---- rmw/src/message_sequence.c -+++ rmw/src/message_sequence.c -@@ -18,13 +18,8 @@ - rmw_message_sequence_t - rmw_get_zero_initialized_message_sequence(void) - { -- static rmw_message_sequence_t message_sequence = { -- .data = NULL, -- .size = 0u, -- .capacity = 0u, -- .allocator = NULL -- }; -- -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static const rmw_message_sequence_t message_sequence; - return message_sequence; - } - -@@ -75,13 +70,8 @@ rmw_message_sequence_fini(rmw_message_sequence_t * sequence) - rmw_message_info_sequence_t - rmw_get_zero_initialized_message_info_sequence(void) - { -- static rmw_message_info_sequence_t message_info_sequence = { -- .data = NULL, -- .size = 0u, -- .capacity = 0u, -- .allocator = NULL -- }; -- -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static const rmw_message_info_sequence_t message_info_sequence; - return message_info_sequence; - } - -diff --git rmw/src/names_and_types.c rmw/src/names_and_types.c -index 9baf512..a164f95 100644 ---- rmw/src/names_and_types.c -+++ rmw/src/names_and_types.c -@@ -24,11 +24,8 @@ - rmw_names_and_types_t - rmw_get_zero_initialized_names_and_types(void) - { -- static rmw_names_and_types_t zero = { -- .names = {0, NULL, {NULL, NULL, NULL, NULL, NULL}}, -- .types = NULL, -- }; -- zero.names = rcutils_get_zero_initialized_string_array(); -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static const rmw_names_and_types_t zero; - return zero; - } - -diff --git rmw/src/network_flow_endpoint.c rmw/src/network_flow_endpoint.c -index 41d921c..7f781fd 100644 ---- rmw/src/network_flow_endpoint.c -+++ rmw/src/network_flow_endpoint.c -@@ -22,7 +22,8 @@ - rmw_network_flow_endpoint_t - rmw_get_zero_initialized_network_flow_endpoint(void) - { -- rmw_network_flow_endpoint_t network_flow_endpoint = {0}; -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static const rmw_network_flow_endpoint_t network_flow_endpoint; - return network_flow_endpoint; - } - -diff --git rmw/src/network_flow_endpoint_array.c rmw/src/network_flow_endpoint_array.c -index b940190..1d2ac22 100644 ---- rmw/src/network_flow_endpoint_array.c -+++ rmw/src/network_flow_endpoint_array.c -@@ -18,7 +18,8 @@ - rmw_network_flow_endpoint_array_t - rmw_get_zero_initialized_network_flow_endpoint_array(void) - { -- rmw_network_flow_endpoint_array_t network_flow_endpoint_array = {0}; -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static const rmw_network_flow_endpoint_array_t network_flow_endpoint_array; - return network_flow_endpoint_array; - } - -diff --git rmw/src/security_options.c rmw/src/security_options.c -index ff69620..b737860 100644 ---- rmw/src/security_options.c -+++ rmw/src/security_options.c -@@ -22,14 +22,15 @@ - rmw_security_options_t - rmw_get_zero_initialized_security_options() - { -- rmw_security_options_t zero_initialized_options = {0, NULL}; -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static const rmw_security_options_t zero_initialized_options; - return zero_initialized_options; - } - - rmw_security_options_t - rmw_get_default_security_options() - { -- rmw_security_options_t default_options = { -+ static const rmw_security_options_t default_options = { - RMW_SECURITY_ENFORCEMENT_PERMISSIVE, - NULL, - }; -diff --git rmw/src/subscription_content_filter_options.c rmw/src/subscription_content_filter_options.c -index 4405174..ae25e9e 100644 ---- rmw/src/subscription_content_filter_options.c -+++ rmw/src/subscription_content_filter_options.c -@@ -22,10 +22,9 @@ - rmw_subscription_content_filter_options_t - rmw_get_zero_initialized_content_filter_options() - { -- return (const rmw_subscription_content_filter_options_t) { -- .filter_expression = NULL, -- .expression_parameters = rcutils_get_zero_initialized_string_array() -- }; // NOLINT(readability/braces): false positive -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static const rmw_subscription_content_filter_options_t zero; -+ return zero; - } - - rmw_ret_t -diff --git rmw/src/topic_endpoint_info.c rmw/src/topic_endpoint_info.c -index 26861a8..5cfab52 100644 ---- rmw/src/topic_endpoint_info.c -+++ rmw/src/topic_endpoint_info.c -@@ -22,14 +22,8 @@ - rmw_topic_endpoint_info_t - rmw_get_zero_initialized_topic_endpoint_info(void) - { --#ifdef __clang__ --# pragma clang diagnostic push --# pragma clang diagnostic ignored "-Wmissing-field-initializers" --#endif -- rmw_topic_endpoint_info_t zero = {0}; --#ifdef __clang__ --# pragma clang diagnostic pop --#endif -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static const rmw_topic_endpoint_info_t zero; - return zero; - } - -diff --git rmw/src/topic_endpoint_info_array.c rmw/src/topic_endpoint_info_array.c -index 1cd1f47..4c64943 100644 ---- rmw/src/topic_endpoint_info_array.c -+++ rmw/src/topic_endpoint_info_array.c -@@ -19,14 +19,8 @@ - rmw_topic_endpoint_info_array_t - rmw_get_zero_initialized_topic_endpoint_info_array(void) - { --#ifdef __clang__ --# pragma clang diagnostic push --# pragma clang diagnostic ignored "-Wmissing-field-initializers" --#endif -- rmw_topic_endpoint_info_array_t zero = {0}; --#ifdef __clang__ --# pragma clang diagnostic pop --#endif -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static const rmw_topic_endpoint_info_array_t zero; - return zero; - } - -diff --git rmw/src/types.c rmw/src/types.c -index dfb79dc..b8a83e1 100644 ---- rmw/src/types.c -+++ rmw/src/types.c -@@ -19,6 +19,7 @@ RMW_WARN_UNUSED - rmw_message_info_t - rmw_get_zero_initialized_message_info(void) - { -- rmw_message_info_t zero_initialized_message_info = {0}; -+ // All members are initialized to 0 or NULL by C99 6.7.8/10. -+ static const rmw_message_info_t zero_initialized_message_info; - return zero_initialized_message_info; - } --- -2.34.1 - diff --git a/repositories/patches/ros2cli_replace-netifaces.patch b/repositories/patches/ros2cli_replace-netifaces.patch deleted file mode 100644 index 18314266..00000000 --- a/repositories/patches/ros2cli_replace-netifaces.patch +++ /dev/null @@ -1,74 +0,0 @@ -diff --git ros2cli/package.xml ros2cli/package.xml -index a7a858b..b3e1a4a 100644 ---- ros2cli/package.xml -+++ ros2cli/package.xml -@@ -18,9 +18,9 @@ - - python3-argcomplete - python3-importlib-metadata -- python3-netifaces - python3-packaging - python3-pkg-resources -+ python3-psutil - rclpy - - ament_copyright -diff --git ros2cli/ros2cli/node/network_aware.py ros2cli/ros2cli/node/network_aware.py -index d188372..e04e406 100644 ---- ros2cli/ros2cli/node/network_aware.py -+++ ros2cli/ros2cli/node/network_aware.py -@@ -12,22 +12,17 @@ - # See the License for the specific language governing permissions and - # limitations under the License. - --from collections import defaultdict - import functools - import inspect - --import netifaces -+import psutil - import rclpy - - from ros2cli.node.direct import DirectNode - - - def get_interfaces_ip_addresses(): -- addresses_by_interfaces = defaultdict(functools.partial(defaultdict, set)) -- for interface_name in netifaces.interfaces(): -- for kind, info_list in netifaces.ifaddresses(interface_name).items(): -- for info in info_list: -- addresses_by_interfaces[kind][interface_name].add(info['addr']) -+ addresses_by_interfaces = psutil.net_if_addrs() - print(f'Addresses by interfaces: {addresses_by_interfaces}') - return addresses_by_interfaces - -diff --git ros2cli/ros2cli/xmlrpc/local_server.py ros2cli/ros2cli/xmlrpc/local_server.py -index e946275..9e3e9e4 100644 ---- ros2cli/ros2cli/xmlrpc/local_server.py -+++ ros2cli/ros2cli/xmlrpc/local_server.py -@@ -18,18 +18,16 @@ import struct - from xmlrpc.server import SimpleXMLRPCRequestHandler # noqa - from xmlrpc.server import SimpleXMLRPCServer - --import netifaces -+import psutil - - - def get_local_ipaddrs(): -- iplist = [] -- interfaces = netifaces.interfaces() -- for interface in interfaces: -- addrs = netifaces.ifaddresses(interface) -- if netifaces.AF_INET in addrs.keys(): -- for value in addrs[netifaces.AF_INET]: -- iplist.append(value['addr']) -- return iplist -+ return [ -+ addr.address -+ for _, addrs in psutil.net_if_addrs().items() -+ for addr in addrs -+ if addr.family == socket.AF_INET -+ ] - - - class LocalXMLRPCServer(SimpleXMLRPCServer): diff --git a/repositories/patches/rosbag2_load_plugin_cli_extensions.patch b/repositories/patches/rosbag2_load_plugin_cli_extensions.patch new file mode 100644 index 00000000..081791f4 --- /dev/null +++ b/repositories/patches/rosbag2_load_plugin_cli_extensions.patch @@ -0,0 +1,26 @@ +diff --git a/ros2bag/ros2bag/api/__init__.py b/ros2bag/ros2bag/api/__init__.py +index 42af8c9b..60b77596 100644 +--- a/ros2bag/ros2bag/api/__init__.py ++++ b/ros2bag/ros2bag/api/__init__.py +@@ -18,6 +18,7 @@ from argparse import ( + FileType, + HelpFormatter, + ) ++import importlib + import os + from typing import Any + from typing import Dict +@@ -282,10 +283,9 @@ def add_writer_storage_plugin_extensions(parser: ArgumentParser) -> None: + + plugin_id = _parse_cli_storage_plugin() + try: +- extension = get_entry_points('ros2bag.storage_plugin_cli_extension')[plugin_id].load() +- except KeyError: +- print(f'No CLI extension module found for plugin name {plugin_id} ' +- 'in entry_point group "ros2bag.storage_plugin_cli_extension".') ++ extension = importlib.import_module(f'ros2bag_{plugin_id}_cli') ++ except ImportError: ++ print(f'No CLI extension module found for plugin name {plugin_id}.') + # Commandline arguments should still be added when no extension present + # None will throw AttributeError for all method calls + extension = None diff --git a/repositories/patches/rosidl_fix_rosidl_typesupport_introspection_generator.patch b/repositories/patches/rosidl_fix_rosidl_typesupport_introspection_generator.patch new file mode 100644 index 00000000..cdfec8b6 --- /dev/null +++ b/repositories/patches/rosidl_fix_rosidl_typesupport_introspection_generator.patch @@ -0,0 +1,24 @@ +diff --git a/rosidl_typesupport_introspection_c/rosidl_typesupport_introspection_c/__init__.py b/rosidl_typesupport_introspection_c/rosidl_typesupport_introspection_c/__init__.py +index 8a728f9..48d034b 100644 +--- a/rosidl_typesupport_introspection_c/rosidl_typesupport_introspection_c/__init__.py ++++ b/rosidl_typesupport_introspection_c/rosidl_typesupport_introspection_c/__init__.py +@@ -26,6 +26,6 @@ def generate_c(generator_arguments_file: str): + mapping = { + 'idl__rosidl_typesupport_introspection_c.h.em': + 'detail/%s__rosidl_typesupport_introspection_c.h', +- 'idl__type_support.c.em': 'detail/%s__type_support.c', ++ 'idl__type_support.c.em': 'detail/%s__rosidl_typesupport_introspection_c.c', + } + return generate_files(generator_arguments_file, mapping) +diff --git a/rosidl_typesupport_introspection_cpp/rosidl_typesupport_introspection_cpp/__init__.py b/rosidl_typesupport_introspection_cpp/rosidl_typesupport_introspection_cpp/__init__.py +index 7457e2a..a292863 100644 +--- a/rosidl_typesupport_introspection_cpp/rosidl_typesupport_introspection_cpp/__init__.py ++++ b/rosidl_typesupport_introspection_cpp/rosidl_typesupport_introspection_cpp/__init__.py +@@ -26,6 +26,6 @@ def generate_cpp(generator_arguments_file: str): + mapping = { + 'idl__rosidl_typesupport_introspection_cpp.hpp.em': + 'detail/%s__rosidl_typesupport_introspection_cpp.hpp', +- 'idl__type_support.cpp.em': 'detail/%s__type_support.cpp', ++ 'idl__type_support.cpp.em': 'detail/%s__rosidl_typesupport_introspection_cpp.cpp', + } + return generate_files(generator_arguments_file, mapping) diff --git a/repositories/patches/rosidl_python_fix_imports.patch b/repositories/patches/rosidl_python_fix_imports.patch index aec15ed4..fedba887 100644 --- a/repositories/patches/rosidl_python_fix_imports.patch +++ b/repositories/patches/rosidl_python_fix_imports.patch @@ -1,5 +1,5 @@ diff --git a/rosidl_generator_py/resource/_action.py.em b/rosidl_generator_py/resource/_action.py.em -index 8b920c8..e13870b 100644 +index 77fbf87..315a2ac 100644 --- a/rosidl_generator_py/resource/_action.py.em +++ b/rosidl_generator_py/resource/_action.py.em @@ -39,34 +39,24 @@ class Metaclass_@(action.namespaced_type.name)(type): @@ -19,14 +19,23 @@ index 8b920c8..e13870b 100644 - traceback.format_exc()) - else: - cls._TYPE_SUPPORT = module.type_support_action__@('__'.join(action.namespaced_type.namespaces[1:]))_@(action_name) -- ++ import @(package_name).@(package_name)_s__rosidl_typesupport_c as module ++ ++ cls._TYPE_SUPPORT = module.type_support_action__@('__'.join(action.namespaced_type.namespaces[1:]))_@(action_name) + - from action_msgs.msg import _goal_status_array - if _goal_status_array.Metaclass_GoalStatusArray._TYPE_SUPPORT is None: - _goal_status_array.Metaclass_GoalStatusArray.__import_type_support__() - from action_msgs.srv import _cancel_goal - if _cancel_goal.Metaclass_CancelGoal._TYPE_SUPPORT is None: - _cancel_goal.Metaclass_CancelGoal.__import_type_support__() -- ++ from action_msgs.msg import _goal_status_array ++ if _goal_status_array.Metaclass_GoalStatusArray._TYPE_SUPPORT is None: ++ _goal_status_array.Metaclass_GoalStatusArray.__import_type_support__() ++ from action_msgs.srv import _cancel_goal ++ if _cancel_goal.Metaclass_CancelGoal._TYPE_SUPPORT is None: ++ _cancel_goal.Metaclass_CancelGoal.__import_type_support__() + - from @('.'.join(action.namespaced_type.namespaces)) import @(module_name) - if @(module_name).Metaclass_@(action.send_goal_service.namespaced_type.name)._TYPE_SUPPORT is None: - @(module_name).Metaclass_@(action.send_goal_service.namespaced_type.name).__import_type_support__() @@ -34,17 +43,6 @@ index 8b920c8..e13870b 100644 - @(module_name).Metaclass_@(action.get_result_service.namespaced_type.name).__import_type_support__() - if @(module_name).Metaclass_@(action.feedback_message.structure.namespaced_type.name)._TYPE_SUPPORT is None: - @(module_name).Metaclass_@(action.feedback_message.structure.namespaced_type.name).__import_type_support__() -+ import @(package_name).@(package_name)_s__rosidl_typesupport_c as module -+ -+ cls._TYPE_SUPPORT = module.type_support_action__@('__'.join(action.namespaced_type.namespaces[1:]))_@(action_name) -+ -+ from action_msgs.msg import _goal_status_array -+ if _goal_status_array.Metaclass_GoalStatusArray._TYPE_SUPPORT is None: -+ _goal_status_array.Metaclass_GoalStatusArray.__import_type_support__() -+ from action_msgs.srv import _cancel_goal -+ if _cancel_goal.Metaclass_CancelGoal._TYPE_SUPPORT is None: -+ _cancel_goal.Metaclass_CancelGoal.__import_type_support__() -+ + from @('.'.join(action.namespaced_type.namespaces)) import @(module_name) + if @(module_name).Metaclass_@(action.send_goal_service.namespaced_type.name)._TYPE_SUPPORT is None: + @(module_name).Metaclass_@(action.send_goal_service.namespaced_type.name).__import_type_support__() @@ -56,10 +54,10 @@ index 8b920c8..e13870b 100644 class @(action.namespaced_type.name)(metaclass=Metaclass_@(action.namespaced_type.name)): diff --git a/rosidl_generator_py/resource/_msg.py.em b/rosidl_generator_py/resource/_msg.py.em -index 1126d47..2161606 100644 +index 61640c5..cbb81fd 100644 --- a/rosidl_generator_py/resource/_msg.py.em +++ b/rosidl_generator_py/resource/_msg.py.em -@@ -94,26 +94,16 @@ class Metaclass_@(message.structure.namespaced_type.name)(type): +@@ -105,26 +105,15 @@ class Metaclass_@(message.structure.namespaced_type.name)(type): @@classmethod def __import_type_support__(cls): @@ -76,7 +74,6 @@ index 1126d47..2161606 100644 - traceback.format_exc()) - else: + import @(package_name).@(package_name)_s__rosidl_typesupport_c as module -+ @{ suffix = '__'.join(message.structure.namespaced_type.namespaces[1:]) + '__' + convert_camel_case_to_lower_case_underscore(message.structure.namespaced_type.name) }@ @@ -93,7 +90,7 @@ index 1126d47..2161606 100644 @{ importable_typesupports = set() for member in message.structure.members: -@@ -134,9 +124,9 @@ for member in message.structure.members: +@@ -150,9 +139,9 @@ for member in message.structure.members: }@ @[for typename in sorted(importable_typesupports)]@ @@ -107,10 +104,10 @@ index 1126d47..2161606 100644 @@classmethod diff --git a/rosidl_generator_py/resource/_srv.py.em b/rosidl_generator_py/resource/_srv.py.em -index 8f1e608..cbe0fe7 100644 +index 24d4548..5d3529b 100644 --- a/rosidl_generator_py/resource/_srv.py.em +++ b/rosidl_generator_py/resource/_srv.py.em -@@ -23,25 +23,15 @@ class Metaclass_@(service.namespaced_type.name)(type): +@@ -27,27 +27,17 @@ class Metaclass_@(service.namespaced_type.name)(type): @@classmethod def __import_type_support__(cls): @@ -133,8 +130,10 @@ index 8f1e608..cbe0fe7 100644 - @(module_name).Metaclass_@(service.request_message.structure.namespaced_type.name).__import_type_support__() - if @(module_name).Metaclass_@(service.response_message.structure.namespaced_type.name)._TYPE_SUPPORT is None: - @(module_name).Metaclass_@(service.response_message.structure.namespaced_type.name).__import_type_support__() +- if @(module_name).Metaclass_@(service.event_message.structure.namespaced_type.name)._TYPE_SUPPORT is None: +- @(module_name).Metaclass_@(service.event_message.structure.namespaced_type.name).__import_type_support__() + import @(package_name).@(package_name)_s__rosidl_typesupport_c as module -+ ++ + cls._TYPE_SUPPORT = module.type_support_srv__@('__'.join(service.namespaced_type.namespaces[1:]))_@(service_name) + + from @('.'.join(service.namespaced_type.namespaces)) import @(module_name) @@ -142,6 +141,8 @@ index 8f1e608..cbe0fe7 100644 + @(module_name).Metaclass_@(service.request_message.structure.namespaced_type.name).__import_type_support__() + if @(module_name).Metaclass_@(service.response_message.structure.namespaced_type.name)._TYPE_SUPPORT is None: + @(module_name).Metaclass_@(service.response_message.structure.namespaced_type.name).__import_type_support__() ++ if @(module_name).Metaclass_@(service.event_message.structure.namespaced_type.name)._TYPE_SUPPORT is None: ++ @(module_name).Metaclass_@(service.event_message.structure.namespaced_type.name).__import_type_support__() class @(service.namespaced_type.name)(metaclass=Metaclass_@(service.namespaced_type.name)): diff --git a/repositories/patches/rosidl_typesupport_generate_true_c_code.patch b/repositories/patches/rosidl_typesupport_generate_true_c_code.patch index 316e80f2..e4808bfd 100644 --- a/repositories/patches/rosidl_typesupport_generate_true_c_code.patch +++ b/repositories/patches/rosidl_typesupport_generate_true_c_code.patch @@ -1,8 +1,8 @@ diff --git a/rosidl_typesupport_c/resource/msg__type_support.cpp.em b/rosidl_typesupport_c/resource/msg__type_support.cpp.em -index bd2e929..04dc10d 100644 +index b1340d9..e8f606c 100644 --- a/rosidl_typesupport_c/resource/msg__type_support.cpp.em +++ b/rosidl_typesupport_c/resource/msg__type_support.cpp.em -@@ -6,7 +6,7 @@ include_parts = [package_name] + list(interface_path.parents[0].parts) + [ +@@ -10,7 +10,7 @@ include_parts = [package_name] + list(interface_path.parents[0].parts) + [ include_base = '/'.join(include_parts) header_files = [ @@ -12,10 +12,10 @@ index bd2e929..04dc10d 100644 include_base + '__struct.h', include_base + '__type_support.h', diff --git a/rosidl_typesupport_c/resource/srv__type_support.cpp.em b/rosidl_typesupport_c/resource/srv__type_support.cpp.em -index 17ee3f3..84a3618 100644 +index 10bc91c..78e42ce 100644 --- a/rosidl_typesupport_c/resource/srv__type_support.cpp.em +++ b/rosidl_typesupport_c/resource/srv__type_support.cpp.em -@@ -22,7 +22,7 @@ include_parts = [package_name] + list(interface_path.parents[0].parts) + [ +@@ -37,7 +37,7 @@ include_parts = [package_name] + list(interface_path.parents[0].parts) + [ include_base = '/'.join(include_parts) header_files = [ @@ -25,7 +25,7 @@ index 17ee3f3..84a3618 100644 include_base + '__type_support.h', ] diff --git a/rosidl_typesupport_c/rosidl_typesupport_c/__init__.py b/rosidl_typesupport_c/rosidl_typesupport_c/__init__.py -index 0839df4..31a5b96 100644 +index 658435c..bab48ba 100644 --- a/rosidl_typesupport_c/rosidl_typesupport_c/__init__.py +++ b/rosidl_typesupport_c/rosidl_typesupport_c/__init__.py @@ -23,7 +23,7 @@ def generate_c(generator_arguments_file, type_supports): @@ -33,7 +33,46 @@ index 0839df4..31a5b96 100644 """ mapping = { - 'idl__type_support.cpp.em': '%s__type_support.cpp', -+ 'idl__type_support.cpp.em': '%s__type_support.c', ++ 'idl__type_support.cpp.em': '%s__type_support_c.c', + } + return generate_files( + generator_arguments_file, mapping, +diff --git a/rosidl_typesupport_cpp/resource/msg__type_support.cpp.em b/rosidl_typesupport_cpp/resource/msg__type_support.cpp.em +index 64d7617..13b148e 100644 +--- a/rosidl_typesupport_cpp/resource/msg__type_support.cpp.em ++++ b/rosidl_typesupport_cpp/resource/msg__type_support.cpp.em +@@ -10,7 +10,7 @@ include_parts = [package_name] + list(interface_path.parents[0].parts) + [ + include_base = '/'.join(include_parts) + + header_files = [ +- 'cstddef', ++ 'stddef.h', + 'rosidl_runtime_c/message_type_support_struct.h', + include_base + '__functions.h', + include_base + '__struct.hpp', +diff --git a/rosidl_typesupport_cpp/resource/srv__type_support.cpp.em b/rosidl_typesupport_cpp/resource/srv__type_support.cpp.em +index e889773..1216637 100644 +--- a/rosidl_typesupport_cpp/resource/srv__type_support.cpp.em ++++ b/rosidl_typesupport_cpp/resource/srv__type_support.cpp.em +@@ -37,7 +37,7 @@ include_parts = [package_name] + list(interface_path.parents[0].parts) + [ + include_base = '/'.join(include_parts) + + header_files = [ +- 'cstddef', ++ 'stddef.h', + 'rosidl_runtime_c/service_type_support_struct.h', + 'rosidl_typesupport_cpp/service_type_support.hpp', + include_base + '__struct.hpp', +diff --git a/rosidl_typesupport_cpp/rosidl_typesupport_cpp/__init__.py b/rosidl_typesupport_cpp/rosidl_typesupport_cpp/__init__.py +index f21ad1d..a1d57fb 100644 +--- a/rosidl_typesupport_cpp/rosidl_typesupport_cpp/__init__.py ++++ b/rosidl_typesupport_cpp/rosidl_typesupport_cpp/__init__.py +@@ -23,7 +23,7 @@ def generate_cpp(generator_arguments_file, type_supports): + :param type_support: List of type supports to be used + """ + mapping = { +- 'idl__type_support.cpp.em': '%s__type_support.cpp', ++ 'idl__type_support.cpp.em': '%s__type_support_cpp.cpp', } return generate_files( generator_arguments_file, mapping, diff --git a/repositories/private/BUILD.bazel b/repositories/private/BUILD.bazel index 9044ef65..ef5e3f54 100644 --- a/repositories/private/BUILD.bazel +++ b/repositories/private/BUILD.bazel @@ -4,7 +4,6 @@ load("@rules_ros2_resolver_deps//:requirements.bzl", "requirement") compile_pip_requirements( name = "requirements", - python_version = "3.10", requirements_in = ":resolver_requirements.txt", requirements_txt = ":resolver_requirements_lock.txt", tags = ["manual"], @@ -23,10 +22,10 @@ py_binary( "@com_github_mvukov_rules_ros2//repositories:ros2_repositories_impl.bzl", "@ros2//:repos", ], - python_version = "3.10", deps = [ requirement("aiofile"), requirement("aiohttp"), + requirement("async_timeout"), requirement("pyyaml"), requirement("tqdm"), ], @@ -38,6 +37,5 @@ py_test( srcs = ["ros2_repo_mappings_tests.py"], data = ["@com_github_mvukov_rules_ros2//repositories:ros2_repo_mappings.yaml"], main = "ros2_repo_mappings_tests.py", - python_version = "3.10", deps = [requirement("pyyaml")], ) diff --git a/repositories/private/resolver_requirements.txt b/repositories/private/resolver_requirements.txt index 35ed22ca..826e6add 100644 --- a/repositories/private/resolver_requirements.txt +++ b/repositories/private/resolver_requirements.txt @@ -1,4 +1,5 @@ aiofile aiohttp +async_timeout pyyaml tqdm diff --git a/repositories/private/resolver_requirements_lock.txt b/repositories/private/resolver_requirements_lock.txt index 6f39887c..46fc89ab 100644 --- a/repositories/private/resolver_requirements_lock.txt +++ b/repositories/private/resolver_requirements_lock.txt @@ -1,363 +1,795 @@ # -# This file is autogenerated by pip-compile with Python 3.10 +# This file is autogenerated by pip-compile with Python 3.12 # by the following command: # # bazel run //repositories/private:requirements.update # -aiofile==3.8.1 \ - --hash=sha256:1623b98d88fbd16bbd2808d010de4e185a700e950ed3f17455dd851aa2455f40 +aiofile==3.9.0 \ + --hash=sha256:ce2f6c1571538cbdfa0143b04e16b208ecb0e9cb4148e528af8a640ed51cc8aa \ + --hash=sha256:e5ad718bb148b265b6df1b3752c4d1d83024b93da9bd599df74b9d9ffcf7919b # via -r repositories/private/resolver_requirements.txt -aiohttp==3.8.3 \ - --hash=sha256:02f9a2c72fc95d59b881cf38a4b2be9381b9527f9d328771e90f72ac76f31ad8 \ - --hash=sha256:059a91e88f2c00fe40aed9031b3606c3f311414f86a90d696dd982e7aec48142 \ - --hash=sha256:05a3c31c6d7cd08c149e50dc7aa2568317f5844acd745621983380597f027a18 \ - --hash=sha256:08c78317e950e0762c2983f4dd58dc5e6c9ff75c8a0efeae299d363d439c8e34 \ - --hash=sha256:09e28f572b21642128ef31f4e8372adb6888846f32fecb288c8b0457597ba61a \ - --hash=sha256:0d2c6d8c6872df4a6ec37d2ede71eff62395b9e337b4e18efd2177de883a5033 \ - --hash=sha256:16c121ba0b1ec2b44b73e3a8a171c4f999b33929cd2397124a8c7fcfc8cd9e06 \ - --hash=sha256:1d90043c1882067f1bd26196d5d2db9aa6d268def3293ed5fb317e13c9413ea4 \ - --hash=sha256:1e56b9cafcd6531bab5d9b2e890bb4937f4165109fe98e2b98ef0dcfcb06ee9d \ - --hash=sha256:20acae4f268317bb975671e375493dbdbc67cddb5f6c71eebdb85b34444ac46b \ - --hash=sha256:21b30885a63c3f4ff5b77a5d6caf008b037cb521a5f33eab445dc566f6d092cc \ - --hash=sha256:21d69797eb951f155026651f7e9362877334508d39c2fc37bd04ff55b2007091 \ - --hash=sha256:256deb4b29fe5e47893fa32e1de2d73c3afe7407738bd3c63829874661d4822d \ - --hash=sha256:25892c92bee6d9449ffac82c2fe257f3a6f297792cdb18ad784737d61e7a9a85 \ - --hash=sha256:2ca9af5f8f5812d475c5259393f52d712f6d5f0d7fdad9acdb1107dd9e3cb7eb \ - --hash=sha256:2d252771fc85e0cf8da0b823157962d70639e63cb9b578b1dec9868dd1f4f937 \ - --hash=sha256:2dea10edfa1a54098703cb7acaa665c07b4e7568472a47f4e64e6319d3821ccf \ - --hash=sha256:2df5f139233060578d8c2c975128fb231a89ca0a462b35d4b5fcf7c501ebdbe1 \ - --hash=sha256:2feebbb6074cdbd1ac276dbd737b40e890a1361b3cc30b74ac2f5e24aab41f7b \ - --hash=sha256:309aa21c1d54b8ef0723181d430347d7452daaff93e8e2363db8e75c72c2fb2d \ - --hash=sha256:3828fb41b7203176b82fe5d699e0d845435f2374750a44b480ea6b930f6be269 \ - --hash=sha256:398701865e7a9565d49189f6c90868efaca21be65c725fc87fc305906be915da \ - --hash=sha256:43046a319664a04b146f81b40e1545d4c8ac7b7dd04c47e40bf09f65f2437346 \ - --hash=sha256:437399385f2abcd634865705bdc180c8314124b98299d54fe1d4c8990f2f9494 \ - --hash=sha256:45d88b016c849d74ebc6f2b6e8bc17cabf26e7e40c0661ddd8fae4c00f015697 \ - --hash=sha256:47841407cc89a4b80b0c52276f3cc8138bbbfba4b179ee3acbd7d77ae33f7ac4 \ - --hash=sha256:4a4fbc769ea9b6bd97f4ad0b430a6807f92f0e5eb020f1e42ece59f3ecfc4585 \ - --hash=sha256:4ab94426ddb1ecc6a0b601d832d5d9d421820989b8caa929114811369673235c \ - --hash=sha256:4b0f30372cef3fdc262f33d06e7b411cd59058ce9174ef159ad938c4a34a89da \ - --hash=sha256:4e3a23ec214e95c9fe85a58470b660efe6534b83e6cbe38b3ed52b053d7cb6ad \ - --hash=sha256:512bd5ab136b8dc0ffe3fdf2dfb0c4b4f49c8577f6cae55dca862cd37a4564e2 \ - --hash=sha256:527b3b87b24844ea7865284aabfab08eb0faf599b385b03c2aa91fc6edd6e4b6 \ - --hash=sha256:54d107c89a3ebcd13228278d68f1436d3f33f2dd2af5415e3feaeb1156e1a62c \ - --hash=sha256:5835f258ca9f7c455493a57ee707b76d2d9634d84d5d7f62e77be984ea80b849 \ - --hash=sha256:598adde339d2cf7d67beaccda3f2ce7c57b3b412702f29c946708f69cf8222aa \ - --hash=sha256:599418aaaf88a6d02a8c515e656f6faf3d10618d3dd95866eb4436520096c84b \ - --hash=sha256:5bf651afd22d5f0c4be16cf39d0482ea494f5c88f03e75e5fef3a85177fecdeb \ - --hash=sha256:5c59fcd80b9049b49acd29bd3598cada4afc8d8d69bd4160cd613246912535d7 \ - --hash=sha256:653acc3880459f82a65e27bd6526e47ddf19e643457d36a2250b85b41a564715 \ - --hash=sha256:66bd5f950344fb2b3dbdd421aaa4e84f4411a1a13fca3aeb2bcbe667f80c9f76 \ - --hash=sha256:6f3553510abdbec67c043ca85727396ceed1272eef029b050677046d3387be8d \ - --hash=sha256:7018ecc5fe97027214556afbc7c502fbd718d0740e87eb1217b17efd05b3d276 \ - --hash=sha256:713d22cd9643ba9025d33c4af43943c7a1eb8547729228de18d3e02e278472b6 \ - --hash=sha256:73a4131962e6d91109bca6536416aa067cf6c4efb871975df734f8d2fd821b37 \ - --hash=sha256:75880ed07be39beff1881d81e4a907cafb802f306efd6d2d15f2b3c69935f6fb \ - --hash=sha256:75e14eac916f024305db517e00a9252714fce0abcb10ad327fb6dcdc0d060f1d \ - --hash=sha256:8135fa153a20d82ffb64f70a1b5c2738684afa197839b34cc3e3c72fa88d302c \ - --hash=sha256:84b14f36e85295fe69c6b9789b51a0903b774046d5f7df538176516c3e422446 \ - --hash=sha256:86fc24e58ecb32aee09f864cb11bb91bc4c1086615001647dbfc4dc8c32f4008 \ - --hash=sha256:87f44875f2804bc0511a69ce44a9595d5944837a62caecc8490bbdb0e18b1342 \ - --hash=sha256:88c70ed9da9963d5496d38320160e8eb7e5f1886f9290475a881db12f351ab5d \ - --hash=sha256:88e5be56c231981428f4f506c68b6a46fa25c4123a2e86d156c58a8369d31ab7 \ - --hash=sha256:89d2e02167fa95172c017732ed7725bc8523c598757f08d13c5acca308e1a061 \ - --hash=sha256:8d6aaa4e7155afaf994d7924eb290abbe81a6905b303d8cb61310a2aba1c68ba \ - --hash=sha256:92a2964319d359f494f16011e23434f6f8ef0434acd3cf154a6b7bec511e2fb7 \ - --hash=sha256:96372fc29471646b9b106ee918c8eeb4cca423fcbf9a34daa1b93767a88a2290 \ - --hash=sha256:978b046ca728073070e9abc074b6299ebf3501e8dee5e26efacb13cec2b2dea0 \ - --hash=sha256:9c7149272fb5834fc186328e2c1fa01dda3e1fa940ce18fded6d412e8f2cf76d \ - --hash=sha256:a0239da9fbafd9ff82fd67c16704a7d1bccf0d107a300e790587ad05547681c8 \ - --hash=sha256:ad5383a67514e8e76906a06741febd9126fc7c7ff0f599d6fcce3e82b80d026f \ - --hash=sha256:ad61a9639792fd790523ba072c0555cd6be5a0baf03a49a5dd8cfcf20d56df48 \ - --hash=sha256:b29bfd650ed8e148f9c515474a6ef0ba1090b7a8faeee26b74a8ff3b33617502 \ - --hash=sha256:b97decbb3372d4b69e4d4c8117f44632551c692bb1361b356a02b97b69e18a62 \ - --hash=sha256:ba71c9b4dcbb16212f334126cc3d8beb6af377f6703d9dc2d9fb3874fd667ee9 \ - --hash=sha256:c37c5cce780349d4d51739ae682dec63573847a2a8dcb44381b174c3d9c8d403 \ - --hash=sha256:c971bf3786b5fad82ce5ad570dc6ee420f5b12527157929e830f51c55dc8af77 \ - --hash=sha256:d1fde0f44029e02d02d3993ad55ce93ead9bb9b15c6b7ccd580f90bd7e3de476 \ - --hash=sha256:d24b8bb40d5c61ef2d9b6a8f4528c2f17f1c5d2d31fed62ec860f6006142e83e \ - --hash=sha256:d5ba88df9aa5e2f806650fcbeedbe4f6e8736e92fc0e73b0400538fd25a4dd96 \ - --hash=sha256:d6f76310355e9fae637c3162936e9504b4767d5c52ca268331e2756e54fd4ca5 \ - --hash=sha256:d737fc67b9a970f3234754974531dc9afeea11c70791dcb7db53b0cf81b79784 \ - --hash=sha256:da22885266bbfb3f78218dc40205fed2671909fbd0720aedba39b4515c038091 \ - --hash=sha256:da37dcfbf4b7f45d80ee386a5f81122501ec75672f475da34784196690762f4b \ - --hash=sha256:db19d60d846283ee275d0416e2a23493f4e6b6028825b51290ac05afc87a6f97 \ - --hash=sha256:db4c979b0b3e0fa7e9e69ecd11b2b3174c6963cebadeecfb7ad24532ffcdd11a \ - --hash=sha256:e164e0a98e92d06da343d17d4e9c4da4654f4a4588a20d6c73548a29f176abe2 \ - --hash=sha256:e168a7560b7c61342ae0412997b069753f27ac4862ec7867eff74f0fe4ea2ad9 \ - --hash=sha256:e381581b37db1db7597b62a2e6b8b57c3deec95d93b6d6407c5b61ddc98aca6d \ - --hash=sha256:e65bc19919c910127c06759a63747ebe14f386cda573d95bcc62b427ca1afc73 \ - --hash=sha256:e7b8813be97cab8cb52b1375f41f8e6804f6507fe4660152e8ca5c48f0436017 \ - --hash=sha256:e8a78079d9a39ca9ca99a8b0ac2fdc0c4d25fc80c8a8a82e5c8211509c523363 \ - --hash=sha256:ebf909ea0a3fc9596e40d55d8000702a85e27fd578ff41a5500f68f20fd32e6c \ - --hash=sha256:ec40170327d4a404b0d91855d41bfe1fe4b699222b2b93e3d833a27330a87a6d \ - --hash=sha256:f178d2aadf0166be4df834c4953da2d7eef24719e8aec9a65289483eeea9d618 \ - --hash=sha256:f88df3a83cf9df566f171adba39d5bd52814ac0b94778d2448652fc77f9eb491 \ - --hash=sha256:f973157ffeab5459eefe7b97a804987876dd0a55570b8fa56b4e1954bf11329b \ - --hash=sha256:ff25f48fc8e623d95eca0670b8cc1469a83783c924a602e0fbd47363bb54aaca - # via -r repositories/private/resolver_requirements.txt -aiosignal==1.2.0 \ - --hash=sha256:26e62109036cd181df6e6ad646f91f0dcfd05fe16d0cb924138ff2ab75d64e3a \ - --hash=sha256:78ed67db6c7b7ced4f98e495e572106d5c432a93e1ddd1bf475e1dc05f5b7df2 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:c3f9d0113123803ccadfdf3f0faa505bc78e6a72d1cc4806cbd719826e943558 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 # via aiohttp -async-timeout==4.0.2 \ - --hash=sha256:2163e1640ddb52b7a8c80d0a67a08587e5d245cc9c553a74a847056bc2976b15 \ - --hash=sha256:8ca1e4fcf50d07413d66d1a5e416e42cfdf5851c981d679a09851a6853383b3c +aiohttp==3.13.0 \ + --hash=sha256:00243e51f16f6ec0fb021659d4af92f675f3cf9f9b39efd142aa3ad641d8d1e6 \ + --hash=sha256:00fdfe370cffede3163ba9d3f190b32c0cfc8c774f6f67395683d7b0e48cdb8a \ + --hash=sha256:019dbef24fe28ce2301419dd63a2b97250d9760ca63ee2976c2da2e3f182f82e \ + --hash=sha256:052bcdd80c1c54b8a18a9ea0cd5e36f473dc8e38d51b804cea34841f677a9971 \ + --hash=sha256:059978d2fddc462e9211362cbc8446747ecd930537fa559d3d25c256f032ff54 \ + --hash=sha256:0a2be20eb23888df130214b91c262a90e2de1553d6fb7de9e9010cec994c0ff2 \ + --hash=sha256:0f1338b61ea66f4757a0544ed8a02ccbf60e38d9cfb3225888888dd4475ebb96 \ + --hash=sha256:0f19f7798996d4458c669bd770504f710014926e9970f4729cf55853ae200469 \ + --hash=sha256:0f735e680c323ee7e9ef8e2ea26425c7dbc2ede0086fa83ce9d7ccab8a089f26 \ + --hash=sha256:10b3f01d5aeb632adaaf39c5e93f040a550464a768d54c514050c635adcbb9d0 \ + --hash=sha256:12f5d820fadc5848d4559ea838aef733cf37ed2a1103bba148ac2f5547c14c29 \ + --hash=sha256:19ba8625fa69523627b67f7e9901b587a4952470f68814d79cdc5bc460e9b885 \ + --hash=sha256:19bb08e56f57c215e9572cd65cb6f8097804412c54081d933997ddde3e5ac579 \ + --hash=sha256:1c272a9a18a5ecc48a7101882230046b83023bb2a662050ecb9bfcb28d9ab53a \ + --hash=sha256:1ccedfe280e804d9a9d7fe8b8c4309d28e364b77f40309c86596baa754af50b1 \ + --hash=sha256:1f164699a060c0b3616459d13c1464a981fddf36f892f0a5027cbd45121fb14b \ + --hash=sha256:2117be9883501eaf95503bd313eb4c7a23d567edd44014ba15835a1e9ec6d852 \ + --hash=sha256:222c828243b4789d79a706a876910f656fad4381661691220ba57b2ab4547865 \ + --hash=sha256:23ca762140159417a6bbc959ca1927f6949711851e56f2181ddfe8d63512b5ad \ + --hash=sha256:240f99f88a9a6beb53ebadac79a2e3417247aa756202ed234b1dbae13d248092 \ + --hash=sha256:2c4aeaedd20771b7b4bcdf0ae791904445df6d856c02fc51d809d12d17cffdc7 \ + --hash=sha256:2d71ca30257ce756e37a6078b1dff2d9475fee13609ad831eac9a6531bea903b \ + --hash=sha256:2e66c57416352f36bf98f6641ddadd47c93740a22af7150d3e9a1ef6e983f9a8 \ + --hash=sha256:2f9d9ea547618d907f2ee6670c9a951f059c5994e4b6de8dcf7d9747b420c820 \ + --hash=sha256:2fd35177dc483ae702f07b86c782f4f4b100a8ce4e7c5778cea016979023d9fd \ + --hash=sha256:3194b8cab8dbc882f37c13ef1262e0a3d62064fa97533d3aa124771f7bf1ecee \ + --hash=sha256:34d8af6391c5f2e69749d7f037b614b8c5c42093c251f336bdbfa4b03c57d6c4 \ + --hash=sha256:378dbc57dd8cf341ce243f13fa1fa5394d68e2e02c15cd5f28eae35a70ec7f67 \ + --hash=sha256:3b1eb9871cbe43b6ca6fac3544682971539d8a1d229e6babe43446279679609d \ + --hash=sha256:3b3bdc89413117b40cc39baae08fd09cbdeb839d421c4e7dce6a34f6b54b3ac1 \ + --hash=sha256:3b64f22fbb6dcd5663de5ef2d847a5638646ef99112503e6f7704bdecb0d1c4d \ + --hash=sha256:3c11fa5dd2ef773a8a5a6daa40243d83b450915992eab021789498dc87acc114 \ + --hash=sha256:3e6a38366f7f0d0f6ed7a1198055150c52fda552b107dad4785c0852ad7685d1 \ + --hash=sha256:3e77a729df23be2116acc4e9de2767d8e92445fbca68886dd991dc912f473755 \ + --hash=sha256:469167d5372f5bb3aedff4fc53035d593884fff2617a75317740e885acd48b04 \ + --hash=sha256:4696665b2713021c6eba3e2b882a86013763b442577fe5d2056a42111e732eca \ + --hash=sha256:474cade59a447cb4019c0dce9f0434bf835fb558ea932f62c686fe07fe6db6a1 \ + --hash=sha256:475bd56492ce5f4cffe32b5533c6533ee0c406d1d0e6924879f83adcf51da0ae \ + --hash=sha256:48fcdd5bc771cbbab8ccc9588b8b6447f6a30f9fe00898b1a5107098e00d6793 \ + --hash=sha256:49ce7525853a981fc35d380aa2353536a01a9ec1b30979ea4e35966316cace7e \ + --hash=sha256:4aa995b9156ae499393d949a456a7ab0b994a8241a96db73a3b73c7a090eff6a \ + --hash=sha256:4af1f8877ca46ecdd0bc0d4a6b66d4b2bddc84a79e2e8366bc0d5308e76bceb8 \ + --hash=sha256:4b14bfae90598d331b5061fd15a7c290ea0c15b34aeb1cf620464bb5ec02a602 \ + --hash=sha256:4df1984c8804ed336089e88ac81a9417b1fd0db7c6f867c50a9264488797e778 \ + --hash=sha256:5004d727499ecb95f7c9147dd0bfc5b5670f71d355f0bd26d7af2d3af8e07d2f \ + --hash=sha256:55ca0e95a3905f62f00900255ed807c580775174252999286f283e646d675a49 \ + --hash=sha256:564b36512a7da3b386143c611867e3f7cfb249300a1bf60889bd9985da67ab77 \ + --hash=sha256:564be41e85318403fdb176e9e5b3e852d528392f42f2c1d1efcbeeed481126d7 \ + --hash=sha256:56f7d230ec66e799fbfd8350e9544f8a45a4353f1cf40c1fea74c1780f555b8f \ + --hash=sha256:582770f82513419512da096e8df21ca44f86a2e56e25dc93c5ab4df0fe065bf0 \ + --hash=sha256:5ae3a19949a27982c7425a7a5a963c1268fdbabf0be15ab59448cbcf0f992519 \ + --hash=sha256:5b8a5557d5af3f4e3add52a58c4cf2b8e6e59fc56b261768866f5337872d596d \ + --hash=sha256:5bf635c3476f4119b940cc8d94ad454cbe0c377e61b4527f0192aabeac1e9370 \ + --hash=sha256:62a3cddf8d9a2eae1f79585fa81d32e13d0c509bb9e7ad47d33c83b45a944df7 \ + --hash=sha256:62d8a0adcdaf62ee56bfb37737153251ac8e4b27845b3ca065862fb01d99e247 \ + --hash=sha256:62fd54f3e6f17976962ba67f911d62723c760a69d54f5d7b74c3ceb1a4e9ef8d \ + --hash=sha256:6475e42ef92717a678bfbf50885a682bb360a6f9c8819fb1a388d98198fdcb80 \ + --hash=sha256:682d2e434ff2f1108314ff7f056ce44e457f12dbed0249b24e106e385cf154b9 \ + --hash=sha256:6a51839f778b0e283b43cd82bb17f1835ee2cc1bf1101765e90ae886e53e751c \ + --hash=sha256:6b4174fcec98601f0cfdf308ee29a6ae53c55f14359e848dab4e94009112ee7d \ + --hash=sha256:6b9697d15231aeaed4786f090c9c8bc3ab5f0e0a6da1e76c135a310def271020 \ + --hash=sha256:6c333a2385d2a6298265f4b3e960590f787311b87f6b5e6e21bb8375914ef504 \ + --hash=sha256:703ad3f742fc81e543638a7bebddd35acadaa0004a5e00535e795f4b6f2c25ca \ + --hash=sha256:72714919ed9b90f030f761c20670e529c4af96c31bd000917dd0c9afd1afb731 \ + --hash=sha256:76484ba17b2832776581b7ab466d094e48eba74cb65a60aea20154dae485e8bd \ + --hash=sha256:77da5305a410910218b99f2a963092f4277d8a9c1f429c1ff1b026d1826bd0b6 \ + --hash=sha256:7897298b3eedc790257fef8a6ec582ca04e9dbe568ba4a9a890913b925b8ea21 \ + --hash=sha256:7972c82bed87d7bd8e374b60a6b6e816d75ba4f7c2627c2d14eed216e62738e1 \ + --hash=sha256:7c20db99da682f9180fa5195c90b80b159632fb611e8dbccdd99ba0be0970620 \ + --hash=sha256:7c2c4c9ce834801651f81d6760d0a51035b8b239f58f298de25162fcf6f8bb64 \ + --hash=sha256:7ddedba3d0043349edc79df3dc2da49c72b06d59a45a42c1c8d987e6b8d175b8 \ + --hash=sha256:84912962071087286333f70569362e10793f73f45c48854e6859df11001eb2d3 \ + --hash=sha256:90b570f1a146181c3d6ae8f755de66227ded49d30d050479b5ae07710f7894c5 \ + --hash=sha256:97891a23d7fd4e1afe9c2f4473e04595e4acb18e4733b910b6577b74e7e21985 \ + --hash=sha256:990a53b9d6a30b2878789e490758e568b12b4a7fb2527d0c89deb9650b0e5813 \ + --hash=sha256:99a303ad960747c33b65b1cb65d01a62ac73fa39b72f08a2e1efa832529b01ed \ + --hash=sha256:99eb94e97a42367fef5fc11e28cb2362809d3e70837f6e60557816c7106e2e20 \ + --hash=sha256:a1c20c26af48aea984f63f96e5d7af7567c32cb527e33b60a0ef0a6313cf8b03 \ + --hash=sha256:a4676b978a9711531e7cea499d4cdc0794c617a1c0579310ab46c9fdf5877702 \ + --hash=sha256:a4dc0b83e25267f42ef065ea57653de4365b56d7bc4e4cfc94fabe56998f8ee6 \ + --hash=sha256:a533873a7a4ec2270fb362ee5a0d3b98752e4e1dc9042b257cd54545a96bd8ed \ + --hash=sha256:a6d9487b9471ec36b0faedf52228cd732e89be0a2bbd649af890b5e2ce422353 \ + --hash=sha256:a921edbe971aade1bf45bcbb3494e30ba6863a5c78f28be992c42de980fd9108 \ + --hash=sha256:a9f3546b503975a69b547c9fd1582cad10ede1ce6f3e313a2f547c73a3d7814f \ + --hash=sha256:aab715b1a0c37f7f11f9f1f579c6fbaa51ef569e47e3c0a4644fba46077a9409 \ + --hash=sha256:ac90cfab65bc281d6752f22db5fa90419e33220af4b4fa53b51f5948f414c0e7 \ + --hash=sha256:b3a8e6a2058a0240cfde542b641d0e78b594311bc1a710cbcb2e1841417d5cb3 \ + --hash=sha256:bb34001fc1f05f6b323e02c278090c07a47645caae3aa77ed7ed8a3ce6abcce9 \ + --hash=sha256:bc95c49853cd29613e4fe4ff96d73068ff89b89d61e53988442e127e8da8e7ba \ + --hash=sha256:bfe824d6707a5dc3c5676685f624bc0c63c40d79dc0239a7fd6c034b98c25ebe \ + --hash=sha256:c32ada0abb4bc94c30be2b681c42f058ab104d048da6f0148280a51ce98add8c \ + --hash=sha256:c417f8c2e1137775569297c584a8a7144e5d1237789eae56af4faf1894a0b861 \ + --hash=sha256:c811612711e01b901e18964b3e5dec0d35525150f5f3f85d0aee2935f059910a \ + --hash=sha256:ca69ec38adf5cadcc21d0b25e2144f6a25b7db7bea7e730bac25075bc305eff0 \ + --hash=sha256:ca8313cb852af788c78d5afdea24c40172cbfff8b35e58b407467732fde20390 \ + --hash=sha256:cc6d5fc5edbfb8041d9607f6a417997fa4d02de78284d386bea7ab767b5ea4f3 \ + --hash=sha256:cd45eb70eca63f41bb156b7dffbe1a7760153b69892d923bdb79a74099e2ed90 \ + --hash=sha256:ce887c5e54411d607ee0959cac15bb31d506d86a9bcaddf0b7e9d63325a7a802 \ + --hash=sha256:cf2b60b65df05b6b2fa0d887f2189991a0dbf44a0dd18359001dc8fcdb7f1163 \ + --hash=sha256:cf7a4b976da219e726d0043fc94ae8169c0dba1d3a059b3c1e2c964bafc5a77d \ + --hash=sha256:cf8b0870047900eb1f17f453b4b3953b8ffbf203ef56c2f346780ff930a4d430 \ + --hash=sha256:cfe6285ef99e7ee51cef20609be2bc1dd0e8446462b71c9db8bb296ba632810a \ + --hash=sha256:d169c47e40c911f728439da853b6fd06da83761012e6e76f11cb62cddae7282b \ + --hash=sha256:d812838c109757a11354a161c95708ae4199c4fd4d82b90959b20914c1d097f6 \ + --hash=sha256:d871f6a30d43e32fc9252dc7b9febe1a042b3ff3908aa83868d7cf7c9579a59b \ + --hash=sha256:dea698b64235d053def7d2f08af9302a69fcd760d1c7bd9988fd5d3b6157e657 \ + --hash=sha256:df46d9a3d78ec19b495b1107bf26e4fcf97c900279901f4f4819ac5bb2a02a4c \ + --hash=sha256:e04ab827ec4f775817736b20cdc8350f40327f9b598dec4e18c9ffdcbea88a93 \ + --hash=sha256:e68c0076052dd911a81d3acc4ef2911cc4ef65bf7cadbfbc8ae762da24da858f \ + --hash=sha256:e88ab34826d6eeb6c67e6e92400b9ec653faf5092a35f07465f44c9f1c429f82 \ + --hash=sha256:ea01ffbe23df53ece0c8732d1585b3d6079bb8c9ee14f3745daf000051415a31 \ + --hash=sha256:ea6df292013c9f050cbf3f93eee9953d6e5acd9e64a0bf4ca16404bfd7aa9bcc \ + --hash=sha256:ee433e594d7948e760b5c2a78cc06ac219df33b0848793cf9513d486a9f90a52 \ + --hash=sha256:eeea0cdd2f687e210c8f605f322d7b0300ba55145014a5dbe98bd4be6fff1f6c \ + --hash=sha256:f27b7488144eb5dd9151cf839b195edd1569629d90ace4c5b6b18e4e75d1e63a \ + --hash=sha256:f84b53326abf8e56ebc28a35cebf4a0f396a13a76300f500ab11fe0573bf0b52 \ + --hash=sha256:f8d877aa60d80715b2afc565f0f1aea66565824c229a2d065b31670e09fed6d7 \ + --hash=sha256:f8e38d55ca36c15f36d814ea414ecb2401d860de177c49f84a327a25b3ee752b \ + --hash=sha256:f91e8f9053a07177868e813656ec57599cd2a63238844393cd01bd69c2e40147 \ + --hash=sha256:fcc425fb6fd2a00c6d91c85d084c6b75a61bc8bc12159d08e17c5711df6c5ba4 + # via -r repositories/private/resolver_requirements.txt +aiosignal==1.4.0 \ + --hash=sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e \ + --hash=sha256:f47eecd9468083c2029cc99945502cb7708b082c232f9aca65da147157b251c7 # via aiohttp -attrs==22.1.0 \ - --hash=sha256:29adc2665447e5191d0e7c568fde78b21f9672d344281d0c6e1ab085429b22b6 \ - --hash=sha256:86efa402f67bf2df34f51a335487cf46b1ec130d02b8d39fd248abfd30da551c +async-timeout==5.0.1 \ + --hash=sha256:39e3809566ff85354557ec2398b55e096c8364bacac9405a7a1fa429e77fe76c \ + --hash=sha256:d9321a7a3d5a6a5e187e824d2fa0793ce379a202935782d555d6e9d2735677d3 + # via -r repositories/private/resolver_requirements.txt +attrs==25.4.0 \ + --hash=sha256:16d5969b87f0859ef33a48b35d55ac1be6e42ae49d5e853b597db70c35c57e11 \ + --hash=sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373 # via aiohttp -caio==0.9.8 \ - --hash=sha256:0ab003c48679d00b83992d68012c1126e4b91d6c27d16f363d0e5c9a499898e9 \ - --hash=sha256:2316252dbb16195b0292a5dd665901966c080001d0ceed8540f98c073b921b0c \ - --hash=sha256:38a30e7e0184b45a54fbc757ac3e1a2b8eb9c41f362d2f4bf5854d50bff73c6d \ - --hash=sha256:65395113a506efb605d90c75438686718c1d4784bc029e04d235adcf5d5d3a39 \ - --hash=sha256:70c9556dc003df1e3ea8dca5cc32ef0bb9213cfbc5a2b80003ba37018689326f \ - --hash=sha256:7275e5ca3a4960d40ca509ed19d7d23ea0156dbb4ac5834cf08724c989f8be24 \ - --hash=sha256:c3704fba1781c252d5dcfce4e81dc5af2d50a61062f00fc74dd252a419af8918 \ - --hash=sha256:d29709f5ff9582d00ebed37327f14e247eedf33e18d4b35a6af6ab30cc8df9b7 \ - --hash=sha256:e9969edea88caf2d38059fe7164d1271f8ba6d94d39e890a9bdbabca483a9a19 \ - --hash=sha256:f748b0605b9b95bfa58c81a5373555d4c82228f9b3dfd608de706a906fe703f9 +caio==0.9.24 \ + --hash=sha256:08304fa80af7771c78a5bcc923449c7ec8134d589b50d48c66320f85552c7ae2 \ + --hash=sha256:1d47ef8d76aca74c17cb07339a441c5530fc4b8dd9222dfb1e1abd7f9f9b814f \ + --hash=sha256:37bc172349686139e8dc97fff7662c67b1837e18a67b99e8ef25585f2893d013 \ + --hash=sha256:3b4dc0a8fb9a58ab40f967ad5a8a858cc0bfb2348a580b4142595849457f9c9a \ + --hash=sha256:3f0e5a645ef4e7bb7a81e10ae2a7aef14988cb2cb4354588c6bf6f6f3f6de72a \ + --hash=sha256:5339ced0764e10242a50ccb21db7f0d9c359881db0f72fa2c5e45ed828ffacf7 \ + --hash=sha256:5bcdecaea02a9aa8e3acf0364eff8ad9903d57d70cdb274a42270126290a77f1 \ + --hash=sha256:7ae3566228383175265a7583107f21a7cb044a752ea29ba84fce7c1a49a05903 \ + --hash=sha256:8ee158e56128d865fb7d57a9c9c22fca4e8aa8d8664859c977a36fff3ccb3609 \ + --hash=sha256:925b9e3748ce1a79386dfb921c0aee450e43225534551abd1398b1c08f9ba29f \ + --hash=sha256:9368eae0a9badd5f31264896c51b47431d96c0d46f1979018fb1d20c49f56156 \ + --hash=sha256:a306b0dda91cb4ca3170f066c114597f8ea41b3da578574a9d2b54f86963de68 \ + --hash=sha256:ad7f0902bf952237e120606252c14ab3cb05995c9f79f39154b5248744864832 \ + --hash=sha256:d15fc746c4bf0077d75df05939d1e97c07ccaa8e580681a77021d6929f65d9f4 \ + --hash=sha256:d80322126a97ba572412b17b2f086ff95195de2c4261deb19db6bfcdc9ef7540 \ + --hash=sha256:fa74d111b3b165bfad2e333367976bdf118bcf505a1cb44d3bcddea2849e3297 # via aiofile -charset-normalizer==2.1.1 \ - --hash=sha256:5a3d016c7c547f69d6f81fb0db9449ce888b418b5b9952cc5e6e66843e9dd845 \ - --hash=sha256:83e9a75d1911279afd89352c68b45348559d1fc0506b054b346651b5e7fee29f - # via aiohttp -frozenlist==1.3.1 \ - --hash=sha256:022178b277cb9277d7d3b3f2762d294f15e85cd2534047e68a118c2bb0058f3e \ - --hash=sha256:086ca1ac0a40e722d6833d4ce74f5bf1aba2c77cbfdc0cd83722ffea6da52a04 \ - --hash=sha256:0bc75692fb3770cf2b5856a6c2c9de967ca744863c5e89595df64e252e4b3944 \ - --hash=sha256:0dde791b9b97f189874d654c55c24bf7b6782343e14909c84beebd28b7217845 \ - --hash=sha256:12607804084d2244a7bd4685c9d0dca5df17a6a926d4f1967aa7978b1028f89f \ - --hash=sha256:19127f8dcbc157ccb14c30e6f00392f372ddb64a6ffa7106b26ff2196477ee9f \ - --hash=sha256:1b51eb355e7f813bcda00276b0114c4172872dc5fb30e3fea059b9367c18fbcb \ - --hash=sha256:1e1cf7bc8cbbe6ce3881863671bac258b7d6bfc3706c600008925fb799a256e2 \ - --hash=sha256:219a9676e2eae91cb5cc695a78b4cb43d8123e4160441d2b6ce8d2c70c60e2f3 \ - --hash=sha256:2743bb63095ef306041c8f8ea22bd6e4d91adabf41887b1ad7886c4c1eb43d5f \ - --hash=sha256:2af6f7a4e93f5d08ee3f9152bce41a6015b5cf87546cb63872cc19b45476e98a \ - --hash=sha256:31b44f1feb3630146cffe56344704b730c33e042ffc78d21f2125a6a91168131 \ - --hash=sha256:31bf9539284f39ff9398deabf5561c2b0da5bb475590b4e13dd8b268d7a3c5c1 \ - --hash=sha256:35c3d79b81908579beb1fb4e7fcd802b7b4921f1b66055af2578ff7734711cfa \ - --hash=sha256:3a735e4211a04ccfa3f4833547acdf5d2f863bfeb01cfd3edaffbc251f15cec8 \ - --hash=sha256:42719a8bd3792744c9b523674b752091a7962d0d2d117f0b417a3eba97d1164b \ - --hash=sha256:49459f193324fbd6413e8e03bd65789e5198a9fa3095e03f3620dee2f2dabff2 \ - --hash=sha256:4c0c99e31491a1d92cde8648f2e7ccad0e9abb181f6ac3ddb9fc48b63301808e \ - --hash=sha256:52137f0aea43e1993264a5180c467a08a3e372ca9d378244c2d86133f948b26b \ - --hash=sha256:526d5f20e954d103b1d47232e3839f3453c02077b74203e43407b962ab131e7b \ - --hash=sha256:53b2b45052e7149ee8b96067793db8ecc1ae1111f2f96fe1f88ea5ad5fd92d10 \ - --hash=sha256:572ce381e9fe027ad5e055f143763637dcbac2542cfe27f1d688846baeef5170 \ - --hash=sha256:58fb94a01414cddcdc6839807db77ae8057d02ddafc94a42faee6004e46c9ba8 \ - --hash=sha256:5e77a8bd41e54b05e4fb2708dc6ce28ee70325f8c6f50f3df86a44ecb1d7a19b \ - --hash=sha256:5f271c93f001748fc26ddea409241312a75e13466b06c94798d1a341cf0e6989 \ - --hash=sha256:5f63c308f82a7954bf8263a6e6de0adc67c48a8b484fab18ff87f349af356efd \ - --hash=sha256:61d7857950a3139bce035ad0b0945f839532987dfb4c06cfe160254f4d19df03 \ - --hash=sha256:61e8cb51fba9f1f33887e22488bad1e28dd8325b72425f04517a4d285a04c519 \ - --hash=sha256:625d8472c67f2d96f9a4302a947f92a7adbc1e20bedb6aff8dbc8ff039ca6189 \ - --hash=sha256:6e19add867cebfb249b4e7beac382d33215d6d54476bb6be46b01f8cafb4878b \ - --hash=sha256:717470bfafbb9d9be624da7780c4296aa7935294bd43a075139c3d55659038ca \ - --hash=sha256:74140933d45271c1a1283f708c35187f94e1256079b3c43f0c2267f9db5845ff \ - --hash=sha256:74e6b2b456f21fc93ce1aff2b9728049f1464428ee2c9752a4b4f61e98c4db96 \ - --hash=sha256:9494122bf39da6422b0972c4579e248867b6b1b50c9b05df7e04a3f30b9a413d \ - --hash=sha256:94e680aeedc7fd3b892b6fa8395b7b7cc4b344046c065ed4e7a1e390084e8cb5 \ - --hash=sha256:97d9e00f3ac7c18e685320601f91468ec06c58acc185d18bb8e511f196c8d4b2 \ - --hash=sha256:9c6ef8014b842f01f5d2b55315f1af5cbfde284eb184075c189fd657c2fd8204 \ - --hash=sha256:a027f8f723d07c3f21963caa7d585dcc9b089335565dabe9c814b5f70c52705a \ - --hash=sha256:a718b427ff781c4f4e975525edb092ee2cdef6a9e7bc49e15063b088961806f8 \ - --hash=sha256:ab386503f53bbbc64d1ad4b6865bf001414930841a870fc97f1546d4d133f141 \ - --hash=sha256:ab6fa8c7871877810e1b4e9392c187a60611fbf0226a9e0b11b7b92f5ac72792 \ - --hash=sha256:b47d64cdd973aede3dd71a9364742c542587db214e63b7529fbb487ed67cddd9 \ - --hash=sha256:b499c6abe62a7a8d023e2c4b2834fce78a6115856ae95522f2f974139814538c \ - --hash=sha256:bbb1a71b1784e68870800b1bc9f3313918edc63dbb8f29fbd2e767ce5821696c \ - --hash=sha256:c3b31180b82c519b8926e629bf9f19952c743e089c41380ddca5db556817b221 \ - --hash=sha256:c56c299602c70bc1bb5d1e75f7d8c007ca40c9d7aebaf6e4ba52925d88ef826d \ - --hash=sha256:c92deb5d9acce226a501b77307b3b60b264ca21862bd7d3e0c1f3594022f01bc \ - --hash=sha256:cc2f3e368ee5242a2cbe28323a866656006382872c40869b49b265add546703f \ - --hash=sha256:d82bed73544e91fb081ab93e3725e45dd8515c675c0e9926b4e1f420a93a6ab9 \ - --hash=sha256:da1cdfa96425cbe51f8afa43e392366ed0b36ce398f08b60de6b97e3ed4affef \ - --hash=sha256:da5ba7b59d954f1f214d352308d1d86994d713b13edd4b24a556bcc43d2ddbc3 \ - --hash=sha256:e0c8c803f2f8db7217898d11657cb6042b9b0553a997c4a0601f48a691480fab \ - --hash=sha256:ee4c5120ddf7d4dd1eaf079af3af7102b56d919fa13ad55600a4e0ebe532779b \ - --hash=sha256:eee0c5ecb58296580fc495ac99b003f64f82a74f9576a244d04978a7e97166db \ - --hash=sha256:f5abc8b4d0c5b556ed8cd41490b606fe99293175a82b98e652c3f2711b452988 \ - --hash=sha256:f810e764617b0748b49a731ffaa525d9bb36ff38332411704c2400125af859a6 \ - --hash=sha256:f89139662cc4e65a4813f4babb9ca9544e42bddb823d2ec434e18dad582543bc \ - --hash=sha256:fa47319a10e0a076709644a0efbcaab9e91902c8bd8ef74c6adb19d320f69b83 \ - --hash=sha256:fabb953ab913dadc1ff9dcc3a7a7d3dc6a92efab3a0373989b8063347f8705be +frozenlist==1.8.0 \ + --hash=sha256:0325024fe97f94c41c08872db482cf8ac4800d80e79222c6b0b7b162d5b13686 \ + --hash=sha256:032efa2674356903cd0261c4317a561a6850f3ac864a63fc1583147fb05a79b0 \ + --hash=sha256:03ae967b4e297f58f8c774c7eabcce57fe3c2434817d4385c50661845a058121 \ + --hash=sha256:06be8f67f39c8b1dc671f5d83aaefd3358ae5cdcf8314552c57e7ed3e6475bdd \ + --hash=sha256:073f8bf8becba60aa931eb3bc420b217bb7d5b8f4750e6f8b3be7f3da85d38b7 \ + --hash=sha256:07cdca25a91a4386d2e76ad992916a85038a9b97561bf7a3fd12d5d9ce31870c \ + --hash=sha256:09474e9831bc2b2199fad6da3c14c7b0fbdd377cce9d3d77131be28906cb7d84 \ + --hash=sha256:0c18a16eab41e82c295618a77502e17b195883241c563b00f0aa5106fc4eaa0d \ + --hash=sha256:0f96534f8bfebc1a394209427d0f8a63d343c9779cda6fc25e8e121b5fd8555b \ + --hash=sha256:102e6314ca4da683dca92e3b1355490fed5f313b768500084fbe6371fddfdb79 \ + --hash=sha256:11847b53d722050808926e785df837353bd4d75f1d494377e59b23594d834967 \ + --hash=sha256:119fb2a1bd47307e899c2fac7f28e85b9a543864df47aa7ec9d3c1b4545f096f \ + --hash=sha256:13d23a45c4cebade99340c4165bd90eeb4a56c6d8a9d8aa49568cac19a6d0dc4 \ + --hash=sha256:154e55ec0655291b5dd1b8731c637ecdb50975a2ae70c606d100750a540082f7 \ + --hash=sha256:168c0969a329b416119507ba30b9ea13688fafffac1b7822802537569a1cb0ef \ + --hash=sha256:17c883ab0ab67200b5f964d2b9ed6b00971917d5d8a92df149dc2c9779208ee9 \ + --hash=sha256:1a7607e17ad33361677adcd1443edf6f5da0ce5e5377b798fba20fae194825f3 \ + --hash=sha256:1a7fa382a4a223773ed64242dbe1c9c326ec09457e6b8428efb4118c685c3dfd \ + --hash=sha256:1aa77cb5697069af47472e39612976ed05343ff2e84a3dcf15437b232cbfd087 \ + --hash=sha256:1b9290cf81e95e93fdf90548ce9d3c1211cf574b8e3f4b3b7cb0537cf2227068 \ + --hash=sha256:20e63c9493d33ee48536600d1a5c95eefc870cd71e7ab037763d1fbb89cc51e7 \ + --hash=sha256:21900c48ae04d13d416f0e1e0c4d81f7931f73a9dfa0b7a8746fb2fe7dd970ed \ + --hash=sha256:229bf37d2e4acdaf808fd3f06e854a4a7a3661e871b10dc1f8f1896a3b05f18b \ + --hash=sha256:2552f44204b744fba866e573be4c1f9048d6a324dfe14475103fd51613eb1d1f \ + --hash=sha256:27c6e8077956cf73eadd514be8fb04d77fc946a7fe9f7fe167648b0b9085cc25 \ + --hash=sha256:28bd570e8e189d7f7b001966435f9dac6718324b5be2990ac496cf1ea9ddb7fe \ + --hash=sha256:294e487f9ec720bd8ffcebc99d575f7eff3568a08a253d1ee1a0378754b74143 \ + --hash=sha256:29548f9b5b5e3460ce7378144c3010363d8035cea44bc0bf02d57f5a685e084e \ + --hash=sha256:2c5dcbbc55383e5883246d11fd179782a9d07a986c40f49abe89ddf865913930 \ + --hash=sha256:2dc43a022e555de94c3b68a4ef0b11c4f747d12c024a520c7101709a2144fb37 \ + --hash=sha256:2f05983daecab868a31e1da44462873306d3cbfd76d1f0b5b69c473d21dbb128 \ + --hash=sha256:33139dc858c580ea50e7e60a1b0ea003efa1fd42e6ec7fdbad78fff65fad2fd2 \ + --hash=sha256:332db6b2563333c5671fecacd085141b5800cb866be16d5e3eb15a2086476675 \ + --hash=sha256:33f48f51a446114bc5d251fb2954ab0164d5be02ad3382abcbfe07e2531d650f \ + --hash=sha256:34187385b08f866104f0c0617404c8eb08165ab1272e884abc89c112e9c00746 \ + --hash=sha256:342c97bf697ac5480c0a7ec73cd700ecfa5a8a40ac923bd035484616efecc2df \ + --hash=sha256:3462dd9475af2025c31cc61be6652dfa25cbfb56cbbf52f4ccfe029f38decaf8 \ + --hash=sha256:39ecbc32f1390387d2aa4f5a995e465e9e2f79ba3adcac92d68e3e0afae6657c \ + --hash=sha256:3e0761f4d1a44f1d1a47996511752cf3dcec5bbdd9cc2b4fe595caf97754b7a0 \ + --hash=sha256:3ede829ed8d842f6cd48fc7081d7a41001a56f1f38603f9d49bf3020d59a31ad \ + --hash=sha256:3ef2d026f16a2b1866e1d86fc4e1291e1ed8a387b2c333809419a2f8b3a77b82 \ + --hash=sha256:405e8fe955c2280ce66428b3ca55e12b3c4e9c336fb2103a4937e891c69a4a29 \ + --hash=sha256:42145cd2748ca39f32801dad54aeea10039da6f86e303659db90db1c4b614c8c \ + --hash=sha256:4314debad13beb564b708b4a496020e5306c7333fa9a3ab90374169a20ffab30 \ + --hash=sha256:433403ae80709741ce34038da08511d4a77062aa924baf411ef73d1146e74faf \ + --hash=sha256:44389d135b3ff43ba8cc89ff7f51f5a0bb6b63d829c8300f79a2fe4fe61bcc62 \ + --hash=sha256:48e6d3f4ec5c7273dfe83ff27c91083c6c9065af655dc2684d2c200c94308bb5 \ + --hash=sha256:494a5952b1c597ba44e0e78113a7266e656b9794eec897b19ead706bd7074383 \ + --hash=sha256:4970ece02dbc8c3a92fcc5228e36a3e933a01a999f7094ff7c23fbd2beeaa67c \ + --hash=sha256:4e0c11f2cc6717e0a741f84a527c52616140741cd812a50422f83dc31749fb52 \ + --hash=sha256:50066c3997d0091c411a66e710f4e11752251e6d2d73d70d8d5d4c76442a199d \ + --hash=sha256:517279f58009d0b1f2e7c1b130b377a349405da3f7621ed6bfae50b10adf20c1 \ + --hash=sha256:54b2077180eb7f83dd52c40b2750d0a9f175e06a42e3213ce047219de902717a \ + --hash=sha256:5500ef82073f599ac84d888e3a8c1f77ac831183244bfd7f11eaa0289fb30714 \ + --hash=sha256:581ef5194c48035a7de2aefc72ac6539823bb71508189e5de01d60c9dcd5fa65 \ + --hash=sha256:59a6a5876ca59d1b63af8cd5e7ffffb024c3dc1e9cf9301b21a2e76286505c95 \ + --hash=sha256:5a3a935c3a4e89c733303a2d5a7c257ea44af3a56c8202df486b7f5de40f37e1 \ + --hash=sha256:5c1c8e78426e59b3f8005e9b19f6ff46e5845895adbde20ece9218319eca6506 \ + --hash=sha256:5d63a068f978fc69421fb0e6eb91a9603187527c86b7cd3f534a5b77a592b888 \ + --hash=sha256:667c3777ca571e5dbeb76f331562ff98b957431df140b54c85fd4d52eea8d8f6 \ + --hash=sha256:6da155091429aeba16851ecb10a9104a108bcd32f6c1642867eadaee401c1c41 \ + --hash=sha256:6dc4126390929823e2d2d9dc79ab4046ed74680360fc5f38b585c12c66cdf459 \ + --hash=sha256:7398c222d1d405e796970320036b1b563892b65809d9e5261487bb2c7f7b5c6a \ + --hash=sha256:74c51543498289c0c43656701be6b077f4b265868fa7f8a8859c197006efb608 \ + --hash=sha256:776f352e8329135506a1d6bf16ac3f87bc25b28e765949282dcc627af36123aa \ + --hash=sha256:778a11b15673f6f1df23d9586f83c4846c471a8af693a22e066508b77d201ec8 \ + --hash=sha256:78f7b9e5d6f2fdb88cdde9440dc147259b62b9d3b019924def9f6478be254ac1 \ + --hash=sha256:799345ab092bee59f01a915620b5d014698547afd011e691a208637312db9186 \ + --hash=sha256:7bf6cdf8e07c8151fba6fe85735441240ec7f619f935a5205953d58009aef8c6 \ + --hash=sha256:8009897cdef112072f93a0efdce29cd819e717fd2f649ee3016efd3cd885a7ed \ + --hash=sha256:80f85f0a7cc86e7a54c46d99c9e1318ff01f4687c172ede30fd52d19d1da1c8e \ + --hash=sha256:8585e3bb2cdea02fc88ffa245069c36555557ad3609e83be0ec71f54fd4abb52 \ + --hash=sha256:878be833caa6a3821caf85eb39c5ba92d28e85df26d57afb06b35b2efd937231 \ + --hash=sha256:8a76ea0f0b9dfa06f254ee06053d93a600865b3274358ca48a352ce4f0798450 \ + --hash=sha256:8b7b94a067d1c504ee0b16def57ad5738701e4ba10cec90529f13fa03c833496 \ + --hash=sha256:8d92f1a84bb12d9e56f818b3a746f3efba93c1b63c8387a73dde655e1e42282a \ + --hash=sha256:908bd3f6439f2fef9e85031b59fd4f1297af54415fb60e4254a95f75b3cab3f3 \ + --hash=sha256:92db2bf818d5cc8d9c1f1fc56b897662e24ea5adb36ad1f1d82875bd64e03c24 \ + --hash=sha256:940d4a017dbfed9daf46a3b086e1d2167e7012ee297fef9e1c545c4d022f5178 \ + --hash=sha256:957e7c38f250991e48a9a73e6423db1bb9dd14e722a10f6b8bb8e16a0f55f695 \ + --hash=sha256:96153e77a591c8adc2ee805756c61f59fef4cf4073a9275ee86fe8cba41241f7 \ + --hash=sha256:96f423a119f4777a4a056b66ce11527366a8bb92f54e541ade21f2374433f6d4 \ + --hash=sha256:97260ff46b207a82a7567b581ab4190bd4dfa09f4db8a8b49d1a958f6aa4940e \ + --hash=sha256:974b28cf63cc99dfb2188d8d222bc6843656188164848c4f679e63dae4b0708e \ + --hash=sha256:9ff15928d62a0b80bb875655c39bf517938c7d589554cbd2669be42d97c2cb61 \ + --hash=sha256:a6483e309ca809f1efd154b4d37dc6d9f61037d6c6a81c2dc7a15cb22c8c5dca \ + --hash=sha256:a88f062f072d1589b7b46e951698950e7da00442fc1cacbe17e19e025dc327ad \ + --hash=sha256:ac913f8403b36a2c8610bbfd25b8013488533e71e62b4b4adce9c86c8cea905b \ + --hash=sha256:adbeebaebae3526afc3c96fad434367cafbfd1b25d72369a9e5858453b1bb71a \ + --hash=sha256:b2a095d45c5d46e5e79ba1e5b9cb787f541a8dee0433836cea4b96a2c439dcd8 \ + --hash=sha256:b3210649ee28062ea6099cfda39e147fa1bc039583c8ee4481cb7811e2448c51 \ + --hash=sha256:b37f6d31b3dcea7deb5e9696e529a6aa4a898adc33db82da12e4c60a7c4d2011 \ + --hash=sha256:b4dec9482a65c54a5044486847b8a66bf10c9cb4926d42927ec4e8fd5db7fed8 \ + --hash=sha256:b4f3b365f31c6cd4af24545ca0a244a53688cad8834e32f56831c4923b50a103 \ + --hash=sha256:b6db2185db9be0a04fecf2f241c70b63b1a242e2805be291855078f2b404dd6b \ + --hash=sha256:b9be22a69a014bc47e78072d0ecae716f5eb56c15238acca0f43d6eb8e4a5bda \ + --hash=sha256:bac9c42ba2ac65ddc115d930c78d24ab8d4f465fd3fc473cdedfccadb9429806 \ + --hash=sha256:bf0a7e10b077bf5fb9380ad3ae8ce20ef919a6ad93b4552896419ac7e1d8e042 \ + --hash=sha256:c23c3ff005322a6e16f71bf8692fcf4d5a304aaafe1e262c98c6d4adc7be863e \ + --hash=sha256:c4c800524c9cd9bac5166cd6f55285957fcfc907db323e193f2afcd4d9abd69b \ + --hash=sha256:c7366fe1418a6133d5aa824ee53d406550110984de7637d65a178010f759c6ef \ + --hash=sha256:c8d1634419f39ea6f5c427ea2f90ca85126b54b50837f31497f3bf38266e853d \ + --hash=sha256:c9a63152fe95756b85f31186bddf42e4c02c6321207fd6601a1c89ebac4fe567 \ + --hash=sha256:cb89a7f2de3602cfed448095bab3f178399646ab7c61454315089787df07733a \ + --hash=sha256:cba69cb73723c3f329622e34bdbf5ce1f80c21c290ff04256cff1cd3c2036ed2 \ + --hash=sha256:cee686f1f4cadeb2136007ddedd0aaf928ab95216e7691c63e50a8ec066336d0 \ + --hash=sha256:cf253e0e1c3ceb4aaff6df637ce033ff6535fb8c70a764a8f46aafd3d6ab798e \ + --hash=sha256:d1eaff1d00c7751b7c6662e9c5ba6eb2c17a2306ba5e2a37f24ddf3cc953402b \ + --hash=sha256:d3bb933317c52d7ea5004a1c442eef86f426886fba134ef8cf4226ea6ee1821d \ + --hash=sha256:d4d3214a0f8394edfa3e303136d0575eece0745ff2b47bd2cb2e66dd92d4351a \ + --hash=sha256:d6a5df73acd3399d893dafc71663ad22534b5aa4f94e8a2fabfe856c3c1b6a52 \ + --hash=sha256:d8b7138e5cd0647e4523d6685b0eac5d4be9a184ae9634492f25c6eb38c12a47 \ + --hash=sha256:db1e72ede2d0d7ccb213f218df6a078a9c09a7de257c2fe8fcef16d5925230b1 \ + --hash=sha256:e25ac20a2ef37e91c1b39938b591457666a0fa835c7783c3a8f33ea42870db94 \ + --hash=sha256:e2de870d16a7a53901e41b64ffdf26f2fbb8917b3e6ebf398098d72c5b20bd7f \ + --hash=sha256:e4a3408834f65da56c83528fb52ce7911484f0d1eaf7b761fc66001db1646eff \ + --hash=sha256:eaa352d7047a31d87dafcacbabe89df0aa506abb5b1b85a2fb91bc3faa02d822 \ + --hash=sha256:eab8145831a0d56ec9c4139b6c3e594c7a83c2c8be25d5bcf2d86136a532287a \ + --hash=sha256:ec3cc8c5d4084591b4237c0a272cc4f50a5b03396a47d9caaf76f5d7b38a4f11 \ + --hash=sha256:edee74874ce20a373d62dc28b0b18b93f645633c2943fd90ee9d898550770581 \ + --hash=sha256:eefdba20de0d938cec6a89bd4d70f346a03108a19b9df4248d3cf0d88f1b0f51 \ + --hash=sha256:ef2b7b394f208233e471abc541cc6991f907ffd47dc72584acee3147899d6565 \ + --hash=sha256:f21f00a91358803399890ab167098c131ec2ddd5f8f5fd5fe9c9f2c6fcd91e40 \ + --hash=sha256:f4be2e3d8bc8aabd566f8d5b8ba7ecc09249d74ba3c9ed52e54dc23a293f0b92 \ + --hash=sha256:f57fb59d9f385710aa7060e89410aeb5058b99e62f4d16b08b91986b9a2140c2 \ + --hash=sha256:f6292f1de555ffcc675941d65fffffb0a5bcd992905015f85d0592201793e0e5 \ + --hash=sha256:f833670942247a14eafbb675458b4e61c82e002a148f49e68257b79296e865c4 \ + --hash=sha256:fa47e444b8ba08fffd1c18e8cdb9a75db1b6a27f17507522834ad13ed5922b93 \ + --hash=sha256:fb30f9626572a76dfe4293c7194a09fb1fe93ba94c7d4f720dfae3b646b45027 \ + --hash=sha256:fe3c58d2f5db5fbd18c2987cba06d51b0529f52bc3a6cdc33d3f4eab725104bd # via # aiohttp # aiosignal -idna==3.4 \ - --hash=sha256:814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4 \ - --hash=sha256:90b77e79eaa3eba6de819a0c442c0b4ceefc341a7a2ab77d7562bf49f425c5c2 +idna==3.10 \ + --hash=sha256:12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9 \ + --hash=sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3 # via yarl -multidict==6.0.2 \ - --hash=sha256:0327292e745a880459ef71be14e709aaea2f783f3537588fb4ed09b6c01bca60 \ - --hash=sha256:041b81a5f6b38244b34dc18c7b6aba91f9cdaf854d9a39e5ff0b58e2b5773b9c \ - --hash=sha256:0556a1d4ea2d949efe5fd76a09b4a82e3a4a30700553a6725535098d8d9fb672 \ - --hash=sha256:05f6949d6169878a03e607a21e3b862eaf8e356590e8bdae4227eedadacf6e51 \ - --hash=sha256:07a017cfa00c9890011628eab2503bee5872f27144936a52eaab449be5eaf032 \ - --hash=sha256:0b9e95a740109c6047602f4db4da9949e6c5945cefbad34a1299775ddc9a62e2 \ - --hash=sha256:19adcfc2a7197cdc3987044e3f415168fc5dc1f720c932eb1ef4f71a2067e08b \ - --hash=sha256:19d9bad105dfb34eb539c97b132057a4e709919ec4dd883ece5838bcbf262b80 \ - --hash=sha256:225383a6603c086e6cef0f2f05564acb4f4d5f019a4e3e983f572b8530f70c88 \ - --hash=sha256:23b616fdc3c74c9fe01d76ce0d1ce872d2d396d8fa8e4899398ad64fb5aa214a \ - --hash=sha256:2957489cba47c2539a8eb7ab32ff49101439ccf78eab724c828c1a54ff3ff98d \ - --hash=sha256:2d36e929d7f6a16d4eb11b250719c39560dd70545356365b494249e2186bc389 \ - --hash=sha256:2e4a0785b84fb59e43c18a015ffc575ba93f7d1dbd272b4cdad9f5134b8a006c \ - --hash=sha256:3368bf2398b0e0fcbf46d85795adc4c259299fec50c1416d0f77c0a843a3eed9 \ - --hash=sha256:373ba9d1d061c76462d74e7de1c0c8e267e9791ee8cfefcf6b0b2495762c370c \ - --hash=sha256:4070613ea2227da2bfb2c35a6041e4371b0af6b0be57f424fe2318b42a748516 \ - --hash=sha256:45183c96ddf61bf96d2684d9fbaf6f3564d86b34cb125761f9a0ef9e36c1d55b \ - --hash=sha256:4571f1beddff25f3e925eea34268422622963cd8dc395bb8778eb28418248e43 \ - --hash=sha256:47e6a7e923e9cada7c139531feac59448f1f47727a79076c0b1ee80274cd8eee \ - --hash=sha256:47fbeedbf94bed6547d3aa632075d804867a352d86688c04e606971595460227 \ - --hash=sha256:497988d6b6ec6ed6f87030ec03280b696ca47dbf0648045e4e1d28b80346560d \ - --hash=sha256:4bae31803d708f6f15fd98be6a6ac0b6958fcf68fda3c77a048a4f9073704aae \ - --hash=sha256:50bd442726e288e884f7be9071016c15a8742eb689a593a0cac49ea093eef0a7 \ - --hash=sha256:514fe2b8d750d6cdb4712346a2c5084a80220821a3e91f3f71eec11cf8d28fd4 \ - --hash=sha256:5774d9218d77befa7b70d836004a768fb9aa4fdb53c97498f4d8d3f67bb9cfa9 \ - --hash=sha256:5fdda29a3c7e76a064f2477c9aab1ba96fd94e02e386f1e665bca1807fc5386f \ - --hash=sha256:5ff3bd75f38e4c43f1f470f2df7a4d430b821c4ce22be384e1459cb57d6bb013 \ - --hash=sha256:626fe10ac87851f4cffecee161fc6f8f9853f0f6f1035b59337a51d29ff3b4f9 \ - --hash=sha256:6701bf8a5d03a43375909ac91b6980aea74b0f5402fbe9428fc3f6edf5d9677e \ - --hash=sha256:684133b1e1fe91eda8fa7447f137c9490a064c6b7f392aa857bba83a28cfb693 \ - --hash=sha256:6f3cdef8a247d1eafa649085812f8a310e728bdf3900ff6c434eafb2d443b23a \ - --hash=sha256:75bdf08716edde767b09e76829db8c1e5ca9d8bb0a8d4bd94ae1eafe3dac5e15 \ - --hash=sha256:7c40b7bbece294ae3a87c1bc2abff0ff9beef41d14188cda94ada7bcea99b0fb \ - --hash=sha256:8004dca28e15b86d1b1372515f32eb6f814bdf6f00952699bdeb541691091f96 \ - --hash=sha256:8064b7c6f0af936a741ea1efd18690bacfbae4078c0c385d7c3f611d11f0cf87 \ - --hash=sha256:89171b2c769e03a953d5969b2f272efa931426355b6c0cb508022976a17fd376 \ - --hash=sha256:8cbf0132f3de7cc6c6ce00147cc78e6439ea736cee6bca4f068bcf892b0fd658 \ - --hash=sha256:9cc57c68cb9139c7cd6fc39f211b02198e69fb90ce4bc4a094cf5fe0d20fd8b0 \ - --hash=sha256:a007b1638e148c3cfb6bf0bdc4f82776cef0ac487191d093cdc316905e504071 \ - --hash=sha256:a2c34a93e1d2aa35fbf1485e5010337c72c6791407d03aa5f4eed920343dd360 \ - --hash=sha256:a45e1135cb07086833ce969555df39149680e5471c04dfd6a915abd2fc3f6dbc \ - --hash=sha256:ac0e27844758d7177989ce406acc6a83c16ed4524ebc363c1f748cba184d89d3 \ - --hash=sha256:aef9cc3d9c7d63d924adac329c33835e0243b5052a6dfcbf7732a921c6e918ba \ - --hash=sha256:b9d153e7f1f9ba0b23ad1568b3b9e17301e23b042c23870f9ee0522dc5cc79e8 \ - --hash=sha256:bfba7c6d5d7c9099ba21f84662b037a0ffd4a5e6b26ac07d19e423e6fdf965a9 \ - --hash=sha256:c207fff63adcdf5a485969131dc70e4b194327666b7e8a87a97fbc4fd80a53b2 \ - --hash=sha256:d0509e469d48940147e1235d994cd849a8f8195e0bca65f8f5439c56e17872a3 \ - --hash=sha256:d16cce709ebfadc91278a1c005e3c17dd5f71f5098bfae1035149785ea6e9c68 \ - --hash=sha256:d48b8ee1d4068561ce8033d2c344cf5232cb29ee1a0206a7b828c79cbc5982b8 \ - --hash=sha256:de989b195c3d636ba000ee4281cd03bb1234635b124bf4cd89eeee9ca8fcb09d \ - --hash=sha256:e07c8e79d6e6fd37b42f3250dba122053fddb319e84b55dd3a8d6446e1a7ee49 \ - --hash=sha256:e2c2e459f7050aeb7c1b1276763364884595d47000c1cddb51764c0d8976e608 \ - --hash=sha256:e5b20e9599ba74391ca0cfbd7b328fcc20976823ba19bc573983a25b32e92b57 \ - --hash=sha256:e875b6086e325bab7e680e4316d667fc0e5e174bb5611eb16b3ea121c8951b86 \ - --hash=sha256:f4f052ee022928d34fe1f4d2bc743f32609fb79ed9c49a1710a5ad6b2198db20 \ - --hash=sha256:fcb91630817aa8b9bc4a74023e4198480587269c272c58b3279875ed7235c293 \ - --hash=sha256:fd9fc9c4849a07f3635ccffa895d57abce554b467d611a5009ba4f39b78a8849 \ - --hash=sha256:feba80698173761cddd814fa22e88b0661e98cb810f9f986c54aa34d281e4937 \ - --hash=sha256:feea820722e69451743a3d56ad74948b68bf456984d63c1a92e8347b7b88452d +multidict==6.7.0 \ + --hash=sha256:03ca744319864e92721195fa28c7a3b2bc7b686246b35e4078c1e4d0eb5466d3 \ + --hash=sha256:040f393368e63fb0f3330e70c26bfd336656bed925e5cbe17c9da839a6ab13ec \ + --hash=sha256:05047ada7a2fde2631a0ed706f1fd68b169a681dfe5e4cf0f8e4cb6618bbc2cd \ + --hash=sha256:0591b48acf279821a579282444814a2d8d0af624ae0bc600aa4d1b920b6e924b \ + --hash=sha256:07f5594ac6d084cbb5de2df218d78baf55ef150b91f0ff8a21cc7a2e3a5a58eb \ + --hash=sha256:08325c9e5367aa379a3496aa9a022fe8837ff22e00b94db256d3a1378c76ab32 \ + --hash=sha256:08d4379f9744d8f78d98c8673c06e202ffa88296f009c71bbafe8a6bf847d01f \ + --hash=sha256:0934f3843a1860dd465d38895c17fce1f1cb37295149ab05cd1b9a03afacb2a7 \ + --hash=sha256:096f52730c3fb8ed419db2d44391932b63891b2c5ed14850a7e215c0ba9ade36 \ + --hash=sha256:09929cab6fcb68122776d575e03c6cc64ee0b8fca48d17e135474b042ce515cd \ + --hash=sha256:0a13fb8e748dfc94749f622de065dd5c1def7e0d2216dba72b1d8069a389c6ff \ + --hash=sha256:0db4956f82723cc1c270de9c6e799b4c341d327762ec78ef82bb962f79cc07d8 \ + --hash=sha256:123e2a72e20537add2f33a79e605f6191fba2afda4cbb876e35c1a7074298a7d \ + --hash=sha256:14c9e076eede3b54c636f8ce1c9c252b5f057c62131211f0ceeec273810c9721 \ + --hash=sha256:171b73bd4ee683d307599b66793ac80981b06f069b62eea1c9e29c9241aa66b0 \ + --hash=sha256:18706cc31dbf402a7945916dd5cddf160251b6dab8a2c5f3d6d5a55949f676b3 \ + --hash=sha256:19a1d55338ec1be74ef62440ca9e04a2f001a04d0cc49a4983dc320ff0f3212d \ + --hash=sha256:2049be98fb57a31b4ccf870bf377af2504d4ae35646a19037ec271e4c07998aa \ + --hash=sha256:2090d3718829d1e484706a2f525e50c892237b2bf9b17a79b059cb98cddc2f10 \ + --hash=sha256:2397ab4daaf2698eb51a76721e98db21ce4f52339e535725de03ea962b5a3202 \ + --hash=sha256:23bfeee5316266e5ee2d625df2d2c602b829435fc3a235c2ba2131495706e4a0 \ + --hash=sha256:27e0b36c2d388dc7b6ced3406671b401e84ad7eb0656b8f3a2f46ed0ce483718 \ + --hash=sha256:28b37063541b897fd6a318007373930a75ca6d6ac7c940dbe14731ffdd8d498e \ + --hash=sha256:295a92a76188917c7f99cda95858c822f9e4aae5824246bba9b6b44004ddd0a6 \ + --hash=sha256:29fe6740ebccba4175af1b9b87bf553e9c15cd5868ee967e010efcf94e4fd0f1 \ + --hash=sha256:2a7baa46a22e77f0988e3b23d4ede5513ebec1929e34ee9495be535662c0dfe2 \ + --hash=sha256:2d2cfeec3f6f45651b3d408c4acec0ebf3daa9bc8a112a084206f5db5d05b754 \ + --hash=sha256:2f67396ec0310764b9222a1728ced1ab638f61aadc6226f17a71dd9324f9a99c \ + --hash=sha256:30d193c6cc6d559db42b6bcec8a5d395d34d60c9877a0b71ecd7c204fcf15390 \ + --hash=sha256:31bae522710064b5cbeddaf2e9f32b1abab70ac6ac91d42572502299e9953128 \ + --hash=sha256:329aa225b085b6f004a4955271a7ba9f1087e39dcb7e65f6284a988264a63912 \ + --hash=sha256:363eb68a0a59bd2303216d2346e6c441ba10d36d1f9969fcb6f1ba700de7bb5c \ + --hash=sha256:394fc5c42a333c9ffc3e421a4c85e08580d990e08b99f6bf35b4132114c5dcb3 \ + --hash=sha256:3996b50c3237c4aec17459217c1e7bbdead9a22a0fcd3c365564fbd16439dde6 \ + --hash=sha256:39f1719f57adbb767ef592a50ae5ebb794220d1188f9ca93de471336401c34d2 \ + --hash=sha256:3b29b980d0ddbecb736735ee5bef69bb2ddca56eff603c86f3f29a1128299b4f \ + --hash=sha256:3ba3ef510467abb0667421a286dc906e30eb08569365f5cdb131d7aff7c2dd84 \ + --hash=sha256:3bab1e4aff7adaa34410f93b1f8e57c4b36b9af0426a76003f441ee1d3c7e842 \ + --hash=sha256:3d7b6ccce016e29df4b7ca819659f516f0bc7a4b3efa3bb2012ba06431b044f9 \ + --hash=sha256:3da4fb467498df97e986af166b12d01f05d2e04f978a9c1c680ea1988e0bc4b6 \ + --hash=sha256:3e56d780c238f9e1ae66a22d2adf8d16f485381878250db8d496623cd38b22bd \ + --hash=sha256:3e8bfdd0e487acf992407a140d2589fe598238eaeffa3da8448d63a63cd363f8 \ + --hash=sha256:44b546bd3eb645fd26fb949e43c02a25a2e632e2ca21a35e2e132c8105dc8599 \ + --hash=sha256:478cc36476687bac1514d651cbbaa94b86b0732fb6855c60c673794c7dd2da62 \ + --hash=sha256:490dab541a6a642ce1a9d61a4781656b346a55c13038f0b1244653828e3a83ec \ + --hash=sha256:4a0df7ff02397bb63e2fd22af2c87dfa39e8c7f12947bc524dbdc528282c7e34 \ + --hash=sha256:4b73189894398d59131a66ff157837b1fafea9974be486d036bb3d32331fdbf0 \ + --hash=sha256:4b7a9db5a870f780220e931d0002bbfd88fb53aceb6293251e2c839415c1b20e \ + --hash=sha256:4c09703000a9d0fa3c3404b27041e574cc7f4df4c6563873246d0e11812a94b6 \ + --hash=sha256:4d409aa42a94c0b3fa617708ef5276dfe81012ba6753a0370fcc9d0195d0a1fc \ + --hash=sha256:4d72a9a2d885f5c208b0cb91ff2ed43636bb7e345ec839ff64708e04f69a13cc \ + --hash=sha256:4ef089f985b8c194d341eb2c24ae6e7408c9a0e2e5658699c92f497437d88c3c \ + --hash=sha256:51cb455de290ae462593e5b1cb1118c5c22ea7f0d3620d9940bf695cea5a4bd7 \ + --hash=sha256:521f33e377ff64b96c4c556b81c55d0cfffb96a11c194fd0c3f1e56f3d8dd5a4 \ + --hash=sha256:53a42d364f323275126aff81fb67c5ca1b7a04fda0546245730a55c8c5f24bc4 \ + --hash=sha256:5aa873cbc8e593d361ae65c68f85faadd755c3295ea2c12040ee146802f23b38 \ + --hash=sha256:654030da3197d927f05a536a66186070e98765aa5142794c9904555d3a9d8fb5 \ + --hash=sha256:661709cdcd919a2ece2234f9bae7174e5220c80b034585d7d8a755632d3e2111 \ + --hash=sha256:680878b9f3d45c31e1f730eef731f9b0bc1da456155688c6745ee84eb818e90e \ + --hash=sha256:6843b28b0364dc605f21481c90fadb5f60d9123b442eb8a726bb74feef588a84 \ + --hash=sha256:68af405971779d8b37198726f2b6fe3955db846fee42db7a4286fc542203934c \ + --hash=sha256:6b4c3d199f953acd5b446bf7c0de1fe25d94e09e79086f8dc2f48a11a129cdf1 \ + --hash=sha256:6bdce131e14b04fd34a809b6380dbfd826065c3e2fe8a50dbae659fa0c390546 \ + --hash=sha256:716133f7d1d946a4e1b91b1756b23c088881e70ff180c24e864c26192ad7534a \ + --hash=sha256:749a72584761531d2b9467cfbdfd29487ee21124c304c4b6cb760d8777b27f9c \ + --hash=sha256:7516c579652f6a6be0e266aec0acd0db80829ca305c3d771ed898538804c2036 \ + --hash=sha256:79dcf9e477bc65414ebfea98ffd013cb39552b5ecd62908752e0e413d6d06e38 \ + --hash=sha256:7a0222514e8e4c514660e182d5156a415c13ef0aabbd71682fc714e327b95e99 \ + --hash=sha256:7b022717c748dd1992a83e219587aabe45980d88969f01b316e78683e6285f64 \ + --hash=sha256:7bf77f54997a9166a2f5675d1201520586439424c2511723a7312bdb4bcc034e \ + --hash=sha256:7e73299c99939f089dd9b2120a04a516b95cdf8c1cd2b18c53ebf0de80b1f18f \ + --hash=sha256:7ef6b61cad77091056ce0e7ce69814ef72afacb150b7ac6a3e9470def2198159 \ + --hash=sha256:7f5170993a0dd3ab871c74f45c0a21a4e2c37a2f2b01b5f722a2ad9c6650469e \ + --hash=sha256:803d685de7be4303b5a657b76e2f6d1240e7e0a8aa2968ad5811fa2285553a12 \ + --hash=sha256:8891681594162635948a636c9fe0ff21746aeb3dd5463f6e25d9bea3a8a39ca1 \ + --hash=sha256:8a19cdb57cd3df4cd865849d93ee14920fb97224300c88501f16ecfa2604b4e0 \ + --hash=sha256:8a3862568a36d26e650a19bb5cbbba14b71789032aebc0423f8cc5f150730184 \ + --hash=sha256:8b55d5497b51afdfde55925e04a022f1de14d4f4f25cdfd4f5d9b0aa96166851 \ + --hash=sha256:8cfc12a8630a29d601f48d47787bd7eb730e475e83edb5d6c5084317463373eb \ + --hash=sha256:9281bf5b34f59afbc6b1e477a372e9526b66ca446f4bf62592839c195a718b32 \ + --hash=sha256:92abb658ef2d7ef22ac9f8bb88e8b6c3e571671534e029359b6d9e845923eb1b \ + --hash=sha256:94218fcec4d72bc61df51c198d098ce2b378e0ccbac41ddbed5ef44092913288 \ + --hash=sha256:95b5ffa4349df2887518bb839409bcf22caa72d82beec453216802f475b23c81 \ + --hash=sha256:9600082733859f00d79dee64effc7aef1beb26adb297416a4ad2116fd61374bd \ + --hash=sha256:960c60b5849b9b4f9dcc9bea6e3626143c252c74113df2c1540aebce70209b45 \ + --hash=sha256:9b2fd74c52accced7e75de26023b7dccee62511a600e62311b918ec5c168fc2a \ + --hash=sha256:9c0359b1ec12b1d6849c59f9d319610b7f20ef990a6d454ab151aa0e3b9f78ca \ + --hash=sha256:9cf41880c991716f3c7cec48e2f19ae4045fc9db5fc9cff27347ada24d710bb5 \ + --hash=sha256:9d14baca2ee12c1a64740d4531356ba50b82543017f3ad6de0deb943c5979abb \ + --hash=sha256:9f474ad5acda359c8758c8accc22032c6abe6dc87a8be2440d097785e27a9349 \ + --hash=sha256:9fb0211dfc3b51efea2f349ec92c114d7754dd62c01f81c3e32b765b70c45c9b \ + --hash=sha256:9fe04da3f79387f450fd0061d4dd2e45a72749d31bf634aecc9e27f24fdc4b3f \ + --hash=sha256:9ff96e8815eecacc6645da76c413eb3b3d34cfca256c70b16b286a687d013c32 \ + --hash=sha256:a027ec240fe73a8d6281872690b988eed307cd7d91b23998ff35ff577ca688b5 \ + --hash=sha256:a048ce45dcdaaf1defb76b2e684f997fb5abf74437b6cb7b22ddad934a964e34 \ + --hash=sha256:a265acbb7bb33a3a2d626afbe756371dce0279e7b17f4f4eda406459c2b5ff1c \ + --hash=sha256:a35c5fc61d4f51eb045061e7967cfe3123d622cd500e8868e7c0c592a09fedc4 \ + --hash=sha256:a37bd74c3fa9d00be2d7b8eca074dc56bd8077ddd2917a839bd989612671ed17 \ + --hash=sha256:a60a4d75718a5efa473ebd5ab685786ba0c67b8381f781d1be14da49f1a2dc60 \ + --hash=sha256:a6ef16328011d3f468e7ebc326f24c1445f001ca1dec335b2f8e66bed3006394 \ + --hash=sha256:a90af66facec4cebe4181b9e62a68be65e45ac9b52b67de9eec118701856e7ff \ + --hash=sha256:ad9ce259f50abd98a1ca0aa6e490b58c316a0fce0617f609723e40804add2c00 \ + --hash=sha256:afa8a2978ec65d2336305550535c9c4ff50ee527914328c8677b3973ade52b85 \ + --hash=sha256:b15b3afff74f707b9275d5ba6a91ae8f6429c3ffb29bbfd216b0b375a56f13d7 \ + --hash=sha256:b284e319754366c1aee2267a2036248b24eeb17ecd5dc16022095e747f2f4304 \ + --hash=sha256:b2d7f80c4e1fd010b07cb26820aae86b7e73b681ee4889684fb8d2d4537aab13 \ + --hash=sha256:b3bc26a951007b1057a1c543af845f1c7e3e71cc240ed1ace7bf4484aa99196e \ + --hash=sha256:b3e34f3a1b8131ba06f1a73adab24f30934d148afcd5f5de9a73565a4404384e \ + --hash=sha256:b4121773c49a0776461f4a904cdf6264c88e42218aaa8407e803ca8025872792 \ + --hash=sha256:b61189b29081a20c7e4e0b49b44d5d44bb0dc92be3c6d06a11cc043f81bf9329 \ + --hash=sha256:b6234e14f9314731ec45c42fc4554b88133ad53a09092cc48a88e771c125dadb \ + --hash=sha256:b8512bac933afc3e45fb2b18da8e59b78d4f408399a960339598374d4ae3b56b \ + --hash=sha256:ba672b26069957ee369cfa7fc180dde1fc6f176eaf1e6beaf61fbebbd3d9c000 \ + --hash=sha256:bee7c0588aa0076ce77c0ea5d19a68d76ad81fcd9fe8501003b9a24f9d4000f6 \ + --hash=sha256:c04a328260dfd5db8c39538f999f02779012268f54614902d0afc775d44e0a62 \ + --hash=sha256:c1dcc7524066fa918c6a27d61444d4ee7900ec635779058571f70d042d86ed63 \ + --hash=sha256:c6e99d9a65ca282e578dfea819cfa9c0a62b2499d8677392e09feaf305e9e6f5 \ + --hash=sha256:ca43bdfa5d37bd6aee89d85e1d0831fb86e25541be7e9d376ead1b28974f8e5e \ + --hash=sha256:caf53b15b1b7df9fbd0709aa01409000a2b4dd03a5f6f5cc548183c7c8f8b63c \ + --hash=sha256:cc41db090ed742f32bd2d2c721861725e6109681eddf835d0a82bd3a5c382827 \ + --hash=sha256:cd240939f71c64bd658f186330603aac1a9a81bf6273f523fca63673cb7378a8 \ + --hash=sha256:ce8fdc2dca699f8dbf055a61d73eaa10482569ad20ee3c36ef9641f69afa8c91 \ + --hash=sha256:d1bed1b467ef657f2a0ae62844a607909ef1c6889562de5e1d505f74457d0b96 \ + --hash=sha256:d1d964afecdf3a8288789df2f5751dc0a8261138c3768d9af117ed384e538fad \ + --hash=sha256:d4393e3581e84e5645506923816b9cc81f5609a778c7e7534054091acc64d1c6 \ + --hash=sha256:d874eb056410ca05fed180b6642e680373688efafc7f077b2a2f61811e873a40 \ + --hash=sha256:db99677b4457c7a5c5a949353e125ba72d62b35f74e26da141530fbb012218a7 \ + --hash=sha256:dd32a49400a2c3d52088e120ee00c1e3576cbff7e10b98467962c74fdb762ed4 \ + --hash=sha256:df0e3bf7993bdbeca5ac25aa859cf40d39019e015c9c91809ba7093967f7a648 \ + --hash=sha256:e011555abada53f1578d63389610ac8a5400fc70ce71156b0aa30d326f1a5064 \ + --hash=sha256:e2862408c99f84aa571ab462d25236ef9cb12a602ea959ba9c9009a54902fc73 \ + --hash=sha256:e3aa16de190d29a0ea1b48253c57d99a68492c8dd8948638073ab9e74dc9410b \ + --hash=sha256:e93a0617cd16998784bf4414c7e40f17a35d2350e5c6f0bd900d3a8e02bd3762 \ + --hash=sha256:ea3334cabe4d41b7ccd01e4d349828678794edbc2d3ae97fc162a3312095092e \ + --hash=sha256:eb866162ef2f45063acc7a53a88ef6fe8bf121d45c30ea3c9cd87ce7e191a8d4 \ + --hash=sha256:ec81878ddf0e98817def1e77d4f50dae5ef5b0e4fe796fae3bd674304172416e \ + --hash=sha256:efbb54e98446892590dc2458c19c10344ee9a883a79b5cec4bc34d6656e8d546 \ + --hash=sha256:f0e77e3c0008bc9316e662624535b88d360c3a5d3f81e15cf12c139a75250046 \ + --hash=sha256:f0feece2ef8ebc42ed9e2e8c78fc4aa3cf455733b507c09ef7406364c94376c6 \ + --hash=sha256:f470f68adc395e0183b92a2f4689264d1ea4b40504a24d9882c27375e6662bb9 \ + --hash=sha256:f844a1bbf1d207dd311a56f383f7eda2d0e134921d45751842d8235e7778965d \ + --hash=sha256:f8a93b1c0ed2d04b97a5e9336fd2d33371b9a6e29ab7dd6503d63407c20ffbaf \ + --hash=sha256:f8e5c0031b90ca9ce555e2e8fd5c3b02a25f14989cbc310701823832c99eb687 \ + --hash=sha256:fb287618b9c7aa3bf8d825f02d9201b2f13078a5ed3b293c8f4d953917d84d5e \ + --hash=sha256:fbafe31d191dfa7c4c51f7a6149c9fb7e914dcf9ffead27dcfd9f1ae382b3885 \ + --hash=sha256:fbd18dc82d7bf274b37aa48d664534330af744e03bccf696d6f4c6042e7d19e7 + # via + # aiohttp + # yarl +propcache==0.4.0 \ + --hash=sha256:009093c9b5dbae114a5958e6a649f8a5d94dd6866b0f82b60395eb92c58002d4 \ + --hash=sha256:015b2ca2f98ea9e08ac06eecc409d5d988f78c5fd5821b2ad42bc9afcd6b1557 \ + --hash=sha256:01c0ebc172ca28e9d62876832befbf7f36080eee6ed9c9e00243de2a8089ad57 \ + --hash=sha256:02e071548b6a376e173b0102c3f55dc16e7d055b5307d487e844c320e38cacf2 \ + --hash=sha256:0363a696a9f24b37a04ed5e34c2e07ccbe92798c998d37729551120a1bb744c4 \ + --hash=sha256:0596d2ae99d74ca436553eb9ce11fe4163dc742fcf8724ebe07d7cb0db679bb1 \ + --hash=sha256:075ca32384294434344760fdcb95f7833e1d7cf7c4e55f0e726358140179da35 \ + --hash=sha256:077a32977399dc05299b16e793210341a0b511eb0a86d1796873e83ce47334cc \ + --hash=sha256:082a643479f49a6778dcd68a80262fc324b14fd8e9b1a5380331fe41adde1738 \ + --hash=sha256:087e2d3d7613e1b59b2ffca0daabd500c1a032d189c65625ee05ea114afcad0b \ + --hash=sha256:0964c55c95625193defeb4fd85f8f28a9a754ed012cab71127d10e3dc66b1373 \ + --hash=sha256:0b04ac2120c161416c866d0b6a4259e47e92231ff166b518cc0efb95777367c3 \ + --hash=sha256:0b12df77eb19266efd146627a65b8ad414f9d15672d253699a50c8205661a820 \ + --hash=sha256:0cd30341142c68377cf3c4e2d9f0581e6e528694b2d57c62c786be441053d2fc \ + --hash=sha256:0ea11fceb31fa95b0fa2007037f19e922e2caceb7dc6c6cac4cb56e2d291f1a2 \ + --hash=sha256:184c779363740d6664982ad05699f378f7694220e2041996f12b7c2a4acdcad0 \ + --hash=sha256:1927b78dd75fc31a7fdc76cc7039e39f3170cb1d0d9a271e60f0566ecb25211a \ + --hash=sha256:1cdabd60e109506462e6a7b37008e57979e737dc6e7dfbe1437adcfe354d1a0a \ + --hash=sha256:1e7fa29c71ffa8d6a37324258737d09475f84715a6e8c350f67f0bc8e5e44993 \ + --hash=sha256:1e7fd82d4a5b7583588f103b0771e43948532f1292105f13ee6f3b300933c4ca \ + --hash=sha256:2015218812ee8f13bbaebc9f52b1e424cc130b68d4857bef018e65e3834e1c4d \ + --hash=sha256:213eb0d3bc695a70cffffe11a1c2e1c2698d89ffd8dba35a49bc44a035d45c93 \ + --hash=sha256:2166466a666a5bebc332cd209cad77d996fad925ca7e8a2a6310ba9e851ae641 \ + --hash=sha256:227892597953611fce2601d49f1d1f39786a6aebc2f253c2de775407f725a3f6 \ + --hash=sha256:22f589652ee38de96aa58dd219335604e09666092bc250c1d9c26a55bcef9932 \ + --hash=sha256:236c8da353ea7c22a8e963ab78cddb1126f700ae9538e2c4c6ef471e5545494b \ + --hash=sha256:24403152e41abf09488d3ae9c0c3bf7ff93e2fb12b435390718f21810353db28 \ + --hash=sha256:26692850120241a99bb4a4eec675cd7b4fdc431144f0d15ef69f7f8599f6165f \ + --hash=sha256:2a4bf309d057327f1f227a22ac6baf34a66f9af75e08c613e47c4d775b06d6c7 \ + --hash=sha256:2af6de831a26f42a3f94592964becd8d7f238551786d7525807f02e53defbd13 \ + --hash=sha256:2c46d37955820dd883cf9156ceb7825b8903e910bdd869902e20a5ac4ecd2c8b \ + --hash=sha256:33ad7d37b9a386f97582f5d042cc7b8d4b3591bb384cf50866b749a17e4dba90 \ + --hash=sha256:34000e31795bdcda9826e0e70e783847a42e3dcd0d6416c5d3cb717905ebaec0 \ + --hash=sha256:381c84a445efb8c9168f1393a5a7c566de22edc42bfe207a142fff919b37f5d9 \ + --hash=sha256:399c73201d88c856a994916200d7cba41d7687096f8eb5139eb68f02785dc3f7 \ + --hash=sha256:39f0f6a3b56e82dc91d84c763b783c5c33720a33c70ee48a1c13ba800ac1fa69 \ + --hash=sha256:4596c12aa7e3bb2abf158ea8f79eb0fb4851606695d04ab846b2bb386f5690a1 \ + --hash=sha256:4a52c25a51d5894ba60c567b0dbcf73de2f3cd642cf5343679e07ca3a768b085 \ + --hash=sha256:4bf95be277fbb51513895c2cecc81ab12a421cdbd8837f159828a919a0167f96 \ + --hash=sha256:4c2735d3305e6cecab6e53546909edf407ad3da5b9eeaf483f4cf80142bb21be \ + --hash=sha256:4c491462e1dc80f9deb93f428aad8d83bb286de212837f58eb48e75606e7726c \ + --hash=sha256:515b610a364c8cdd2b72c734cc97dece85c416892ea8d5c305624ac8734e81db \ + --hash=sha256:545987971b2aded25ba4698135ea0ae128836e7deb6e18c29a581076aaef44aa \ + --hash=sha256:55a54de5266bc44aa274915cdf388584fa052db8748a869e5500ab5993bac3f4 \ + --hash=sha256:566552ed9b003030745e5bc7b402b83cf3cecae1bade95262d78543741786db5 \ + --hash=sha256:5710b1c01472542bb024366803812ca13e8774d21381bcfc1f7ae738eeb38acc \ + --hash=sha256:5a531d29d7b873b12730972237c48b1a4e5980b98cf21b3f09fa4710abd3a8c3 \ + --hash=sha256:5b113feeda47f908562d9a6d0e05798ad2f83d4473c0777dafa2bc7756473218 \ + --hash=sha256:5e0a5bc019014531308fb67d86066d235daa7551baf2e00e1ea7b00531f6ea85 \ + --hash=sha256:626ec13592928b677f48ff5861040b604b635e93d8e2162fb638397ea83d07e8 \ + --hash=sha256:659a0ea6d9017558ed7af00fb4028186f64d0ba9adfc70a4d2c85fcd3d026321 \ + --hash=sha256:65ff56a31f25925ef030b494fe63289bf07ef0febe6da181b8219146c590e185 \ + --hash=sha256:681a168d06284602d56e97f09978057aa88bcc4177352b875b3d781df4efd4cb \ + --hash=sha256:6a6a36b94c09711d6397d79006ca47901539fbc602c853d794c39abd6a326549 \ + --hash=sha256:6d1f67dad8cc36e8abc2207a77f3f952ac80be7404177830a7af4635a34cbc16 \ + --hash=sha256:6ebc6e2e65c31356310ddb6519420eaa6bb8c30fbd809d0919129c89dcd70f4c \ + --hash=sha256:71a400b2f0b079438cc24f9a27f02eff24d8ef78f2943f949abc518b844ade3d \ + --hash=sha256:71c45f02ffbb8a21040ae816ceff7f6cd749ffac29fc0f9daa42dc1a9652d577 \ + --hash=sha256:728d98179e92d77096937fdfecd2c555a3d613abe56c9909165c24196a3b5012 \ + --hash=sha256:72b51340047ac43b3cf388eebd362d052632260c9f73a50882edbb66e589fd44 \ + --hash=sha256:779aaae64089e2f4992e993faea801925395d26bb5de4a47df7ef7f942c14f80 \ + --hash=sha256:783e91595cf9b66c2deda17f2e8748ae8591aa9f7c65dcab038872bfe83c5bb1 \ + --hash=sha256:790286d3d542c0ef9f6d0280d1049378e5e776dcba780d169298f664c39394db \ + --hash=sha256:7aa8cc5c94e682dce91cb4d12d7b81c01641f4ef5b3b3dc53325d43f0e3b9f2e \ + --hash=sha256:7d51f70f77950f8efafed4383865d3533eeee52d8a0dd1c35b65f24de41de4e0 \ + --hash=sha256:7da5c4c72ae40fd3ce87213ab057db66df53e55600d0b9e72e2b7f5a470a2cc4 \ + --hash=sha256:7dfa60953169d2531dd8ae306e9c27c5d4e5efe7a2ba77049e8afdaece062937 \ + --hash=sha256:7ea86eb32e74f9902df57e8608e8ac66f1e1e1d24d1ed2ddeb849888413b924d \ + --hash=sha256:7f088e21d15b3abdb9047e4b7b7a0acd79bf166893ac2b34a72ab1062feb219e \ + --hash=sha256:83ae2f5343f6f06f4c91ae530d95f56b415f768f9c401a5ee2a10459cf74370b \ + --hash=sha256:84f847e64f4d1a232e50460eebc1196642ee9b4c983612f41cd2d44fd2fe7c71 \ + --hash=sha256:858eaabd2191dd0da5272993ad08a748b5d3ae1aefabea8aee619b45c2af4a64 \ + --hash=sha256:8659f995b19185179474b18de8755689e1f71e1334d05c14e1895caa4e409cf7 \ + --hash=sha256:88d50d662c917ec2c9d3858920aa7b9d5bfb74ab9c51424b775ccbe683cb1b4e \ + --hash=sha256:892a072e5b19c3f324a4f8543c9f7e8fc2b0aa08579e46f69bdf0cfc1b440454 \ + --hash=sha256:8d18d796ffecdc8253742fd53a94ceee2e77ad149eb9ed5960c2856b5f692f71 \ + --hash=sha256:92bc43a1ab852310721ce856f40a3a352254aa6f5e26f0fad870b31be45bba2e \ + --hash=sha256:944de70384c62d16d4a00c686b422aa75efbc67c4addaebefbb56475d1c16034 \ + --hash=sha256:94a278c45e6463031b5a8278e40a07edf2bcc3b5379510e22b6c1a6e6498c194 \ + --hash=sha256:94b0f7407d18001dbdcbb239512e753b1b36725a6e08a4983be1c948f5435f79 \ + --hash=sha256:96153e037ae065bb71cae889f23c933190d81ae183f3696a030b47352fd8655d \ + --hash=sha256:9ba68c57cde9c667f6b65b98bc342dfa7240b1272ffb2c24b32172ee61b6d281 \ + --hash=sha256:a1d5e474d43c238035b74ecf997f655afa67f979bae591ac838bb3fbe3076392 \ + --hash=sha256:a4efbaf10793fd574c76a5732c75452f19d93df6e0f758c67dd60552ebd8614b \ + --hash=sha256:a60634a9de41f363923c6adfb83105d39e49f7a3058511563ed3de6748661af6 \ + --hash=sha256:a7f06f077fc4ef37e8a37ca6bbb491b29e29db9fb28e29cf3896aad10dbd4137 \ + --hash=sha256:a8ef2ea819549ae2e8698d2ec229ae948d7272feea1cb2878289f767b6c585a4 \ + --hash=sha256:a9725d96a81e17e48a0fe82d0c3de2f5e623d7163fec70a6c7df90753edd1bec \ + --hash=sha256:ab9c1bd95ebd1689f0e24f2946c495808777e9e8df7bb3c1dfe3e9eb7f47fe0d \ + --hash=sha256:abe04e7aa5ab2e4056fcf3255ebee2071e4a427681f76d4729519e292c46ecc1 \ + --hash=sha256:ae3adf88a66f5863cf79394bc359da523bb27a2ed6ba9898525a6a02b723bfc5 \ + --hash=sha256:b2f29697d1110e8cdf7a39cc630498df0082d7898b79b731c1c863f77c6e8cfc \ + --hash=sha256:b730048ae8b875e2c0af1a09ca31b303fc7b5ed27652beec03fa22b29545aec9 \ + --hash=sha256:bcb5bfac5b9635e6fc520c8af6efc7a0a56f12a1fe9e9d3eb4328537e316dd6a \ + --hash=sha256:bd6c6dba1a3b8949e08c4280071c86e38cb602f02e0ed6659234108c7a7cd710 \ + --hash=sha256:c0e1c218fff95a66ad9f2f83ad41a67cf4d0a3f527efe820f57bde5fda616de4 \ + --hash=sha256:c1443fa4bb306461a3a8a52b7de0932a2515b100ecb0ebc630cc3f87d451e0a9 \ + --hash=sha256:c1ad731253eb738f9cadd9fa1844e019576c70bca6a534252e97cf33a57da529 \ + --hash=sha256:c20d796210720455086ef3f85adc413d1e41d374742f9b439354f122bbc3b528 \ + --hash=sha256:c2e274f3d1cbb2ddcc7a55ce3739af0f8510edc68a7f37981b2258fa1eedc833 \ + --hash=sha256:c3f4b125285d354a627eb37f3ea7c13b8842c7c0d47783581d0df0e272dbf5f0 \ + --hash=sha256:c9b8119244d122241a9c4566bce49bb20408a6827044155856735cf14189a7da \ + --hash=sha256:cd6e22255ed73efeaaeb1765505a66a48a9ec9ebc919fce5ad490fe5e33b1555 \ + --hash=sha256:cd8684f628fe285ea5c86f88e1c30716239dc9d6ac55e7851a4b7f555b628da3 \ + --hash=sha256:cdb0cecafb528ab15ed89cdfed183074d15912d046d3e304955513b50a34b907 \ + --hash=sha256:d74aa60b1ec076d4d5dcde27c9a535fc0ebb12613f599681c438ca3daa68acac \ + --hash=sha256:d7f008799682e8826ce98f25e8bc43532d2cd26c187a1462499fa8d123ae054f \ + --hash=sha256:d9a8d277dc218ddf04ec243a53ac309b1afcebe297c0526a8f82320139b56289 \ + --hash=sha256:da47070e1340a1639aca6b1c18fe1f1f3d8d64d3a1f9ddc67b94475f44cd40f3 \ + --hash=sha256:da584d917a1a17f690fc726617fd2c3f3006ea959dae5bb07a5630f7b16f9f5f \ + --hash=sha256:de536cf796abc5b58d11c0ad56580215d231d9554ea4bb6b8b1b3bed80aa3234 \ + --hash=sha256:de8e310d24b5a61de08812dd70d5234da1458d41b059038ee7895a9e4c8cae79 \ + --hash=sha256:df7107a91126a495880576610ae989f19106e1900dd5218d08498391fa43b31d \ + --hash=sha256:e0ce7f3d1faf7ad58652ed758cc9753049af5308b38f89948aa71793282419c5 \ + --hash=sha256:e2d01fd53e89cb3d71d20b8c225a8c70d84660f2d223afc7ed7851a4086afe6d \ + --hash=sha256:e5227da556b2939da6125cda1d5eecf9e412e58bc97b41e2f192605c3ccbb7c2 \ + --hash=sha256:e6229ad15366cd8b6d6b4185c55dd48debf9ca546f91416ba2e5921ad6e210a6 \ + --hash=sha256:e878553543ece1f8006d0ba4d096b40290580db173bfb18e16158045b9371335 \ + --hash=sha256:eb77a85253174bf73e52c968b689d64be62d71e8ac33cabef4ca77b03fb4ef92 \ + --hash=sha256:f114a3e1f8034e2957d34043b7a317a8a05d97dfe8fddb36d9a2252c0117dbbc \ + --hash=sha256:f495007ada16a4e16312b502636fafff42a9003adf1d4fb7541e0a0870bc056f \ + --hash=sha256:f5c82af8e329c3cdc3e717dd3c7b2ff1a218b6de611f6ce76ee34967570a9de9 # via # aiohttp # yarl -pyyaml==6.0 \ - --hash=sha256:01b45c0191e6d66c470b6cf1b9531a771a83c1c4208272ead47a3ae4f2f603bf \ - --hash=sha256:0283c35a6a9fbf047493e3a0ce8d79ef5030852c51e9d911a27badfde0605293 \ - --hash=sha256:055d937d65826939cb044fc8c9b08889e8c743fdc6a32b33e2390f66013e449b \ - --hash=sha256:07751360502caac1c067a8132d150cf3d61339af5691fe9e87803040dbc5db57 \ - --hash=sha256:0b4624f379dab24d3725ffde76559cff63d9ec94e1736b556dacdfebe5ab6d4b \ - --hash=sha256:0ce82d761c532fe4ec3f87fc45688bdd3a4c1dc5e0b4a19814b9009a29baefd4 \ - --hash=sha256:1e4747bc279b4f613a09eb64bba2ba602d8a6664c6ce6396a4d0cd413a50ce07 \ - --hash=sha256:213c60cd50106436cc818accf5baa1aba61c0189ff610f64f4a3e8c6726218ba \ - --hash=sha256:231710d57adfd809ef5d34183b8ed1eeae3f76459c18fb4a0b373ad56bedcdd9 \ - --hash=sha256:277a0ef2981ca40581a47093e9e2d13b3f1fbbeffae064c1d21bfceba2030287 \ - --hash=sha256:2cd5df3de48857ed0544b34e2d40e9fac445930039f3cfe4bcc592a1f836d513 \ - --hash=sha256:40527857252b61eacd1d9af500c3337ba8deb8fc298940291486c465c8b46ec0 \ - --hash=sha256:432557aa2c09802be39460360ddffd48156e30721f5e8d917f01d31694216782 \ - --hash=sha256:473f9edb243cb1935ab5a084eb238d842fb8f404ed2193a915d1784b5a6b5fc0 \ - --hash=sha256:48c346915c114f5fdb3ead70312bd042a953a8ce5c7106d5bfb1a5254e47da92 \ - --hash=sha256:50602afada6d6cbfad699b0c7bb50d5ccffa7e46a3d738092afddc1f9758427f \ - --hash=sha256:68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2 \ - --hash=sha256:77f396e6ef4c73fdc33a9157446466f1cff553d979bd00ecb64385760c6babdc \ - --hash=sha256:81957921f441d50af23654aa6c5e5eaf9b06aba7f0a19c18a538dc7ef291c5a1 \ - --hash=sha256:819b3830a1543db06c4d4b865e70ded25be52a2e0631ccd2f6a47a2822f2fd7c \ - --hash=sha256:897b80890765f037df3403d22bab41627ca8811ae55e9a722fd0392850ec4d86 \ - --hash=sha256:98c4d36e99714e55cfbaaee6dd5badbc9a1ec339ebfc3b1f52e293aee6bb71a4 \ - --hash=sha256:9df7ed3b3d2e0ecfe09e14741b857df43adb5a3ddadc919a2d94fbdf78fea53c \ - --hash=sha256:9fa600030013c4de8165339db93d182b9431076eb98eb40ee068700c9c813e34 \ - --hash=sha256:a80a78046a72361de73f8f395f1f1e49f956c6be882eed58505a15f3e430962b \ - --hash=sha256:afa17f5bc4d1b10afd4466fd3a44dc0e245382deca5b3c353d8b757f9e3ecb8d \ - --hash=sha256:b3d267842bf12586ba6c734f89d1f5b871df0273157918b0ccefa29deb05c21c \ - --hash=sha256:b5b9eccad747aabaaffbc6064800670f0c297e52c12754eb1d976c57e4f74dcb \ - --hash=sha256:bfaef573a63ba8923503d27530362590ff4f576c626d86a9fed95822a8255fd7 \ - --hash=sha256:c5687b8d43cf58545ade1fe3e055f70eac7a5a1a0bf42824308d868289a95737 \ - --hash=sha256:cba8c411ef271aa037d7357a2bc8f9ee8b58b9965831d9e51baf703280dc73d3 \ - --hash=sha256:d15a181d1ecd0d4270dc32edb46f7cb7733c7c508857278d3d378d14d606db2d \ - --hash=sha256:d4b0ba9512519522b118090257be113b9468d804b19d63c71dbcf4a48fa32358 \ - --hash=sha256:d4db7c7aef085872ef65a8fd7d6d09a14ae91f691dec3e87ee5ee0539d516f53 \ - --hash=sha256:d4eccecf9adf6fbcc6861a38015c2a64f38b9d94838ac1810a9023a0609e1b78 \ - --hash=sha256:d67d839ede4ed1b28a4e8909735fc992a923cdb84e618544973d7dfc71540803 \ - --hash=sha256:daf496c58a8c52083df09b80c860005194014c3698698d1a57cbcfa182142a3a \ - --hash=sha256:dbad0e9d368bb989f4515da330b88a057617d16b6a8245084f1b05400f24609f \ - --hash=sha256:e61ceaab6f49fb8bdfaa0f92c4b57bcfbea54c09277b1b4f7ac376bfb7a7c174 \ - --hash=sha256:f84fbc98b019fef2ee9a1cb3ce93e3187a6df0b2538a651bfb890254ba9f90b5 +pyyaml==6.0.3 \ + --hash=sha256:00c4bdeba853cc34e7dd471f16b4114f4162dc03e6b7afcc2128711f0eca823c \ + --hash=sha256:0150219816b6a1fa26fb4699fb7daa9caf09eb1999f3b70fb6e786805e80375a \ + --hash=sha256:02893d100e99e03eda1c8fd5c441d8c60103fd175728e23e431db1b589cf5ab3 \ + --hash=sha256:02ea2dfa234451bbb8772601d7b8e426c2bfa197136796224e50e35a78777956 \ + --hash=sha256:0f29edc409a6392443abf94b9cf89ce99889a1dd5376d94316ae5145dfedd5d6 \ + --hash=sha256:10892704fc220243f5305762e276552a0395f7beb4dbf9b14ec8fd43b57f126c \ + --hash=sha256:16249ee61e95f858e83976573de0f5b2893b3677ba71c9dd36b9cf8be9ac6d65 \ + --hash=sha256:1d37d57ad971609cf3c53ba6a7e365e40660e3be0e5175fa9f2365a379d6095a \ + --hash=sha256:1ebe39cb5fc479422b83de611d14e2c0d3bb2a18bbcb01f229ab3cfbd8fee7a0 \ + --hash=sha256:214ed4befebe12df36bcc8bc2b64b396ca31be9304b8f59e25c11cf94a4c033b \ + --hash=sha256:2283a07e2c21a2aa78d9c4442724ec1eb15f5e42a723b99cb3d822d48f5f7ad1 \ + --hash=sha256:22ba7cfcad58ef3ecddc7ed1db3409af68d023b7f940da23c6c2a1890976eda6 \ + --hash=sha256:27c0abcb4a5dac13684a37f76e701e054692a9b2d3064b70f5e4eb54810553d7 \ + --hash=sha256:28c8d926f98f432f88adc23edf2e6d4921ac26fb084b028c733d01868d19007e \ + --hash=sha256:2e71d11abed7344e42a8849600193d15b6def118602c4c176f748e4583246007 \ + --hash=sha256:34d5fcd24b8445fadc33f9cf348c1047101756fd760b4dacb5c3e99755703310 \ + --hash=sha256:37503bfbfc9d2c40b344d06b2199cf0e96e97957ab1c1b546fd4f87e53e5d3e4 \ + --hash=sha256:3c5677e12444c15717b902a5798264fa7909e41153cdf9ef7ad571b704a63dd9 \ + --hash=sha256:3ff07ec89bae51176c0549bc4c63aa6202991da2d9a6129d7aef7f1407d3f295 \ + --hash=sha256:41715c910c881bc081f1e8872880d3c650acf13dfa8214bad49ed4cede7c34ea \ + --hash=sha256:418cf3f2111bc80e0933b2cd8cd04f286338bb88bdc7bc8e6dd775ebde60b5e0 \ + --hash=sha256:44edc647873928551a01e7a563d7452ccdebee747728c1080d881d68af7b997e \ + --hash=sha256:4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac \ + --hash=sha256:4ad1906908f2f5ae4e5a8ddfce73c320c2a1429ec52eafd27138b7f1cbe341c9 \ + --hash=sha256:501a031947e3a9025ed4405a168e6ef5ae3126c59f90ce0cd6f2bfc477be31b7 \ + --hash=sha256:5190d403f121660ce8d1d2c1bb2ef1bd05b5f68533fc5c2ea899bd15f4399b35 \ + --hash=sha256:5498cd1645aa724a7c71c8f378eb29ebe23da2fc0d7a08071d89469bf1d2defb \ + --hash=sha256:5cf4e27da7e3fbed4d6c3d8e797387aaad68102272f8f9752883bc32d61cb87b \ + --hash=sha256:5e0b74767e5f8c593e8c9b5912019159ed0533c70051e9cce3e8b6aa699fcd69 \ + --hash=sha256:5ed875a24292240029e4483f9d4a4b8a1ae08843b9c54f43fcc11e404532a8a5 \ + --hash=sha256:5fcd34e47f6e0b794d17de1b4ff496c00986e1c83f7ab2fb8fcfe9616ff7477b \ + --hash=sha256:5fdec68f91a0c6739b380c83b951e2c72ac0197ace422360e6d5a959d8d97b2c \ + --hash=sha256:6344df0d5755a2c9a276d4473ae6b90647e216ab4757f8426893b5dd2ac3f369 \ + --hash=sha256:64386e5e707d03a7e172c0701abfb7e10f0fb753ee1d773128192742712a98fd \ + --hash=sha256:652cb6edd41e718550aad172851962662ff2681490a8a711af6a4d288dd96824 \ + --hash=sha256:66291b10affd76d76f54fad28e22e51719ef9ba22b29e1d7d03d6777a9174198 \ + --hash=sha256:66e1674c3ef6f541c35191caae2d429b967b99e02040f5ba928632d9a7f0f065 \ + --hash=sha256:6adc77889b628398debc7b65c073bcb99c4a0237b248cacaf3fe8a557563ef6c \ + --hash=sha256:79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c \ + --hash=sha256:7c6610def4f163542a622a73fb39f534f8c101d690126992300bf3207eab9764 \ + --hash=sha256:7f047e29dcae44602496db43be01ad42fc6f1cc0d8cd6c83d342306c32270196 \ + --hash=sha256:8098f252adfa6c80ab48096053f512f2321f0b998f98150cea9bd23d83e1467b \ + --hash=sha256:850774a7879607d3a6f50d36d04f00ee69e7fc816450e5f7e58d7f17f1ae5c00 \ + --hash=sha256:8d1fab6bb153a416f9aeb4b8763bc0f22a5586065f86f7664fc23339fc1c1fac \ + --hash=sha256:8da9669d359f02c0b91ccc01cac4a67f16afec0dac22c2ad09f46bee0697eba8 \ + --hash=sha256:8dc52c23056b9ddd46818a57b78404882310fb473d63f17b07d5c40421e47f8e \ + --hash=sha256:9149cad251584d5fb4981be1ecde53a1ca46c891a79788c0df828d2f166bda28 \ + --hash=sha256:93dda82c9c22deb0a405ea4dc5f2d0cda384168e466364dec6255b293923b2f3 \ + --hash=sha256:96b533f0e99f6579b3d4d4995707cf36df9100d67e0c8303a0c55b27b5f99bc5 \ + --hash=sha256:9c57bb8c96f6d1808c030b1687b9b5fb476abaa47f0db9c0101f5e9f394e97f4 \ + --hash=sha256:9c7708761fccb9397fe64bbc0395abcae8c4bf7b0eac081e12b809bf47700d0b \ + --hash=sha256:9f3bfb4965eb874431221a3ff3fdcddc7e74e3b07799e0e84ca4a0f867d449bf \ + --hash=sha256:a33284e20b78bd4a18c8c2282d549d10bc8408a2a7ff57653c0cf0b9be0afce5 \ + --hash=sha256:a80cb027f6b349846a3bf6d73b5e95e782175e52f22108cfa17876aaeff93702 \ + --hash=sha256:b30236e45cf30d2b8e7b3e85881719e98507abed1011bf463a8fa23e9c3e98a8 \ + --hash=sha256:b3bc83488de33889877a0f2543ade9f70c67d66d9ebb4ac959502e12de895788 \ + --hash=sha256:b865addae83924361678b652338317d1bd7e79b1f4596f96b96c77a5a34b34da \ + --hash=sha256:b8bb0864c5a28024fac8a632c443c87c5aa6f215c0b126c449ae1a150412f31d \ + --hash=sha256:ba1cc08a7ccde2d2ec775841541641e4548226580ab850948cbfda66a1befcdc \ + --hash=sha256:bdb2c67c6c1390b63c6ff89f210c8fd09d9a1217a465701eac7316313c915e4c \ + --hash=sha256:c1ff362665ae507275af2853520967820d9124984e0f7466736aea23d8611fba \ + --hash=sha256:c2514fceb77bc5e7a2f7adfaa1feb2fb311607c9cb518dbc378688ec73d8292f \ + --hash=sha256:c3355370a2c156cffb25e876646f149d5d68f5e0a3ce86a5084dd0b64a994917 \ + --hash=sha256:c458b6d084f9b935061bc36216e8a69a7e293a2f1e68bf956dcd9e6cbcd143f5 \ + --hash=sha256:d0eae10f8159e8fdad514efdc92d74fd8d682c933a6dd088030f3834bc8e6b26 \ + --hash=sha256:d76623373421df22fb4cf8817020cbb7ef15c725b9d5e45f17e189bfc384190f \ + --hash=sha256:ebc55a14a21cb14062aa4162f906cd962b28e2e9ea38f9b4391244cd8de4ae0b \ + --hash=sha256:eda16858a3cab07b80edaf74336ece1f986ba330fdb8ee0d6c0d68fe82bc96be \ + --hash=sha256:ee2922902c45ae8ccada2c5b501ab86c36525b883eff4255313a253a3160861c \ + --hash=sha256:efd7b85f94a6f21e4932043973a7ba2613b059c4a000551892ac9f1d11f5baf3 \ + --hash=sha256:f7057c9a337546edc7973c0d3ba84ddcdf0daa14533c2065749c9075001090e6 \ + --hash=sha256:fa160448684b4e94d80416c0fa4aac48967a969efe22931448d853ada8baf926 \ + --hash=sha256:fc09d0aa354569bc501d4e787133afc08552722d3ab34836a80547331bb5d4a0 # via -r repositories/private/resolver_requirements.txt -tqdm==4.64.1 \ - --hash=sha256:5f4f682a004951c1b450bc753c710e9280c5746ce6ffedee253ddbcbf54cf1e4 \ - --hash=sha256:6fee160d6ffcd1b1c68c65f14c829c22832bc401726335ce92c52d395944a6a1 +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 \ + --hash=sha256:f8aef9c52c08c13a65f30ea34f4e5aac3fd1a34959879d7e59e63027286627f2 # via -r repositories/private/resolver_requirements.txt -yarl==1.8.1 \ - --hash=sha256:076eede537ab978b605f41db79a56cad2e7efeea2aa6e0fa8f05a26c24a034fb \ - --hash=sha256:07b21e274de4c637f3e3b7104694e53260b5fc10d51fb3ec5fed1da8e0f754e3 \ - --hash=sha256:0ab5a138211c1c366404d912824bdcf5545ccba5b3ff52c42c4af4cbdc2c5035 \ - --hash=sha256:0c03f456522d1ec815893d85fccb5def01ffaa74c1b16ff30f8aaa03eb21e453 \ - --hash=sha256:12768232751689c1a89b0376a96a32bc7633c08da45ad985d0c49ede691f5c0d \ - --hash=sha256:19cd801d6f983918a3f3a39f3a45b553c015c5aac92ccd1fac619bd74beece4a \ - --hash=sha256:1ca7e596c55bd675432b11320b4eacc62310c2145d6801a1f8e9ad160685a231 \ - --hash=sha256:1e4808f996ca39a6463f45182e2af2fae55e2560be586d447ce8016f389f626f \ - --hash=sha256:205904cffd69ae972a1707a1bd3ea7cded594b1d773a0ce66714edf17833cdae \ - --hash=sha256:20df6ff4089bc86e4a66e3b1380460f864df3dd9dccaf88d6b3385d24405893b \ - --hash=sha256:21ac44b763e0eec15746a3d440f5e09ad2ecc8b5f6dcd3ea8cb4773d6d4703e3 \ - --hash=sha256:29e256649f42771829974e742061c3501cc50cf16e63f91ed8d1bf98242e5507 \ - --hash=sha256:2d800b9c2eaf0684c08be5f50e52bfa2aa920e7163c2ea43f4f431e829b4f0fd \ - --hash=sha256:2d93a049d29df172f48bcb09acf9226318e712ce67374f893b460b42cc1380ae \ - --hash=sha256:31a9a04ecccd6b03e2b0e12e82131f1488dea5555a13a4d32f064e22a6003cfe \ - --hash=sha256:3d1a50e461615747dd93c099f297c1994d472b0f4d2db8a64e55b1edf704ec1c \ - --hash=sha256:449c957ffc6bc2309e1fbe67ab7d2c1efca89d3f4912baeb8ead207bb3cc1cd4 \ - --hash=sha256:4a88510731cd8d4befaba5fbd734a7dd914de5ab8132a5b3dde0bbd6c9476c64 \ - --hash=sha256:4c322cbaa4ed78a8aac89b2174a6df398faf50e5fc12c4c191c40c59d5e28357 \ - --hash=sha256:5395da939ffa959974577eff2cbfc24b004a2fb6c346918f39966a5786874e54 \ - --hash=sha256:5587bba41399854703212b87071c6d8638fa6e61656385875f8c6dff92b2e461 \ - --hash=sha256:56c11efb0a89700987d05597b08a1efcd78d74c52febe530126785e1b1a285f4 \ - --hash=sha256:5999c4662631cb798496535afbd837a102859568adc67d75d2045e31ec3ac497 \ - --hash=sha256:59ddd85a1214862ce7c7c66457f05543b6a275b70a65de366030d56159a979f0 \ - --hash=sha256:6347f1a58e658b97b0a0d1ff7658a03cb79bdbda0331603bed24dd7054a6dea1 \ - --hash=sha256:6628d750041550c5d9da50bb40b5cf28a2e63b9388bac10fedd4f19236ef4957 \ - --hash=sha256:6afb336e23a793cd3b6476c30f030a0d4c7539cd81649683b5e0c1b0ab0bf350 \ - --hash=sha256:6c8148e0b52bf9535c40c48faebb00cb294ee577ca069d21bd5c48d302a83780 \ - --hash=sha256:76577f13333b4fe345c3704811ac7509b31499132ff0181f25ee26619de2c843 \ - --hash=sha256:7c0da7e44d0c9108d8b98469338705e07f4bb7dab96dbd8fa4e91b337db42548 \ - --hash=sha256:7de89c8456525650ffa2bb56a3eee6af891e98f498babd43ae307bd42dca98f6 \ - --hash=sha256:7ec362167e2c9fd178f82f252b6d97669d7245695dc057ee182118042026da40 \ - --hash=sha256:7fce6cbc6c170ede0221cc8c91b285f7f3c8b9fe28283b51885ff621bbe0f8ee \ - --hash=sha256:85cba594433915d5c9a0d14b24cfba0339f57a2fff203a5d4fd070e593307d0b \ - --hash=sha256:8b0af1cf36b93cee99a31a545fe91d08223e64390c5ecc5e94c39511832a4bb6 \ - --hash=sha256:9130ddf1ae9978abe63808b6b60a897e41fccb834408cde79522feb37fb72fb0 \ - --hash=sha256:99449cd5366fe4608e7226c6cae80873296dfa0cde45d9b498fefa1de315a09e \ - --hash=sha256:9de955d98e02fab288c7718662afb33aab64212ecb368c5dc866d9a57bf48880 \ - --hash=sha256:a0fb2cb4204ddb456a8e32381f9a90000429489a25f64e817e6ff94879d432fc \ - --hash=sha256:a165442348c211b5dea67c0206fc61366212d7082ba8118c8c5c1c853ea4d82e \ - --hash=sha256:ab2a60d57ca88e1d4ca34a10e9fb4ab2ac5ad315543351de3a612bbb0560bead \ - --hash=sha256:abc06b97407868ef38f3d172762f4069323de52f2b70d133d096a48d72215d28 \ - --hash=sha256:af887845b8c2e060eb5605ff72b6f2dd2aab7a761379373fd89d314f4752abbf \ - --hash=sha256:b19255dde4b4f4c32e012038f2c169bb72e7f081552bea4641cab4d88bc409dd \ - --hash=sha256:b3ded839a5c5608eec8b6f9ae9a62cb22cd037ea97c627f38ae0841a48f09eae \ - --hash=sha256:c1445a0c562ed561d06d8cbc5c8916c6008a31c60bc3655cdd2de1d3bf5174a0 \ - --hash=sha256:d0272228fabe78ce00a3365ffffd6f643f57a91043e119c289aaba202f4095b0 \ - --hash=sha256:d0b51530877d3ad7a8d47b2fff0c8df3b8f3b8deddf057379ba50b13df2a5eae \ - --hash=sha256:d0f77539733e0ec2475ddcd4e26777d08996f8cd55d2aef82ec4d3896687abda \ - --hash=sha256:d2b8f245dad9e331540c350285910b20dd913dc86d4ee410c11d48523c4fd546 \ - --hash=sha256:dd032e8422a52e5a4860e062eb84ac94ea08861d334a4bcaf142a63ce8ad4802 \ - --hash=sha256:de49d77e968de6626ba7ef4472323f9d2e5a56c1d85b7c0e2a190b2173d3b9be \ - --hash=sha256:de839c3a1826a909fdbfe05f6fe2167c4ab033f1133757b5936efe2f84904c07 \ - --hash=sha256:e80ed5a9939ceb6fda42811542f31c8602be336b1fb977bccb012e83da7e4936 \ - --hash=sha256:ea30a42dc94d42f2ba4d0f7c0ffb4f4f9baa1b23045910c0c32df9c9902cb272 \ - --hash=sha256:ea513a25976d21733bff523e0ca836ef1679630ef4ad22d46987d04b372d57fc \ - --hash=sha256:ed19b74e81b10b592084a5ad1e70f845f0aacb57577018d31de064e71ffa267a \ - --hash=sha256:f5af52738e225fcc526ae64071b7e5342abe03f42e0e8918227b38c9aa711e28 \ - --hash=sha256:fae37373155f5ef9b403ab48af5136ae9851151f7aacd9926251ab26b953118b +typing-extensions==4.15.0 \ + --hash=sha256:0cea48d173cc12fa28ecabc3b837ea3cf6f38c6d1136f85cbaaf598984861466 \ + --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 + # via aiosignal +yarl==1.22.0 \ + --hash=sha256:01e73b85a5434f89fc4fe27dcda2aff08ddf35e4d47bbbea3bdcd25321af538a \ + --hash=sha256:029866bde8d7b0878b9c160e72305bbf0a7342bcd20b9999381704ae03308dc8 \ + --hash=sha256:078278b9b0b11568937d9509b589ee83ef98ed6d561dfe2020e24a9fd08eaa2b \ + --hash=sha256:078a8aefd263f4d4f923a9677b942b445a2be970ca24548a8102689a3a8ab8da \ + --hash=sha256:07a524d84df0c10f41e3ee918846e1974aba4ec017f990dc735aad487a0bdfdf \ + --hash=sha256:088e4e08f033db4be2ccd1f34cf29fe994772fb54cfe004bbf54db320af56890 \ + --hash=sha256:0b5bcc1a9c4839e7e30b7b30dd47fe5e7e44fb7054ec29b5bb8d526aa1041093 \ + --hash=sha256:0cf71bf877efeac18b38d3930594c0948c82b64547c1cf420ba48722fe5509f6 \ + --hash=sha256:0d6e6885777af0f110b0e5d7e5dda8b704efed3894da26220b7f3d887b839a79 \ + --hash=sha256:0dd9a702591ca2e543631c2a017e4a547e38a5c0f29eece37d9097e04a7ac683 \ + --hash=sha256:10619d9fdee46d20edc49d3479e2f8269d0779f1b031e6f7c2aa1c76be04b7ed \ + --hash=sha256:131a085a53bfe839a477c0845acf21efc77457ba2bcf5899618136d64f3303a2 \ + --hash=sha256:1380560bdba02b6b6c90de54133c81c9f2a453dee9912fe58c1dcced1edb7cff \ + --hash=sha256:139718f35149ff544caba20fce6e8a2f71f1e39b92c700d8438a0b1d2a631a02 \ + --hash=sha256:14291620375b1060613f4aab9ebf21850058b6b1b438f386cc814813d901c60b \ + --hash=sha256:1834bb90991cc2999f10f97f5f01317f99b143284766d197e43cd5b45eb18d03 \ + --hash=sha256:1ab72135b1f2db3fed3997d7e7dc1b80573c67138023852b6efb336a5eae6511 \ + --hash=sha256:1e7ce67c34138a058fd092f67d07a72b8e31ff0c9236e751957465a24b28910c \ + --hash=sha256:1e8fbaa7cec507aa24ea27a01456e8dd4b6fab829059b69844bd348f2d467124 \ + --hash=sha256:22965c2af250d20c873cdbee8ff958fb809940aeb2e74ba5f20aaf6b7ac8c70c \ + --hash=sha256:22b029f2881599e2f1b06f8f1db2ee63bd309e2293ba2d566e008ba12778b8da \ + --hash=sha256:243dda95d901c733f5b59214d28b0120893d91777cb8aa043e6ef059d3cddfe2 \ + --hash=sha256:2ca6fd72a8cd803be290d42f2dec5cdcd5299eeb93c2d929bf060ad9efaf5de0 \ + --hash=sha256:2e4e1f6f0b4da23e61188676e3ed027ef0baa833a2e633c29ff8530800edccba \ + --hash=sha256:31f0b53913220599446872d757257be5898019c85e7971599065bc55065dc99d \ + --hash=sha256:334b8721303e61b00019474cc103bdac3d7b1f65e91f0bfedeec2d56dfe74b53 \ + --hash=sha256:33e32a0dd0c8205efa8e83d04fc9f19313772b78522d1bdc7d9aed706bfd6138 \ + --hash=sha256:34b36c2c57124530884d89d50ed2c1478697ad7473efd59cfd479945c95650e4 \ + --hash=sha256:3aa27acb6de7a23785d81557577491f6c38a5209a254d1191519d07d8fe51748 \ + --hash=sha256:3b06bcadaac49c70f4c88af4ffcfbe3dc155aab3163e75777818092478bcbbe7 \ + --hash=sha256:3b7c88eeef021579d600e50363e0b6ee4f7f6f728cd3486b9d0f3ee7b946398d \ + --hash=sha256:3e2daa88dc91870215961e96a039ec73e4937da13cf77ce17f9cad0c18df3503 \ + --hash=sha256:3ea66b1c11c9150f1372f69afb6b8116f2dd7286f38e14ea71a44eee9ec51b9d \ + --hash=sha256:42188e6a615c1a75bcaa6e150c3fe8f3e8680471a6b10150c5f7e83f47cc34d2 \ + --hash=sha256:433885ab5431bc3d3d4f2f9bd15bfa1614c522b0f1405d62c4f926ccd69d04fa \ + --hash=sha256:437840083abe022c978470b942ff832c3940b2ad3734d424b7eaffcd07f76737 \ + --hash=sha256:4398557cbf484207df000309235979c79c4356518fd5c99158c7d38203c4da4f \ + --hash=sha256:45c2842ff0e0d1b35a6bf1cd6c690939dacb617a70827f715232b2e0494d55d1 \ + --hash=sha256:47743b82b76d89a1d20b83e60d5c20314cbd5ba2befc9cda8f28300c4a08ed4d \ + --hash=sha256:4792b262d585ff0dff6bcb787f8492e40698443ec982a3568c2096433660c694 \ + --hash=sha256:47d8a5c446df1c4db9d21b49619ffdba90e77c89ec6e283f453856c74b50b9e3 \ + --hash=sha256:47fdb18187e2a4e18fda2c25c05d8251a9e4a521edaed757fef033e7d8498d9a \ + --hash=sha256:4c52a6e78aef5cf47a98ef8e934755abf53953379b7d53e68b15ff4420e6683d \ + --hash=sha256:4dcc74149ccc8bba31ce1944acee24813e93cfdee2acda3c172df844948ddf7b \ + --hash=sha256:50678a3b71c751d58d7908edc96d332af328839eea883bb554a43f539101277a \ + --hash=sha256:51af598701f5299012b8416486b40fceef8c26fc87dc6d7d1f6fc30609ea0aa6 \ + --hash=sha256:594fcab1032e2d2cc3321bb2e51271e7cd2b516c7d9aee780ece81b07ff8244b \ + --hash=sha256:595697f68bd1f0c1c159fcb97b661fc9c3f5db46498043555d04805430e79bea \ + --hash=sha256:59c189e3e99a59cf8d83cbb31d4db02d66cda5a1a4374e8a012b51255341abf5 \ + --hash=sha256:5a3bf7f62a289fa90f1990422dc8dff5a458469ea71d1624585ec3a4c8d6960f \ + --hash=sha256:5c401e05ad47a75869c3ab3e35137f8468b846770587e70d71e11de797d113df \ + --hash=sha256:5cdac20da754f3a723cceea5b3448e1a2074866406adeb4ef35b469d089adb8f \ + --hash=sha256:5d0fcda9608875f7d052eff120c7a5da474a6796fe4d83e152e0e4d42f6d1a9b \ + --hash=sha256:5dbeefd6ca588b33576a01b0ad58aa934bc1b41ef89dee505bf2932b22ddffba \ + --hash=sha256:62441e55958977b8167b2709c164c91a6363e25da322d87ae6dd9c6019ceecf9 \ + --hash=sha256:663e1cadaddae26be034a6ab6072449a8426ddb03d500f43daf952b74553bba0 \ + --hash=sha256:669930400e375570189492dc8d8341301578e8493aec04aebc20d4717f899dd6 \ + --hash=sha256:68986a61557d37bb90d3051a45b91fa3d5c516d177dfc6dd6f2f436a07ff2b6b \ + --hash=sha256:6944b2dc72c4d7f7052683487e3677456050ff77fcf5e6204e98caf785ad1967 \ + --hash=sha256:6a635ea45ba4ea8238463b4f7d0e721bad669f80878b7bfd1f89266e2ae63da2 \ + --hash=sha256:6c5010a52015e7c70f86eb967db0f37f3c8bd503a695a49f8d45700144667708 \ + --hash=sha256:6dcbb0829c671f305be48a7227918cfcd11276c2d637a8033a99a02b67bf9eda \ + --hash=sha256:70dfd4f241c04bd9239d53b17f11e6ab672b9f1420364af63e8531198e3f5fe8 \ + --hash=sha256:719ae08b6972befcba4310e49edb1161a88cdd331e3a694b84466bd938a6ab10 \ + --hash=sha256:75976c6945d85dbb9ee6308cd7ff7b1fb9409380c82d6119bd778d8fcfe2931c \ + --hash=sha256:7861058d0582b847bc4e3a4a4c46828a410bca738673f35a29ba3ca5db0b473b \ + --hash=sha256:792a2af6d58177ef7c19cbf0097aba92ca1b9cb3ffdd9c7470e156c8f9b5e028 \ + --hash=sha256:8009b3173bcd637be650922ac455946197d858b3630b6d8787aa9e5c4564533e \ + --hash=sha256:80ddf7a5f8c86cb3eb4bc9028b07bbbf1f08a96c5c0bc1244be5e8fefcb94147 \ + --hash=sha256:8218f4e98d3c10d683584cb40f0424f4b9fd6e95610232dd75e13743b070ee33 \ + --hash=sha256:84fc3ec96fce86ce5aa305eb4aa9358279d1aa644b71fab7b8ed33fe3ba1a7ca \ + --hash=sha256:852863707010316c973162e703bddabec35e8757e67fcb8ad58829de1ebc8590 \ + --hash=sha256:8884d8b332a5e9b88e23f60bb166890009429391864c685e17bd73a9eda9105c \ + --hash=sha256:8dee9c25c74997f6a750cd317b8ca63545169c098faee42c84aa5e506c819b53 \ + --hash=sha256:939fe60db294c786f6b7c2d2e121576628468f65453d86b0fe36cb52f987bd74 \ + --hash=sha256:99b6fc1d55782461b78221e95fc357b47ad98b041e8e20f47c1411d0aacddc60 \ + --hash=sha256:9d7672ecf7557476642c88497c2f8d8542f8e36596e928e9bcba0e42e1e7d71f \ + --hash=sha256:9f6d73c1436b934e3f01df1e1b21ff765cd1d28c77dfb9ace207f746d4610ee1 \ + --hash=sha256:9fb17ea16e972c63d25d4a97f016d235c78dd2344820eb35bc034bc32012ee27 \ + --hash=sha256:a49370e8f711daec68d09b821a34e1167792ee2d24d405cbc2387be4f158b520 \ + --hash=sha256:a4fcfc8eb2c34148c118dfa02e6427ca278bfd0f3df7c5f99e33d2c0e81eae3e \ + --hash=sha256:a899cbd98dce6f5d8de1aad31cb712ec0a530abc0a86bd6edaa47c1090138467 \ + --hash=sha256:a9b1ba5610a4e20f655258d5a1fdc7ebe3d837bb0e45b581398b99eb98b1f5ca \ + --hash=sha256:af74f05666a5e531289cb1cc9c883d1de2088b8e5b4de48004e5ca8a830ac859 \ + --hash=sha256:b0748275abb8c1e1e09301ee3cf90c8a99678a4e92e4373705f2a2570d581273 \ + --hash=sha256:b266bd01fedeffeeac01a79ae181719ff848a5a13ce10075adbefc8f1daee70e \ + --hash=sha256:b4f15793aa49793ec8d1c708ab7f9eded1aa72edc5174cae703651555ed1b601 \ + --hash=sha256:b580e71cac3f8113d3135888770903eaf2f507e9421e5697d6ee6d8cd1c7f054 \ + --hash=sha256:b6a6f620cfe13ccec221fa312139135166e47ae169f8253f72a0abc0dae94376 \ + --hash=sha256:b790b39c7e9a4192dc2e201a282109ed2985a1ddbd5ac08dc56d0e121400a8f7 \ + --hash=sha256:b85b982afde6df99ecc996990d4ad7ccbdbb70e2a4ba4de0aecde5922ba98a0b \ + --hash=sha256:b8a0588521a26bf92a57a1705b77b8b59044cdceccac7151bd8d229e66b8dedb \ + --hash=sha256:ba440ae430c00eee41509353628600212112cd5018d5def7e9b05ea7ac34eb65 \ + --hash=sha256:bca03b91c323036913993ff5c738d0842fc9c60c4648e5c8d98331526df89784 \ + --hash=sha256:bebf8557577d4401ba8bd9ff33906f1376c877aa78d1fe216ad01b4d6745af71 \ + --hash=sha256:bec03d0d388060058f5d291a813f21c011041938a441c593374da6077fe21b1b \ + --hash=sha256:bf4a21e58b9cde0e401e683ebd00f6ed30a06d14e93f7c8fd059f8b6e8f87b6a \ + --hash=sha256:c0232bce2170103ec23c454e54a57008a9a72b5d1c3105dc2496750da8cfa47c \ + --hash=sha256:c4647674b6150d2cae088fc07de2738a84b8bcedebef29802cf0b0a82ab6face \ + --hash=sha256:c7044802eec4524fde550afc28edda0dd5784c4c45f0be151a2d3ba017daca7d \ + --hash=sha256:c7bd6683587567e5a49ee6e336e0612bec8329be1b7d4c8af5687dcdeb67ee1e \ + --hash=sha256:ca1f59c4e1ab6e72f0a23c13fca5430f889634166be85dbf1013683e49e3278e \ + --hash=sha256:cb95a9b1adaa48e41815a55ae740cfda005758104049a640a398120bf02515ca \ + --hash=sha256:cfebc0ac8333520d2d0423cbbe43ae43c8838862ddb898f5ca68565e395516e9 \ + --hash=sha256:d332fc2e3c94dad927f2112395772a4e4fedbcf8f80efc21ed7cdfae4d574fdb \ + --hash=sha256:d3e32536234a95f513bd374e93d717cf6b2231a791758de6c509e3653f234c95 \ + --hash=sha256:d5372ca1df0f91a86b047d1277c2aaf1edb32d78bbcefffc81b40ffd18f027ed \ + --hash=sha256:d77e1b2c6d04711478cb1c4ab90db07f1609ccf06a287d5607fcd90dc9863acf \ + --hash=sha256:d947071e6ebcf2e2bee8fce76e10faca8f7a14808ca36a910263acaacef08eca \ + --hash=sha256:dd7afd3f8b0bfb4e0d9fc3c31bfe8a4ec7debe124cfd90619305def3c8ca8cd2 \ + --hash=sha256:de6b9a04c606978fdfe72666fa216ffcf2d1a9f6a381058d4378f8d7b1e5de62 \ + --hash=sha256:e1651bf8e0398574646744c1885a41198eba53dc8a9312b954073f845c90a8df \ + --hash=sha256:e1b329cb8146d7b736677a2440e422eadd775d1806a81db2d4cded80a48efc1a \ + --hash=sha256:e1b51bebd221006d3d2f95fbe124b22b247136647ae5dcc8c7acafba66e5ee67 \ + --hash=sha256:e340382d1afa5d32b892b3ff062436d592ec3d692aeea3bef3a5cfe11bbf8c6f \ + --hash=sha256:e4b582bab49ac33c8deb97e058cd67c2c50dac0dd134874106d9c774fd272529 \ + --hash=sha256:e51ac5435758ba97ad69617e13233da53908beccc6cfcd6c34bbed8dcbede486 \ + --hash=sha256:e5542339dcf2747135c5c85f68680353d5cb9ffd741c0f2e8d832d054d41f35a \ + --hash=sha256:e6438cc8f23a9c1478633d216b16104a586b9761db62bfacb6425bac0a36679e \ + --hash=sha256:e81fda2fb4a07eda1a2252b216aa0df23ebcd4d584894e9612e80999a78fd95b \ + --hash=sha256:ea70f61a47f3cc93bdf8b2f368ed359ef02a01ca6393916bc8ff877427181e74 \ + --hash=sha256:ebd4549b108d732dba1d4ace67614b9545b21ece30937a63a65dd34efa19732d \ + --hash=sha256:efb07073be061c8f79d03d04139a80ba33cbd390ca8f0297aae9cce6411e4c6b \ + --hash=sha256:f0d97c18dfd9a9af4490631905a3f131a8e4c9e80a39353919e2cfed8f00aedc \ + --hash=sha256:f1e09112a2c31ffe8d80be1b0988fa6a18c5d5cad92a9ffbb1c04c91bfe52ad2 \ + --hash=sha256:f3d7a87a78d46a2e3d5b72587ac14b4c16952dd0887dbb051451eceac774411e \ + --hash=sha256:f4afb5c34f2c6fecdcc182dfcfc6af6cccf1aa923eed4d6a12e9d96904e1a0d8 \ + --hash=sha256:f6d2cb59377d99718913ad9a151030d6f83ef420a2b8f521d94609ecc106ee82 \ + --hash=sha256:f87ac53513d22240c7d59203f25cc3beac1e574c6cd681bbfd321987b69f95fd \ + --hash=sha256:ff86011bd159a9d2dfc89c34cfd8aff12875980e3bd6a39ff097887520e60249 # via aiohttp diff --git a/repositories/rcl.BUILD.bazel b/repositories/rcl.BUILD.bazel index 02e0bfa7..1fd1700d 100644 --- a/repositories/rcl.BUILD.bazel +++ b/repositories/rcl.BUILD.bazel @@ -34,12 +34,18 @@ ros2_c_library( "@com_github_mvukov_rules_ros2//ros2:rcl_logging_syslog": ["@ros2_rcl_logging_syslog//:rcl_logging_syslog"], }, no_match_error = "Unsupported rcl_logging implementation", - ), - includes = ["rcl/include"], + ) + [ + "@libyaml", + ], + includes = [ + "rcl/include", + "rcl/src", + ], visibility = ["//visibility:public"], deps = [ ":rcl_yaml_param_parser", "@ros2_rcl_interfaces//:c_rcl_interfaces", + "@ros2_rcl_interfaces//:c_type_description_interfaces", "@ros2_rcl_logging//:rcl_logging_interface", "@ros2_rcutils//:rcutils", "@ros2_rmw_implementation//:rmw_implementation", diff --git a/repositories/rcl_interfaces.BUILD.bazel b/repositories/rcl_interfaces.BUILD.bazel index a00b5f7c..bf7f7769 100644 --- a/repositories/rcl_interfaces.BUILD.bazel +++ b/repositories/rcl_interfaces.BUILD.bazel @@ -18,6 +18,7 @@ ros2_interface_library( visibility = ["//visibility:public"], deps = [ ":builtin_interfaces", + ":service_msgs", "@ros2_unique_identifier_msgs//:unique_identifier_msgs", ], ) @@ -42,6 +43,9 @@ ros2_interface_library( "lifecycle_msgs/srv/*.srv", ]), visibility = ["//visibility:public"], + deps = [ + ":service_msgs", + ], ) ros2_interface_library( @@ -51,7 +55,10 @@ ros2_interface_library( "rcl_interfaces/srv/*.srv", ]), visibility = ["//visibility:public"], - deps = [":builtin_interfaces"], + deps = [ + ":builtin_interfaces", + ":service_msgs", + ], ) ros2_interface_library( @@ -175,3 +182,35 @@ py_ros2_interface_library( visibility = ["//visibility:public"], deps = [":statistics_msgs"], ) + +ros2_interface_library( + name = "service_msgs", + srcs = glob(["service_msgs/msg/*.msg"]), + visibility = ["//visibility:public"], + deps = [":builtin_interfaces"], +) + +ros2_interface_library( + name = "type_description_interfaces", + srcs = glob([ + "type_description_interfaces/msg/*.msg", + "type_description_interfaces/srv/*.srv", + ]), + visibility = ["//visibility:public"], + deps = [ + ":builtin_interfaces", + ":service_msgs", + ], +) + +c_ros2_interface_library( + name = "c_type_description_interfaces", + visibility = ["//visibility:public"], + deps = [":type_description_interfaces"], +) + +py_ros2_interface_library( + name = "py_type_description_interfaces", + visibility = ["//visibility:public"], + deps = [":type_description_interfaces"], +) diff --git a/repositories/rclpy.BUILD.bazel b/repositories/rclpy.BUILD.bazel index 957d2d7e..1aa7ab55 100644 --- a/repositories/rclpy.BUILD.bazel +++ b/repositories/rclpy.BUILD.bazel @@ -7,15 +7,19 @@ load( "ros2_cpp_binary", ) load("@rules_python//python:defs.bzl", "py_library") +load("@rules_ros2_pip_deps//:requirements.bzl", "requirement") ros2_cpp_binary( name = "rclpy/rclpy/_rclpy_pybind11.so", srcs = glob([ - "rclpy/src/rclpy/*.cpp", - "rclpy/src/rclpy/*.hpp", + "rclpy/src/rclpy/**/*.cpp", + "rclpy/src/rclpy/**/*.hpp", ]), copts = ["-fvisibility=hidden"], - includes = ["rclpy/src"], + includes = [ + "rclpy/src", + "rclpy/src/rclpy", + ], linkopts = [ "-fvisibility=hidden", "-latomic", @@ -44,6 +48,8 @@ py_library( "@ros2_rcl_interfaces//:py_builtin_interfaces", "@ros2_rcl_interfaces//:py_rcl_interfaces", "@ros2_rcl_interfaces//:py_rosgraph_msgs", + "@ros2_rcl_interfaces//:py_type_description_interfaces", "@ros2_rpyutils//:rpyutils", + requirement("pyyaml"), ], ) diff --git a/repositories/repositories.bzl b/repositories/repositories.bzl index eb7aee71..9429eb05 100644 --- a/repositories/repositories.bzl +++ b/repositories/repositories.bzl @@ -241,9 +241,9 @@ def ros2_repositories(): http_archive, name = "ros2", build_file = "@com_github_mvukov_rules_ros2//repositories:ros2.BUILD.bazel", - sha256 = "b82b15e9b186e9a0df2acb44c1a09d4bf2b24ded37a86e08115c32cefdecc89a", - strip_prefix = "ros2-release-humble-20250721", - urls = ["https://github.com/ros2/ros2/archive/refs/tags/release-humble-20250721.tar.gz"], + sha256 = "7e55ac684cb1647e463f2bebcaa55bf14164c38d2fa011c0c4e44bafe8140f46", + strip_prefix = "ros2-release-jazzy-20250820", + urls = ["https://github.com/ros2/ros2/archive/refs/tags/release-jazzy-20250820.tar.gz"], ) ros2_repositories_impl() @@ -324,12 +324,12 @@ def ros2_repositories(): urls = ["https://github.com/foxglove/mcap/archive/refs/tags/releases/cpp/v1.4.1.tar.gz"], ) - # NOTE: Use the humble branch. + # NOTE: Use the jazzy branch. maybe( http_archive, name = "ros2_rcl_logging_syslog", build_file = "@com_github_mvukov_rules_ros2//repositories:rcl_logging_syslog.BUILD.bazel", - sha256 = "89039a8d05d1d14ccb85a3d065871d54cce831522bd8aa687e27eb6afd333d07", - strip_prefix = "rcl_logging_syslog-e63257f2d5ca693f286bbcedf2b23720675b7f73", - urls = ["https://github.com/fujitatomoya/rcl_logging_syslog/archive/e63257f2d5ca693f286bbcedf2b23720675b7f73.zip"], + sha256 = "748a39586307ce375999f0b6a861e5b36c992d6aaeffa2641f2213171f37affb", + strip_prefix = "rcl_logging_syslog-1b8165639d34f6321f725de5b4d72effb2d15314", + urls = ["https://github.com/fujitatomoya/rcl_logging_syslog/archive/1b8165639d34f6321f725de5b4d72effb2d15314.zip"], ) diff --git a/repositories/rmw.BUILD.bazel b/repositories/rmw.BUILD.bazel index a0a2e069..7cf92a3a 100644 --- a/repositories/rmw.BUILD.bazel +++ b/repositories/rmw.BUILD.bazel @@ -17,6 +17,7 @@ ros2_c_library( deps = [ "@ros2_rcutils//:rcutils", "@ros2_rosidl//:rosidl_runtime_c", + "@ros2_rosidl_dynamic_typesupport//:rosidl_dynamic_typesupport", ], ) diff --git a/repositories/rmw_dds_common.BUILD.bazel b/repositories/rmw_dds_common.BUILD.bazel index 2a2acc02..804e7593 100644 --- a/repositories/rmw_dds_common.BUILD.bazel +++ b/repositories/rmw_dds_common.BUILD.bazel @@ -35,6 +35,7 @@ ros2_cpp_library( "@ros2_rcpputils//:rcpputils", "@ros2_rcutils//:rcutils", "@ros2_rmw//:rmw", + "@ros2_rmw//:rmw_cpp", "@ros2_rosidl//:rosidl_runtime_cpp", ], ) diff --git a/repositories/ros2_repo_mappings.yaml b/repositories/ros2_repo_mappings.yaml index 30fbea3d..e51123b3 100644 --- a/repositories/ros2_repo_mappings.yaml +++ b/repositories/ros2_repo_mappings.yaml @@ -15,13 +15,9 @@ repositories: geometry2: name: ros2_geometry2 build_file: "@com_github_mvukov_rules_ros2//repositories:geometry2.BUILD.bazel" - patch_args: ["-p1"] - patches: - # https://github.com/ros2/geometry2/commit/f95dfbef3f7b2b65ecf18c7cc70bdac84a2bb6d4 - - "@com_github_mvukov_rules_ros2//repositories/patches:geometry2_fix-use-after-free-bug.patch" iceoryx: name: iceoryx - strip_prefix: iceoryx-2.0.5 + strip_prefix: iceoryx-2.0.6 build_file: "@com_github_mvukov_rules_ros2//repositories:iceoryx.BUILD.bazel" image_common: name: ros2_image_common @@ -35,6 +31,11 @@ repositories: launch: name: ros2_launch build_file: "@com_github_mvukov_rules_ros2//repositories:launch.BUILD.bazel" + # Revert changes from https://github.com/ros2/launch/pull/686. + # The symlink causes issues for tests. + patch_args: ["-p1"] + patches: + - "@com_github_mvukov_rules_ros2//repositories/patches:launch_no_log_dir_latest_symlink.patch" launch_ros: name: ros2_launch_ros build_file: "@com_github_mvukov_rules_ros2//repositories:launch_ros.BUILD.bazel" @@ -53,8 +54,6 @@ repositories: rcl: name: ros2_rcl build_file: "@com_github_mvukov_rules_ros2//repositories:rcl.BUILD.bazel" - patches: - - "@com_github_mvukov_rules_ros2//repositories/patches:fix-null-allocator-and-racy-condition.-1188.patch" rcl_interfaces: name: ros2_rcl_interfaces build_file: "@com_github_mvukov_rules_ros2//repositories:rcl_interfaces.BUILD.bazel" @@ -68,10 +67,6 @@ repositories: patch_args: ["-p1"] patches: - "@com_github_mvukov_rules_ros2//repositories/patches:rclcpp_do-not-allocate-in-signal-handler.patch" - # https://github.com/ros2/rclcpp/commit/37adc03c11171f67c213ee72f7ce43fdcbda7b9e - - "@com_github_mvukov_rules_ros2//repositories/patches:rclcpp_fix-maybe-uninitialized-warning.patch" - # https://github.com/mvukov/rules_ros2/pull/117 - - "@com_github_mvukov_rules_ros2//repositories/patches:rclcpp_ts_libs_ownership.patch" rclpy: name: ros2_rclpy build_file: "@com_github_mvukov_rules_ros2//repositories:rclpy.BUILD.bazel" @@ -81,16 +76,12 @@ repositories: rcutils: name: ros2_rcutils build_file: "@com_github_mvukov_rules_ros2//repositories:rcutils.BUILD.bazel" - patches: - - "@com_github_mvukov_rules_ros2//repositories/patches:rcutils_fix-setting-allocator-to-null.-478.patch" resource_retriever: name: ros2_resource_retriever build_file: "@com_github_mvukov_rules_ros2//repositories:resource_retriever.BUILD.bazel" rmw: name: ros2_rmw build_file: "@com_github_mvukov_rules_ros2//repositories:rmw.BUILD.bazel" - patches: - - "@com_github_mvukov_rules_ros2//repositories/patches:rmw_initialize-the-null-strucutre-with-static-value.-378.patch" rmw_cyclonedds: name: ros2_rmw_cyclonedds build_file: "@com_github_mvukov_rules_ros2//repositories:rmw_cyclonedds.BUILD.bazel" @@ -112,20 +103,23 @@ repositories: ros2cli: name: ros2cli build_file: "@com_github_mvukov_rules_ros2//repositories:ros2cli.BUILD.bazel" - patches: - - "@com_github_mvukov_rules_ros2//repositories/patches:ros2cli_replace-netifaces.patch" rosbag2: name: ros2_rosbag2 build_file: "@com_github_mvukov_rules_ros2//repositories:rosbag2.BUILD.bazel" patch_args: ["-p1"] patches: - "@com_github_mvukov_rules_ros2//repositories/patches:rosbag2_relax_plugin_errors.patch" + - "@com_github_mvukov_rules_ros2//repositories/patches:rosbag2_load_plugin_cli_extensions.patch" rosidl: name: ros2_rosidl build_file: "@com_github_mvukov_rules_ros2//repositories:rosidl.BUILD.bazel" patch_args: ["-p1"] patches: - "@com_github_mvukov_rules_ros2//repositories/patches:rosidl_rm_unnecessary_asserts.patch" + - "@com_github_mvukov_rules_ros2//repositories/patches:rosidl_fix_rosidl_typesupport_introspection_generator.patch" + rosidl_dynamic_typesupport: + name: ros2_rosidl_dynamic_typesupport + build_file: "@com_github_mvukov_rules_ros2//repositories:rosidl_dynamic_typesupport.BUILD.bazel" rosidl_python: name: ros2_rosidl_python build_file: "@com_github_mvukov_rules_ros2//repositories:rosidl_python.BUILD.bazel" diff --git a/repositories/ros2_repositories_impl.bzl b/repositories/ros2_repositories_impl.bzl index b6db1322..a54fc746 100644 --- a/repositories/ros2_repositories_impl.bzl +++ b/repositories/ros2_repositories_impl.bzl @@ -7,27 +7,27 @@ def ros2_repositories_impl(): http_archive, name = "ros2_ament_index", build_file = "@com_github_mvukov_rules_ros2//repositories:ament_index.BUILD.bazel", - sha256 = "e66896e255653508cb2bdecd7789f8dd5a03d7d2b4a1dd37445821a5679c447c", - strip_prefix = "ament_index-1.4.0", - url = "https://github.com/ament/ament_index/archive/refs/tags/1.4.0.tar.gz", + sha256 = "ddc8a03a9bd2a7ae3cc8a69ceaca77762d8524addc2d7260a99261ced410f29b", + strip_prefix = "ament_index-1.8.1", + url = "https://github.com/ament/ament_index/archive/refs/tags/1.8.1.tar.gz", ) maybe( http_archive, name = "ros2_class_loader", build_file = "@com_github_mvukov_rules_ros2//repositories:class_loader.BUILD.bazel", - sha256 = "a85a99b93fcad7c8d9686672b8e3793200b1da9d8feab7ab3a9962e34ab1f675", - strip_prefix = "class_loader-2.2.0", - url = "https://github.com/ros/class_loader/archive/refs/tags/2.2.0.tar.gz", + sha256 = "e2ee605412020b35e061851bb3afbad6616b8568421682f34f0903ed9bb5c657", + strip_prefix = "class_loader-2.7.0", + url = "https://github.com/ros/class_loader/archive/refs/tags/2.7.0.tar.gz", ) maybe( http_archive, name = "ros2_common_interfaces", build_file = "@com_github_mvukov_rules_ros2//repositories:common_interfaces.BUILD.bazel", - sha256 = "24700195f413e0b70f91091186847bd955794ee3ae9eccd2d1c491ae997dc2dd", - strip_prefix = "common_interfaces-4.9.0", - url = "https://github.com/ros2/common_interfaces/archive/refs/tags/4.9.0.tar.gz", + sha256 = "00b2c65720ac3275ba899c5b4de67b9c65a4f537fec3e2324b91f55ad1a44c67", + strip_prefix = "common_interfaces-5.3.6", + url = "https://github.com/ros2/common_interfaces/archive/refs/tags/5.3.6.tar.gz", ) maybe( @@ -43,129 +43,128 @@ def ros2_repositories_impl(): http_archive, name = "ros2_geometry2", build_file = "@com_github_mvukov_rules_ros2//repositories:geometry2.BUILD.bazel", - patch_args = ["-p1"], - patches = ["@com_github_mvukov_rules_ros2//repositories/patches:geometry2_fix-use-after-free-bug.patch"], - sha256 = "f37de662b976657932cda3340c7cacf5c081c77fb9230b0dc51546435b7345b5", - strip_prefix = "geometry2-0.25.15", - url = "https://github.com/ros2/geometry2/archive/refs/tags/0.25.15.tar.gz", + sha256 = "d36096e8276906603b7041364755d74198548a38faa7c72182e1be788f9218a5", + strip_prefix = "geometry2-0.36.14", + url = "https://github.com/ros2/geometry2/archive/refs/tags/0.36.14.tar.gz", ) maybe( http_archive, name = "iceoryx", - strip_prefix = "iceoryx-2.0.5", + strip_prefix = "iceoryx-2.0.6", build_file = "@com_github_mvukov_rules_ros2//repositories:iceoryx.BUILD.bazel", - sha256 = "bf6de70e3edee71223f993a29bff5e61af95ce4871104929d8bd1729f544bafb", - url = "https://github.com/eclipse-iceoryx/iceoryx/archive/refs/tags/v2.0.5.tar.gz", + sha256 = "a2add8ffee0c3357ef985cc46c7de79ccb754ea2bed02c61f2ff805ab2c869f1", + url = "https://github.com/eclipse-iceoryx/iceoryx/archive/refs/tags/v2.0.6.tar.gz", ) maybe( http_archive, name = "ros2_image_common", build_file = "@com_github_mvukov_rules_ros2//repositories:image_common.BUILD.bazel", - sha256 = "d412d8891f9e41f2ee3ded11c364350ccdcef4e0a686812a0fc49c674f6b868c", - strip_prefix = "image_common-3.1.12", - url = "https://github.com/ros-perception/image_common/archive/refs/tags/3.1.12.tar.gz", + sha256 = "8d8f969530bd613dc17b560536fb750b8d4d38652c0d969b0709f0d5c26a8eaf", + strip_prefix = "image_common-5.1.7", + url = "https://github.com/ros-perception/image_common/archive/refs/tags/5.1.7.tar.gz", ) maybe( http_archive, name = "ros2_kdl_parser", build_file = "@com_github_mvukov_rules_ros2//repositories:kdl_parser.BUILD.bazel", - sha256 = "f28da9bd7eaa8995f4b67bc9c8321d7467043aa43e01b918aa239b8b9971bf56", - strip_prefix = "kdl_parser-2.6.4", - url = "https://github.com/ros/kdl_parser/archive/refs/tags/2.6.4.tar.gz", + sha256 = "bc45fe59e1f6e66d069f6b02091928f41ccdd481ab779b20435b871391547141", + strip_prefix = "kdl_parser-2.11.0", + url = "https://github.com/ros/kdl_parser/archive/refs/tags/2.11.0.tar.gz", ) maybe( http_archive, name = "ros2_keyboard_handler", build_file = "@com_github_mvukov_rules_ros2//repositories:keyboard_handler.BUILD.bazel", - sha256 = "36e64e9e1927a6026e1b45cafc4c8efd32db274bfab5da0edd273a583f3c73f4", - strip_prefix = "keyboard_handler-0.0.5", - url = "https://github.com/ros-tooling/keyboard_handler/archive/refs/tags/0.0.5.tar.gz", + sha256 = "cfe90e57dd0236339a6ea569bf06f154e732d9de4d62274f6c7ca451fcc6740e", + strip_prefix = "keyboard_handler-0.3.1", + url = "https://github.com/ros-tooling/keyboard_handler/archive/refs/tags/0.3.1.tar.gz", ) maybe( http_archive, name = "ros2_launch", build_file = "@com_github_mvukov_rules_ros2//repositories:launch.BUILD.bazel", - sha256 = "3fff6bec4aeeb52212aafe85c29c07adbdbc51aa13721b6cb3ba70a92349272b", - strip_prefix = "launch-1.0.10", - url = "https://github.com/ros2/launch/archive/refs/tags/1.0.10.tar.gz", + patch_args = ["-p1"], + patches = ["@com_github_mvukov_rules_ros2//repositories/patches:launch_no_log_dir_latest_symlink.patch"], + sha256 = "cce1f50cc0d94fa0aa0369d1814589334239ff27b5d0f479c9dc92952673e44e", + strip_prefix = "launch-3.4.6", + url = "https://github.com/ros2/launch/archive/refs/tags/3.4.6.tar.gz", ) maybe( http_archive, name = "ros2_launch_ros", build_file = "@com_github_mvukov_rules_ros2//repositories:launch_ros.BUILD.bazel", - sha256 = "7d33de673dfa3aff46aec1faad6d4039dbee90442c4c200cd54b6263b9542275", - strip_prefix = "launch_ros-0.19.10", - url = "https://github.com/ros2/launch_ros/archive/refs/tags/0.19.10.tar.gz", + sha256 = "8cf6a440f3243afbd11112a18bb255831005b3869d2eae86075969a3c6d2b762", + strip_prefix = "launch_ros-0.26.8", + url = "https://github.com/ros2/launch_ros/archive/refs/tags/0.26.8.tar.gz", ) maybe( http_archive, name = "ros2_libstatistics_collector", build_file = "@com_github_mvukov_rules_ros2//repositories:libstatistics_collector.BUILD.bazel", - sha256 = "f16eb49c77a37db2b5344a6100d9697b19a55692e36118fb28817089a8d34351", - strip_prefix = "libstatistics_collector-1.3.4", - url = "https://github.com/ros-tooling/libstatistics_collector/archive/refs/tags/1.3.4.tar.gz", + sha256 = "512a146494ff0b148e31d2e1a8311d69f978d87542f310d93b190507b5027daa", + strip_prefix = "libstatistics_collector-1.7.4", + url = "https://github.com/ros-tooling/libstatistics_collector/archive/refs/tags/1.7.4.tar.gz", ) maybe( http_archive, name = "ros2_message_filters", build_file = "@com_github_mvukov_rules_ros2//repositories:message_filters.BUILD.bazel", - sha256 = "b9b32fc14b84a68690552e39d92cdb2c096a355ff313dcef737a88ab147c61b4", - strip_prefix = "message_filters-4.3.8", - url = "https://github.com/ros2/message_filters/archive/refs/tags/4.3.8.tar.gz", + sha256 = "6b0eb408d79d1e382131ddff925f479030a37f5d6ce0ded8b0619f215bd60e3b", + strip_prefix = "message_filters-4.11.7", + url = "https://github.com/ros2/message_filters/archive/refs/tags/4.11.7.tar.gz", ) maybe( http_archive, name = "osrf_pycommon", build_file = "@com_github_mvukov_rules_ros2//repositories:osrf_pycommon.BUILD.bazel", - sha256 = "7b66edaaf15ef0733dc928f5e9c90ec739fc7a9c490c611be09f15449ddcf799", - strip_prefix = "osrf_pycommon-2.1.6", - url = "https://github.com/osrf/osrf_pycommon/archive/refs/tags/2.1.6.tar.gz", + sha256 = "441afd5c3476474a1e5760070fec18860992a4659e84a6a4b59e49217d7cc6af", + strip_prefix = "osrf_pycommon-2.1.7", + url = "https://github.com/osrf/osrf_pycommon/archive/refs/tags/2.1.7.tar.gz", ) maybe( http_archive, name = "ros2_pluginlib", build_file = "@com_github_mvukov_rules_ros2//repositories:pluginlib.BUILD.bazel", - sha256 = "195cc27a74faec13c133f510b06f276ce0eb88e225c844ef49bb8f92d68e7ed6", - strip_prefix = "pluginlib-5.1.1", - url = "https://github.com/ros/pluginlib/archive/refs/tags/5.1.1.tar.gz", + sha256 = "330b27568683455654db44493062ec47a1383f191eea080de604b6953b59006c", + strip_prefix = "pluginlib-5.4.2", + url = "https://github.com/ros/pluginlib/archive/refs/tags/5.4.2.tar.gz", ) maybe( http_archive, name = "ros2_rcl", build_file = "@com_github_mvukov_rules_ros2//repositories:rcl.BUILD.bazel", - patches = ["@com_github_mvukov_rules_ros2//repositories/patches:fix-null-allocator-and-racy-condition.-1188.patch"], - sha256 = "27f4db0c3cdd358156d6c35358ed8a531aa18b073c064a445d5ab4e20896a4b5", - strip_prefix = "rcl-5.3.10", - url = "https://github.com/ros2/rcl/archive/refs/tags/5.3.10.tar.gz", + sha256 = "07ad74d7b3e55c65beac9cc4b5cd4521fc713bec28cc44f42e2f91ad77f8ffeb", + strip_prefix = "rcl-9.2.7", + url = "https://github.com/ros2/rcl/archive/refs/tags/9.2.7.tar.gz", ) maybe( http_archive, name = "ros2_rcl_interfaces", build_file = "@com_github_mvukov_rules_ros2//repositories:rcl_interfaces.BUILD.bazel", - sha256 = "98eaeb02b1daf0ecddb012313da8688cae49bb0417ea0220c86b663c0c836ad0", - strip_prefix = "rcl_interfaces-1.2.2", - url = "https://github.com/ros2/rcl_interfaces/archive/refs/tags/1.2.2.tar.gz", + sha256 = "615b846e09bf1dab7f6c162dcbfb72aa19bff922827022afddb9f0ef7b649f7f", + strip_prefix = "rcl_interfaces-2.0.3", + url = "https://github.com/ros2/rcl_interfaces/archive/refs/tags/2.0.3.tar.gz", ) maybe( http_archive, name = "ros2_rcl_logging", build_file = "@com_github_mvukov_rules_ros2//repositories:rcl_logging.BUILD.bazel", - sha256 = "f711a7677cb68c927650e5e9f6bbb5d013dd9ae30736209f9b70f9c6485170f6", - strip_prefix = "rcl_logging-2.3.1", - url = "https://github.com/ros2/rcl_logging/archive/refs/tags/2.3.1.tar.gz", + sha256 = "1b4d245d859c5c38032c1659adb48037fb911dcb833199a81bbc5336633a59b3", + strip_prefix = "rcl_logging-3.1.1", + url = "https://github.com/ros2/rcl_logging/archive/refs/tags/3.1.1.tar.gz", ) maybe( @@ -174,75 +173,73 @@ def ros2_repositories_impl(): build_file = "@com_github_mvukov_rules_ros2//repositories:rclcpp.BUILD.bazel", patch_cmds = ["patch"], patch_args = ["-p1"], - patches = ["@com_github_mvukov_rules_ros2//repositories/patches:rclcpp_do-not-allocate-in-signal-handler.patch", "@com_github_mvukov_rules_ros2//repositories/patches:rclcpp_fix-maybe-uninitialized-warning.patch", "@com_github_mvukov_rules_ros2//repositories/patches:rclcpp_ts_libs_ownership.patch"], - sha256 = "2aefa6e046fd4141242701825e4a282c1337cb6b688781ba0acb2b6e3a5c43be", - strip_prefix = "rclcpp-16.0.14", - url = "https://github.com/ros2/rclcpp/archive/refs/tags/16.0.14.tar.gz", + patches = ["@com_github_mvukov_rules_ros2//repositories/patches:rclcpp_do-not-allocate-in-signal-handler.patch"], + sha256 = "17c6f49a507886af53fc2185b1de6b9c54013b113e3675042760e442b9c3d5ea", + strip_prefix = "rclcpp-28.1.11", + url = "https://github.com/ros2/rclcpp/archive/refs/tags/28.1.11.tar.gz", ) maybe( http_archive, name = "ros2_rclpy", build_file = "@com_github_mvukov_rules_ros2//repositories:rclpy.BUILD.bazel", - sha256 = "430edcbd652e0ea12ca176381cef0616ad42cc858fe2dc40a65582d7162404fa", - strip_prefix = "rclpy-3.3.17", - url = "https://github.com/ros2/rclpy/archive/refs/tags/3.3.17.tar.gz", + sha256 = "29f2196258544a2b9a904ab9632dd2fba05d41e110897d29ee9cb1fdfbc5aa37", + strip_prefix = "rclpy-7.1.5", + url = "https://github.com/ros2/rclpy/archive/refs/tags/7.1.5.tar.gz", ) maybe( http_archive, name = "ros2_rcpputils", build_file = "@com_github_mvukov_rules_ros2//repositories:rcpputils.BUILD.bazel", - sha256 = "0b83d21defc25708dcf374402cb1a1dcbbcac7ec300b1a1651953f8b72875797", - strip_prefix = "rcpputils-2.4.5", - url = "https://github.com/ros2/rcpputils/archive/refs/tags/2.4.5.tar.gz", + sha256 = "c902d899378a1da632b07303d9dbdd1d34da484cc958077ab9f0de49f6bbe2a1", + strip_prefix = "rcpputils-2.11.2", + url = "https://github.com/ros2/rcpputils/archive/refs/tags/2.11.2.tar.gz", ) maybe( http_archive, name = "ros2_rcutils", build_file = "@com_github_mvukov_rules_ros2//repositories:rcutils.BUILD.bazel", - patches = ["@com_github_mvukov_rules_ros2//repositories/patches:rcutils_fix-setting-allocator-to-null.-478.patch"], - sha256 = "b64c3077162bc845a7c410180bc6c78e63e3a7562285b74c0982eee101ea0f28", - strip_prefix = "rcutils-5.1.6", - url = "https://github.com/ros2/rcutils/archive/refs/tags/5.1.6.tar.gz", + sha256 = "9dbb2ce13bedba50505540319dbfb9542148c12c550d3c03bec73109d7cd6754", + strip_prefix = "rcutils-6.7.3", + url = "https://github.com/ros2/rcutils/archive/refs/tags/6.7.3.tar.gz", ) maybe( http_archive, name = "ros2_resource_retriever", build_file = "@com_github_mvukov_rules_ros2//repositories:resource_retriever.BUILD.bazel", - sha256 = "8aaf27957daa4871b9914cefd7cfec543570dd0bcd6a5ca099d28d62fdd63dbf", - strip_prefix = "resource_retriever-3.1.3", - url = "https://github.com/ros/resource_retriever/archive/refs/tags/3.1.3.tar.gz", + sha256 = "cc1d10e74f7d00f56e350426340b53e6df5dab1795d2f3b79fb431d4678ef213", + strip_prefix = "resource_retriever-3.4.4", + url = "https://github.com/ros/resource_retriever/archive/refs/tags/3.4.4.tar.gz", ) maybe( http_archive, name = "ros2_rmw", build_file = "@com_github_mvukov_rules_ros2//repositories:rmw.BUILD.bazel", - patches = ["@com_github_mvukov_rules_ros2//repositories/patches:rmw_initialize-the-null-strucutre-with-static-value.-378.patch"], - sha256 = "fc5eb606c44773a585f6332b33b8fe56c103821cd91e3b95c31a7ab57d38fa0e", - strip_prefix = "rmw-6.1.2", - url = "https://github.com/ros2/rmw/archive/refs/tags/6.1.2.tar.gz", + sha256 = "46f4ca1cf6a50ade9cfbb303f7c3e6417222575dcf350edb1a6d441b18826106", + strip_prefix = "rmw-7.3.2", + url = "https://github.com/ros2/rmw/archive/refs/tags/7.3.2.tar.gz", ) maybe( http_archive, name = "ros2_rmw_cyclonedds", build_file = "@com_github_mvukov_rules_ros2//repositories:rmw_cyclonedds.BUILD.bazel", - sha256 = "58ef4fe3fd18eb723906df77eb10df1e69222b451e479c6ec85426ba48e16a8a", - strip_prefix = "rmw_cyclonedds-1.3.4", - url = "https://github.com/ros2/rmw_cyclonedds/archive/refs/tags/1.3.4.tar.gz", + sha256 = "5b2035e371c59f1301f6e1241bad06fd6776d971f0b79f28beed2eeb68dfa10f", + strip_prefix = "rmw_cyclonedds-2.2.3", + url = "https://github.com/ros2/rmw_cyclonedds/archive/refs/tags/2.2.3.tar.gz", ) maybe( http_archive, name = "ros2_rmw_dds_common", build_file = "@com_github_mvukov_rules_ros2//repositories:rmw_dds_common.BUILD.bazel", - sha256 = "85dd9f586d53b658e5389a388fe3d99a884ba06f567a59f9908ecb96e29132ef", - strip_prefix = "rmw_dds_common-1.6.0", - url = "https://github.com/ros2/rmw_dds_common/archive/refs/tags/1.6.0.tar.gz", + sha256 = "e28253ea93755d9875593e65a65b1ed8ad8532a25e09727487ebc0b5310b5910", + strip_prefix = "rmw_dds_common-3.1.0", + url = "https://github.com/ros2/rmw_dds_common/archive/refs/tags/3.1.0.tar.gz", ) maybe( @@ -251,37 +248,36 @@ def ros2_repositories_impl(): build_file = "@com_github_mvukov_rules_ros2//repositories:rmw_implementation.BUILD.bazel", patch_args = ["-p1"], patches = ["@com_github_mvukov_rules_ros2//repositories/patches:rmw_implementation_library_path.patch"], - sha256 = "e657069c7776ffb68876b3ded99eda84a46970743d235a13d4ad5e7db7c72883", - strip_prefix = "rmw_implementation-2.8.5", - url = "https://github.com/ros2/rmw_implementation/archive/refs/tags/2.8.5.tar.gz", + sha256 = "75a9b0ed5f4f1d95bb95f9c5ef6651ff5138bba262fad7c78e19429c64bf20d3", + strip_prefix = "rmw_implementation-2.15.6", + url = "https://github.com/ros2/rmw_implementation/archive/refs/tags/2.15.6.tar.gz", ) maybe( http_archive, name = "ros2_robot_state_publisher", build_file = "@com_github_mvukov_rules_ros2//repositories:robot_state_publisher.BUILD.bazel", - sha256 = "74235a379ae3bcaf6a6236ddd36feccea6463749057b09f3409bcbced0c047f9", - strip_prefix = "robot_state_publisher-3.0.3", - url = "https://github.com/ros/robot_state_publisher/archive/refs/tags/3.0.3.tar.gz", + sha256 = "650687e3511d4b65ceef6ac1c93a61ae60b84a3c4eb14846478587d65f50da7a", + strip_prefix = "robot_state_publisher-3.3.3", + url = "https://github.com/ros/robot_state_publisher/archive/refs/tags/3.3.3.tar.gz", ) maybe( http_archive, name = "ros2_tracing", build_file = "@com_github_mvukov_rules_ros2//repositories:ros2_tracing.BUILD.bazel", - sha256 = "261672e689e583c90b35d97ccea90ffec649ac55a0f045da46cbc3f69b657c5a", - strip_prefix = "ros2_tracing-4.1.1", - url = "https://github.com/ros2/ros2_tracing/archive/refs/tags/4.1.1.tar.gz", + sha256 = "91474a3efa55a04b2d23b10afa04fa018e1fb8022f3bed77c0bf13563427b79b", + strip_prefix = "ros2_tracing-8.2.4", + url = "https://github.com/ros2/ros2_tracing/archive/refs/tags/8.2.4.tar.gz", ) maybe( http_archive, name = "ros2cli", build_file = "@com_github_mvukov_rules_ros2//repositories:ros2cli.BUILD.bazel", - patches = ["@com_github_mvukov_rules_ros2//repositories/patches:ros2cli_replace-netifaces.patch"], - sha256 = "38cc769841b1fb1fa02eb184751805d166818215ff26136db4b81ed093deedee", - strip_prefix = "ros2cli-0.18.13", - url = "https://github.com/ros2/ros2cli/archive/refs/tags/0.18.13.tar.gz", + sha256 = "a5bf2edc495eb7d91a5ab48c2a917d1efb46e97dcbdff5e241434cf68d5519a7", + strip_prefix = "ros2cli-0.32.5", + url = "https://github.com/ros2/ros2cli/archive/refs/tags/0.32.5.tar.gz", ) maybe( @@ -289,10 +285,10 @@ def ros2_repositories_impl(): name = "ros2_rosbag2", build_file = "@com_github_mvukov_rules_ros2//repositories:rosbag2.BUILD.bazel", patch_args = ["-p1"], - patches = ["@com_github_mvukov_rules_ros2//repositories/patches:rosbag2_relax_plugin_errors.patch"], - sha256 = "577abd17d9b8c3763cd7592d77fc685e9e300497c8c8ce9f66a8b9c5fa169a5e", - strip_prefix = "rosbag2-0.15.15", - url = "https://github.com/ros2/rosbag2/archive/refs/tags/0.15.15.tar.gz", + patches = ["@com_github_mvukov_rules_ros2//repositories/patches:rosbag2_relax_plugin_errors.patch", "@com_github_mvukov_rules_ros2//repositories/patches:rosbag2_load_plugin_cli_extensions.patch"], + sha256 = "a1d59918e741b1f97a7c82d7943ea5b757a7b839bde200fe9bc1f0a5130fea4d", + strip_prefix = "rosbag2-0.26.9", + url = "https://github.com/ros2/rosbag2/archive/refs/tags/0.26.9.tar.gz", ) maybe( @@ -300,10 +296,19 @@ def ros2_repositories_impl(): name = "ros2_rosidl", build_file = "@com_github_mvukov_rules_ros2//repositories:rosidl.BUILD.bazel", patch_args = ["-p1"], - patches = ["@com_github_mvukov_rules_ros2//repositories/patches:rosidl_rm_unnecessary_asserts.patch"], - sha256 = "f60e047bba100845adc710a43645b30c2a2d0713987fe345781bbe4e34e4a3d6", - strip_prefix = "rosidl-3.1.7", - url = "https://github.com/ros2/rosidl/archive/refs/tags/3.1.7.tar.gz", + patches = ["@com_github_mvukov_rules_ros2//repositories/patches:rosidl_rm_unnecessary_asserts.patch", "@com_github_mvukov_rules_ros2//repositories/patches:rosidl_fix_rosidl_typesupport_introspection_generator.patch"], + sha256 = "834390cf1fea54f158c45b83cd5e2cc442e0c7c275fda172c01d57f67ce8fcbf", + strip_prefix = "rosidl-4.6.6", + url = "https://github.com/ros2/rosidl/archive/refs/tags/4.6.6.tar.gz", + ) + + maybe( + http_archive, + name = "ros2_rosidl_dynamic_typesupport", + build_file = "@com_github_mvukov_rules_ros2//repositories:rosidl_dynamic_typesupport.BUILD.bazel", + sha256 = "3a7076212e7450411dd728300efe09ef10c1c0714b1e98b805da2142f98e0f6f", + strip_prefix = "rosidl_dynamic_typesupport-0.1.2", + url = "https://github.com/ros2/rosidl_dynamic_typesupport/archive/refs/tags/0.1.2.tar.gz", ) maybe( @@ -312,18 +317,18 @@ def ros2_repositories_impl(): build_file = "@com_github_mvukov_rules_ros2//repositories:rosidl_python.BUILD.bazel", patch_args = ["-p1"], patches = ["@com_github_mvukov_rules_ros2//repositories/patches:rosidl_python_fix_imports.patch"], - sha256 = "01fa9b90b21c093f8affb9ac38f4b82736cdfaba4e8f913024d200ee54d1cd92", - strip_prefix = "rosidl_python-0.14.5", - url = "https://github.com/ros2/rosidl_python/archive/refs/tags/0.14.5.tar.gz", + sha256 = "4b31bfc74364acc86d14c40204875704f415da409b3a72ef5eca451d2b3bca85", + strip_prefix = "rosidl_python-0.22.1", + url = "https://github.com/ros2/rosidl_python/archive/refs/tags/0.22.1.tar.gz", ) maybe( http_archive, name = "ros2_rosidl_runtime_py", build_file = "@com_github_mvukov_rules_ros2//repositories:rosidl_runtime_py.BUILD.bazel", - sha256 = "4006ed60e2544eb390a6231c3e7a676d1605601260417b4b207ef94424a38b26", - strip_prefix = "rosidl_runtime_py-0.9.3", - url = "https://github.com/ros2/rosidl_runtime_py/archive/refs/tags/0.9.3.tar.gz", + sha256 = "d1b5504348faa455e5df33ea256d888524dede01ea17b04268d1ea589bd168d2", + strip_prefix = "rosidl_runtime_py-0.13.1", + url = "https://github.com/ros2/rosidl_runtime_py/archive/refs/tags/0.13.1.tar.gz", ) maybe( @@ -332,43 +337,43 @@ def ros2_repositories_impl(): build_file = "@com_github_mvukov_rules_ros2//repositories:rosidl_typesupport.BUILD.bazel", patch_args = ["-p1"], patches = ["@com_github_mvukov_rules_ros2//repositories/patches:rosidl_typesupport_generate_true_c_code.patch"], - sha256 = "b330a869ce00eeb5345488fcd4c894464d5a5e3de601c553a9aaad78d2f5b34c", - strip_prefix = "rosidl_typesupport-2.0.2", - url = "https://github.com/ros2/rosidl_typesupport/archive/refs/tags/2.0.2.tar.gz", + sha256 = "f3a16b95e6f92bf2ce55a5b1afd70d7d2a1afe20684451bb17703d808482dd32", + strip_prefix = "rosidl_typesupport-3.2.2", + url = "https://github.com/ros2/rosidl_typesupport/archive/refs/tags/3.2.2.tar.gz", ) maybe( http_archive, name = "ros2_rpyutils", build_file = "@com_github_mvukov_rules_ros2//repositories:rpyutils.BUILD.bazel", - sha256 = "f87d8c0a2b1a5c28b722f168d7170076e6d82e68c5cb31cff74f15a9fa251fb9", - strip_prefix = "rpyutils-0.2.1", - url = "https://github.com/ros2/rpyutils/archive/refs/tags/0.2.1.tar.gz", + sha256 = "7846fd4aa0a3bb4d2a21359cb7a84931ef54cabd6ca5fd4a10bc1ee9452cf32b", + strip_prefix = "rpyutils-0.4.1", + url = "https://github.com/ros2/rpyutils/archive/refs/tags/0.4.1.tar.gz", ) maybe( http_archive, name = "ros2_unique_identifier_msgs", build_file = "@com_github_mvukov_rules_ros2//repositories:unique_identifier_msgs.BUILD.bazel", - sha256 = "ccedcb7c2b6d927fc4f654cceab299a8cb55082953867754795c6ea2ccdd68a9", - strip_prefix = "unique_identifier_msgs-2.2.1", - url = "https://github.com/ros2/unique_identifier_msgs/archive/refs/tags/2.2.1.tar.gz", + sha256 = "848e99fb813809a0ff41c4df0f75be42abf13fab40fcc8df9de8db6a009c3931", + strip_prefix = "unique_identifier_msgs-2.5.0", + url = "https://github.com/ros2/unique_identifier_msgs/archive/refs/tags/2.5.0.tar.gz", ) maybe( http_archive, name = "ros2_urdfdom", build_file = "@com_github_mvukov_rules_ros2//repositories:urdfdom.BUILD.bazel", - sha256 = "1072b2a304295eb299ed70d99914eb2fbf8843c3257e5e51defc5dd457ee6211", - strip_prefix = "urdfdom-3.0.2", - url = "https://github.com/ros/urdfdom/archive/refs/tags/3.0.2.tar.gz", + sha256 = "9978dc742b18332ef952c06acb6bac7e8f58ed0592e9eb81779880c930ba0a69", + strip_prefix = "urdfdom-4.0.2", + url = "https://github.com/ros/urdfdom/archive/refs/tags/4.0.2.tar.gz", ) maybe( http_archive, name = "ros2_urdfdom_headers", build_file = "@com_github_mvukov_rules_ros2//repositories:urdfdom_headers.BUILD.bazel", - sha256 = "1acd50b976f642de9dc0fde532eb8d77ea09f4de12ebfbd9d88b0cd2891278fd", - strip_prefix = "urdfdom_headers-1.0.6", - url = "https://github.com/ros/urdfdom_headers/archive/refs/tags/1.0.6.tar.gz", + sha256 = "7602e37c6715fbf4cec3f0ded1e860157796423dc79da062a0e5ccb1226dc8e6", + strip_prefix = "urdfdom_headers-1.1.2", + url = "https://github.com/ros/urdfdom_headers/archive/refs/tags/1.1.2.tar.gz", ) diff --git a/repositories/ros2_rust.BUILD.bazel b/repositories/ros2_rust.BUILD.bazel index 78a9f419..b902f796 100644 --- a/repositories/ros2_rust.BUILD.bazel +++ b/repositories/ros2_rust.BUILD.bazel @@ -65,7 +65,7 @@ rust_library( "rclrs/src/rcl_bindings_generated.rs", ], edition = "2021", - rustc_flags = ["--cfg=ros_distro=\"humble\""], + rustc_flags = ["--cfg=ros_distro=\"jazzy\""], visibility = ["//visibility:public"], deps = [ ":rcl_wrapper", diff --git a/repositories/ros2_tracing.BUILD.bazel b/repositories/ros2_tracing.BUILD.bazel index ce4a8ea5..84345be8 100644 --- a/repositories/ros2_tracing.BUILD.bazel +++ b/repositories/ros2_tracing.BUILD.bazel @@ -16,7 +16,7 @@ expand_template( out = "tracetools/include/tracetools/config.h", substitutions = { "#cmakedefine TRACETOOLS_DISABLED": "/* #cmakedefine TRACETOOLS_DISABLED */", - "#cmakedefine TRACETOOLS_LTTNG_ENABLED": "/* #cmakedefine TRACETOOLS_LTTNG_ENABLED */", + "#cmakedefine TRACETOOLS_TRACEPOINTS_EXCLUDED": "#define TRACETOOLS_TRACEPOINTS_EXCLUDED", }, template = "tracetools/include/tracetools/config.h.in", ) diff --git a/repositories/ros2cli.BUILD.bazel b/repositories/ros2cli.BUILD.bazel index e3be90db..2a1fc35c 100644 --- a/repositories/ros2cli.BUILD.bazel +++ b/repositories/ros2cli.BUILD.bazel @@ -40,6 +40,7 @@ py_library( "@ros2_rosidl_runtime_py//:rosidl_runtime_py", requirement("numpy"), requirement("pyyaml"), + requirement("argcomplete"), ], ) diff --git a/repositories/rosbag2.BUILD.bazel b/repositories/rosbag2.BUILD.bazel index 7fc2d4d9..b4fa6255 100644 --- a/repositories/rosbag2.BUILD.bazel +++ b/repositories/rosbag2.BUILD.bazel @@ -27,6 +27,7 @@ ros2_cpp_library( visibility = ["//visibility:public"], deps = [ "@ros2_pluginlib//:pluginlib", + "@ros2_rclcpp//:rclcpp", "@ros2_rcpputils//:rcpputils", "@ros2_rcutils//:rcutils", "@yaml-cpp", @@ -34,13 +35,13 @@ ros2_cpp_library( ) ros2_plugin( - name = "rosbag2_storage_default_plugins", + name = "rosbag2_storage_sqlite3_plugin", srcs = glob([ - "rosbag2_storage_default_plugins/src/**/*.cpp", - "rosbag2_storage_default_plugins/src/**/*.hpp", + "rosbag2_storage_sqlite3/src/**/*.cpp", + "rosbag2_storage_sqlite3/src/**/*.hpp", ]), - hdrs = glob(["rosbag2_storage_default_plugins/include/**/*.hpp"]), - includes = ["rosbag2_storage_default_plugins/include"], + hdrs = glob(["rosbag2_storage_sqlite3/include/**/*.hpp"]), + includes = ["rosbag2_storage_sqlite3/include"], plugin_specs = [ { "class_name": "sqlite3", @@ -58,6 +59,12 @@ ros2_plugin( ], ) +py_library( + name = "ros2bag_sqlite3_cli", + srcs = ["rosbag2_storage_sqlite3/ros2bag_sqlite3_cli/__init__.py"], + imports = ["rosbag2_storage_sqlite3"], +) + ros2_cpp_library( name = "mcap_vendor", srcs = ["mcap_vendor/src/main.cpp"], @@ -71,10 +78,8 @@ ros2_plugin( name = "rosbag2_storage_mcap_plugin", srcs = [ "rosbag2_storage_mcap/src/mcap_storage.cpp", - "rosbag2_storage_mcap/src/message_definition_cache.cpp", ], hdrs = [ - "rosbag2_storage_mcap/include/rosbag2_storage_mcap/message_definition_cache.hpp", "rosbag2_storage_mcap/include/rosbag2_storage_mcap/visibility_control.hpp", ], defines = [ @@ -82,6 +87,8 @@ ros2_plugin( "ROSBAG2_STORAGE_MCAP_HAS_STORAGE_OPTIONS", "ROSBAG2_STORAGE_MCAP_WRITER_CREATES_DIRECTORY", "ROSBAG2_STORAGE_MCAP_OVERRIDE_SEEK_METHOD", + "ROSBAG2_STORAGE_MCAP_HAS_SET_READ_ORDER", + "ROSBAG2_STORAGE_MCAP_HAS_UPDATE_METADATA", ], includes = ["rosbag2_storage_mcap/include"], plugin_specs = [ @@ -100,6 +107,12 @@ ros2_plugin( ], ) +py_library( + name = "ros2bag_mcap_cli", + srcs = ["rosbag2_storage_mcap/ros2bag_mcap_cli/__init__.py"], + imports = ["rosbag2_storage_mcap"], +) + ros2_cpp_library( name = "rosbag2_cpp", srcs = glob([ @@ -113,11 +126,13 @@ ros2_cpp_library( "rosbag2_cpp/src/rosbag2_cpp/clocks/time_controller_clock.cpp", "rosbag2_cpp/src/rosbag2_cpp/converter.cpp", "rosbag2_cpp/src/rosbag2_cpp/info.cpp", + "rosbag2_cpp/src/rosbag2_cpp/message_definitions/local_message_definition_source.cpp", "rosbag2_cpp/src/rosbag2_cpp/reader.cpp", "rosbag2_cpp/src/rosbag2_cpp/readers/sequential_reader.cpp", "rosbag2_cpp/src/rosbag2_cpp/reindexer.cpp", "rosbag2_cpp/src/rosbag2_cpp/rmw_implemented_serialization_format_converter.cpp", "rosbag2_cpp/src/rosbag2_cpp/serialization_format_converter_factory.cpp", + "rosbag2_cpp/src/rosbag2_cpp/service_utils.cpp", "rosbag2_cpp/src/rosbag2_cpp/types/introspection_message.cpp", "rosbag2_cpp/src/rosbag2_cpp/typesupport_helpers.cpp", "rosbag2_cpp/src/rosbag2_cpp/writer.cpp", @@ -125,8 +140,8 @@ ros2_cpp_library( ], hdrs = glob(["rosbag2_cpp/include/**/*.hpp"]), data = [ - ":rosbag2_storage_default_plugins", ":rosbag2_storage_mcap_plugin", + ":rosbag2_storage_sqlite3_plugin", ], includes = ["rosbag2_cpp/include"], visibility = ["//visibility:public"], @@ -199,7 +214,10 @@ ros2_interface_library( "rosbag2_interfaces/srv/*.srv", ]), visibility = ["//visibility:public"], - deps = ["@ros2_rcl_interfaces//:builtin_interfaces"], + deps = [ + "@ros2_rcl_interfaces//:builtin_interfaces", + "@ros2_rcl_interfaces//:service_msgs", + ], ) cpp_ros2_interface_library( @@ -222,6 +240,9 @@ ros2_cpp_library( ]), hdrs = glob(["rosbag2_transport/include/**/*.hpp"]), data = [":rosbag2_compression_zstd"], + implementation_deps = [ + "@ros2_rclcpp//:rclcpp_components", + ], includes = ["rosbag2_transport/include"], visibility = ["//visibility:public"], deps = [ @@ -269,6 +290,7 @@ ros2_cpp_binary( deps = [ ":pybind11", ":rosbag2_cpp", + ":rosbag2_py_info", ":rosbag2_storage", ], ) @@ -287,6 +309,28 @@ ros2_cpp_binary( ], ) +ros2_cpp_library( + name = "rosbag2_py_info", + srcs = [ + "rosbag2_py/src/rosbag2_py/format_bag_metadata.cpp", + "rosbag2_py/src/rosbag2_py/format_service_info.cpp", + "rosbag2_py/src/rosbag2_py/info_sorting_method.cpp", + ], + hdrs = [ + "rosbag2_py/src/rosbag2_py/format_bag_metadata.hpp", + "rosbag2_py/src/rosbag2_py/format_service_info.hpp", + "rosbag2_py/src/rosbag2_py/info_sorting_method.hpp", + "rosbag2_py/src/rosbag2_py/service_event_info.hpp", + ], + implementation_deps = [ + ":rosbag2_storage", + ], + includes = ["rosbag2_py/src/rosbag2_py"], + deps = [ + ":rosbag2_cpp", + ], +) + ros2_cpp_binary( name = "rosbag2_py/rosbag2_py/_info.so", srcs = ["rosbag2_py/src/rosbag2_py/_info.cpp"], @@ -296,6 +340,7 @@ ros2_cpp_binary( deps = [ ":pybind11", ":rosbag2_cpp", + ":rosbag2_py_info", ":rosbag2_storage", ], ) @@ -328,11 +373,37 @@ ros2_cpp_binary( ], ) +ros2_cpp_binary( + name = "rosbag2_py/rosbag2_py/_compression_options.so", + srcs = ["rosbag2_py/src/rosbag2_py/_compression_options.cpp"], + copts = ["-fvisibility=hidden"], + linkopts = ["-fvisibility=hidden"], + linkshared = True, + deps = [ + ":pybind11", + ":rosbag2_compression", + ], +) + +ros2_cpp_binary( + name = "rosbag2_py/rosbag2_py/_message_definitions.so", + srcs = ["rosbag2_py/src/rosbag2_py/_message_definitions.cpp"], + copts = ["-fvisibility=hidden"], + linkopts = ["-fvisibility=hidden"], + linkshared = True, + deps = [ + ":pybind11", + ":rosbag2_cpp", + ], +) + py_library( name = "rosbag2_py", srcs = ["rosbag2_py/rosbag2_py/__init__.py"], data = [ + ":rosbag2_py/rosbag2_py/_compression_options.so", ":rosbag2_py/rosbag2_py/_info.so", + ":rosbag2_py/rosbag2_py/_message_definitions.so", ":rosbag2_py/rosbag2_py/_reader.so", ":rosbag2_py/rosbag2_py/_reindexer.so", ":rosbag2_py/rosbag2_py/_storage.so", @@ -353,6 +424,8 @@ py_library( imports = ["ros2bag"], visibility = ["//visibility:public"], deps = [ + ":ros2bag_mcap_cli", + ":ros2bag_sqlite3_cli", ":rosbag2_py", "@ros2cli", requirement("pyyaml"), diff --git a/repositories/rosidl.BUILD.bazel b/repositories/rosidl.BUILD.bazel index 2b34c772..b25fa148 100644 --- a/repositories/rosidl.BUILD.bazel +++ b/repositories/rosidl.BUILD.bazel @@ -21,7 +21,7 @@ ros2_c_library( ros2_c_library( name = "rosidl_runtime_c", - srcs = glob(["rosidl_runtime_c/src/*.c"]), + srcs = glob(["rosidl_runtime_c/src/**/*.c"]), hdrs = glob(["rosidl_runtime_c/include/**/*.h"]), includes = ["rosidl_runtime_c/include"], visibility = ["//visibility:public"], @@ -92,7 +92,9 @@ py_library( visibility = ["//visibility:public"], deps = [ ":rosidl_cmake", + ":rosidl_generator_type_description_lib", ":rosidl_parser", + ":rosidl_pycommon", ], ) @@ -138,7 +140,9 @@ py_library( visibility = ["//visibility:public"], deps = [ ":rosidl_cmake", + ":rosidl_generator_c_lib", ":rosidl_parser", + ":rosidl_pycommon", ], ) @@ -227,6 +231,7 @@ py_library( ":rosidl_cmake", ":rosidl_generator_c_lib", ":rosidl_parser", + ":rosidl_pycommon", ], ) @@ -263,8 +268,10 @@ py_library( visibility = ["//visibility:public"], deps = [ ":rosidl_cmake", + ":rosidl_generator_c_lib", ":rosidl_generator_cpp_lib", ":rosidl_parser", + ":rosidl_pycommon", ], ) @@ -289,3 +296,40 @@ filegroup( srcs = glob(["rosidl_typesupport_introspection_cpp/resource/*.em"]), visibility = ["//visibility:public"], ) + +py_library( + name = "rosidl_pycommon", + srcs = ["rosidl_pycommon/rosidl_pycommon/__init__.py"], + imports = ["rosidl_pycommon"], + visibility = ["//visibility:public"], + deps = [ + ":rosidl_parser", + requirement("empy"), + ], +) + +py_library( + name = "rosidl_generator_type_description_lib", + srcs = glob(["rosidl_generator_type_description/rosidl_generator_type_description/*.py"]), + imports = ["rosidl_generator_type_description"], + visibility = ["//visibility:public"], + deps = [ + ":rosidl_parser", + ], +) + +_ROSIDL_GENERATOR_TYPE_DESCRIPTION_PY = "rosidl_generator_type_description_app.py" + +copy_file( + name = "rosidl_generator_type_description_copy", + src = "rosidl_generator_type_description/bin/rosidl_generator_type_description", + out = _ROSIDL_GENERATOR_TYPE_DESCRIPTION_PY, +) + +py_binary( + name = "rosidl_generator_type_description_app", + srcs = [_ROSIDL_GENERATOR_TYPE_DESCRIPTION_PY], + legacy_create_init = False, + visibility = ["//visibility:public"], + deps = [":rosidl_generator_type_description_lib"], +) diff --git a/repositories/rosidl_dynamic_typesupport.BUILD.bazel b/repositories/rosidl_dynamic_typesupport.BUILD.bazel new file mode 100644 index 00000000..02b0c654 --- /dev/null +++ b/repositories/rosidl_dynamic_typesupport.BUILD.bazel @@ -0,0 +1,16 @@ +""" Builds rosidl_dynamic_typesupport. +""" + +load("@com_github_mvukov_rules_ros2//ros2:cc_defs.bzl", "ros2_c_library") + +ros2_c_library( + name = "rosidl_dynamic_typesupport", + srcs = glob(["src/**/*.c"]), + hdrs = glob(["include/rosidl_dynamic_typesupport/**/*.h"]), + includes = ["include"], + visibility = ["//visibility:public"], + deps = [ + "@ros2_rcutils//:rcutils", + "@ros2_rosidl//:rosidl_runtime_c", + ], +) diff --git a/repositories/rosidl_rust.BUILD.bazel b/repositories/rosidl_rust.BUILD.bazel index 77b04e52..ffa0cfb8 100644 --- a/repositories/rosidl_rust.BUILD.bazel +++ b/repositories/rosidl_rust.BUILD.bazel @@ -26,6 +26,7 @@ py_binary( requirement("empy"), "@ros2_rosidl//:rosidl_cmake", "@ros2_rosidl//:rosidl_parser", + "@ros2_rosidl//:rosidl_pycommon", ], ) diff --git a/repositories/rosidl_typesupport.BUILD.bazel b/repositories/rosidl_typesupport.BUILD.bazel index c06b233c..3f2420c7 100644 --- a/repositories/rosidl_typesupport.BUILD.bazel +++ b/repositories/rosidl_typesupport.BUILD.bazel @@ -60,7 +60,9 @@ py_library( visibility = ["//visibility:public"], deps = [ "@ros2_rosidl//:rosidl_cmake", + "@ros2_rosidl//:rosidl_generator_c_lib", "@ros2_rosidl//:rosidl_parser", + "@ros2_rosidl//:rosidl_pycommon", ], ) @@ -94,7 +96,9 @@ py_library( visibility = ["//visibility:public"], deps = [ "@ros2_rosidl//:rosidl_cmake", + "@ros2_rosidl//:rosidl_generator_c_lib", "@ros2_rosidl//:rosidl_parser", + "@ros2_rosidl//:rosidl_pycommon", ], ) diff --git a/repositories/urdfdom.BUILD.bazel b/repositories/urdfdom.BUILD.bazel index ff05388f..4c522645 100644 --- a/repositories/urdfdom.BUILD.bazel +++ b/repositories/urdfdom.BUILD.bazel @@ -10,6 +10,7 @@ cc_library( "urdf_parser/src/link.cpp", "urdf_parser/src/model.cpp", "urdf_parser/src/pose.cpp", + "urdf_parser/src/pose.hpp", "urdf_parser/src/twist.cpp", "urdf_parser/src/urdf_model_state.cpp", "urdf_parser/src/world.cpp", @@ -20,7 +21,7 @@ cc_library( deps = [ "@console_bridge", "@ros2_urdfdom_headers//:urdfdom_headers", - "@tinyxml", + "@tinyxml2", ], ) diff --git a/requirements.txt b/requirements.txt index fad99e39..abde3731 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,11 +1,12 @@ +argcomplete # Only used by ros2topic. catkin_pkg coverage empy==3.3.* lark-parser -numpy~=1.23 +numpy~=1.26 packaging psutil -pytest +pytest~=7.4 pytest-cov pyyaml types-pkg-resources==0.1.3 diff --git a/requirements_lock.txt b/requirements_lock.txt index 84095de9..6fb38a59 100644 --- a/requirements_lock.txt +++ b/requirements_lock.txt @@ -1,86 +1,123 @@ # -# This file is autogenerated by pip-compile with Python 3.10 +# This file is autogenerated by pip-compile with Python 3.12 # by the following command: # # bazel run //:python_requirements.update # -attrs==22.1.0 \ - --hash=sha256:29adc2665447e5191d0e7c568fde78b21f9672d344281d0c6e1ab085429b22b6 \ - --hash=sha256:86efa402f67bf2df34f51a335487cf46b1ec130d02b8d39fd248abfd30da551c - # via pytest -catkin-pkg==0.5.2 \ - --hash=sha256:4f77ff462261b8f90e170c979ac8b3199e9566fab90667c1736bd9a0ec8e3459 \ - --hash=sha256:5d643eeafbce4890fcceaf9db197eadf2ca5a187d25593f65b6e5c57935f5da2 +argcomplete==3.6.3 \ + --hash=sha256:62e8ed4fd6a45864acc8235409461b72c9a28ee785a2011cc5eb78318786c89c \ + --hash=sha256:f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce + # via -r requirements.txt +catkin-pkg==1.1.0 \ + --hash=sha256:7f5486b4f5681b5f043316ce10fc638c8d0ba8127146e797c85f4024e4356027 \ + --hash=sha256:df1cb6879a3a772e770a100a6613ce8fc508b4855e5b2790106ddad4a8beb43c # via -r requirements.txt -coverage[toml]==7.0.5 \ - --hash=sha256:051afcbd6d2ac39298d62d340f94dbb6a1f31de06dfaf6fcef7b759dd3860c45 \ - --hash=sha256:0a1890fca2962c4f1ad16551d660b46ea77291fba2cc21c024cd527b9d9c8809 \ - --hash=sha256:0ee30375b409d9a7ea0f30c50645d436b6f5dfee254edffd27e45a980ad2c7f4 \ - --hash=sha256:13250b1f0bd023e0c9f11838bdeb60214dd5b6aaf8e8d2f110c7e232a1bff83b \ - --hash=sha256:17e01dd8666c445025c29684d4aabf5a90dc6ef1ab25328aa52bedaa95b65ad7 \ - --hash=sha256:19245c249aa711d954623d94f23cc94c0fd65865661f20b7781210cb97c471c0 \ - --hash=sha256:1caed2367b32cc80a2b7f58a9f46658218a19c6cfe5bc234021966dc3daa01f0 \ - --hash=sha256:1f66862d3a41674ebd8d1a7b6f5387fe5ce353f8719040a986551a545d7d83ea \ - --hash=sha256:220e3fa77d14c8a507b2d951e463b57a1f7810a6443a26f9b7591ef39047b1b2 \ - --hash=sha256:276f4cd0001cd83b00817c8db76730938b1ee40f4993b6a905f40a7278103b3a \ - --hash=sha256:29de916ba1099ba2aab76aca101580006adfac5646de9b7c010a0f13867cba45 \ - --hash=sha256:2a7f23bbaeb2a87f90f607730b45564076d870f1fb07b9318d0c21f36871932b \ - --hash=sha256:2c407b1950b2d2ffa091f4e225ca19a66a9bd81222f27c56bd12658fc5ca1209 \ - --hash=sha256:30b5fec1d34cc932c1bc04017b538ce16bf84e239378b8f75220478645d11fca \ - --hash=sha256:3c2155943896ac78b9b0fd910fb381186d0c345911f5333ee46ac44c8f0e43ab \ - --hash=sha256:411d4ff9d041be08fdfc02adf62e89c735b9468f6d8f6427f8a14b6bb0a85095 \ - --hash=sha256:436e103950d05b7d7f55e39beeb4d5be298ca3e119e0589c0227e6d0b01ee8c7 \ - --hash=sha256:49640bda9bda35b057b0e65b7c43ba706fa2335c9a9896652aebe0fa399e80e6 \ - --hash=sha256:4a950f83fd3f9bca23b77442f3a2b2ea4ac900944d8af9993743774c4fdc57af \ - --hash=sha256:50a6adc2be8edd7ee67d1abc3cd20678987c7b9d79cd265de55941e3d0d56499 \ - --hash=sha256:52ab14b9e09ce052237dfe12d6892dd39b0401690856bcfe75d5baba4bfe2831 \ - --hash=sha256:54f7e9705e14b2c9f6abdeb127c390f679f6dbe64ba732788d3015f7f76ef637 \ - --hash=sha256:66e50680e888840c0995f2ad766e726ce71ca682e3c5f4eee82272c7671d38a2 \ - --hash=sha256:790e4433962c9f454e213b21b0fd4b42310ade9c077e8edcb5113db0818450cb \ - --hash=sha256:7a38362528a9115a4e276e65eeabf67dcfaf57698e17ae388599568a78dcb029 \ - --hash=sha256:7b05ed4b35bf6ee790832f68932baf1f00caa32283d66cc4d455c9e9d115aafc \ - --hash=sha256:7e109f1c9a3ece676597831874126555997c48f62bddbcace6ed17be3e372de8 \ - --hash=sha256:949844af60ee96a376aac1ded2a27e134b8c8d35cc006a52903fc06c24a3296f \ - --hash=sha256:95304068686545aa368b35dfda1cdfbbdbe2f6fe43de4a2e9baa8ebd71be46e2 \ - --hash=sha256:9e662e6fc4f513b79da5d10a23edd2b87685815b337b1a30cd11307a6679148d \ - --hash=sha256:a9fed35ca8c6e946e877893bbac022e8563b94404a605af1d1e6accc7eb73289 \ - --hash=sha256:b69522b168a6b64edf0c33ba53eac491c0a8f5cc94fa4337f9c6f4c8f2f5296c \ - --hash=sha256:b78729038abea6a5df0d2708dce21e82073463b2d79d10884d7d591e0f385ded \ - --hash=sha256:b8c56bec53d6e3154eaff6ea941226e7bd7cc0d99f9b3756c2520fc7a94e6d96 \ - --hash=sha256:b9727ac4f5cf2cbf87880a63870b5b9730a8ae3a4a360241a0fdaa2f71240ff0 \ - --hash=sha256:ba3027deb7abf02859aca49c865ece538aee56dcb4871b4cced23ba4d5088904 \ - --hash=sha256:be9fcf32c010da0ba40bf4ee01889d6c737658f4ddff160bd7eb9cac8f094b21 \ - --hash=sha256:c18d47f314b950dbf24a41787ced1474e01ca816011925976d90a88b27c22b89 \ - --hash=sha256:c76a3075e96b9c9ff00df8b5f7f560f5634dffd1658bafb79eb2682867e94f78 \ - --hash=sha256:cbfcba14a3225b055a28b3199c3d81cd0ab37d2353ffd7f6fd64844cebab31ad \ - --hash=sha256:d254666d29540a72d17cc0175746cfb03d5123db33e67d1020e42dae611dc196 \ - --hash=sha256:d66187792bfe56f8c18ba986a0e4ae44856b1c645336bd2c776e3386da91e1dd \ - --hash=sha256:d8d04e755934195bdc1db45ba9e040b8d20d046d04d6d77e71b3b34a8cc002d0 \ - --hash=sha256:d8f3e2e0a1d6777e58e834fd5a04657f66affa615dae61dd67c35d1568c38882 \ - --hash=sha256:e057e74e53db78122a3979f908973e171909a58ac20df05c33998d52e6d35757 \ - --hash=sha256:e4ce984133b888cc3a46867c8b4372c7dee9cee300335e2925e197bcd45b9e16 \ - --hash=sha256:ea76dbcad0b7b0deb265d8c36e0801abcddf6cc1395940a24e3595288b405ca0 \ - --hash=sha256:ecb0f73954892f98611e183f50acdc9e21a4653f294dfbe079da73c6378a6f47 \ - --hash=sha256:ef14d75d86f104f03dea66c13188487151760ef25dd6b2dbd541885185f05f40 \ - --hash=sha256:f26648e1b3b03b6022b48a9b910d0ae209e2d51f50441db5dce5b530fad6d9b1 \ - --hash=sha256:f67472c09a0c7486e27f3275f617c964d25e35727af952869dd496b9b5b7f6a3 +coverage[toml]==7.11.0 \ + --hash=sha256:037b2d064c2f8cc8716fe4d39cb705779af3fbf1ba318dc96a1af858888c7bb5 \ + --hash=sha256:05791e528a18f7072bf5998ba772fe29db4da1234c45c2087866b5ba4dea710e \ + --hash=sha256:0d7f0616c557cbc3d1c2090334eddcbb70e1ae3a40b07222d62b3aa47f608fab \ + --hash=sha256:0efa742f431529699712b92ecdf22de8ff198df41e43aeaaadf69973eb93f17a \ + --hash=sha256:10ad04ac3a122048688387828b4537bc9cf60c0bf4869c1e9989c46e45690b82 \ + --hash=sha256:167bd504ac1ca2af7ff3b81d245dfea0292c5032ebef9d66cc08a7d28c1b8050 \ + --hash=sha256:16ce17ceb5d211f320b62df002fa7016b7442ea0fd260c11cec8ce7730954893 \ + --hash=sha256:214b622259dd0cf435f10241f1333d32caa64dbc27f8790ab693428a141723de \ + --hash=sha256:24d6f3128f1b2d20d84b24f4074475457faedc3d4613a7e66b5e769939c7d969 \ + --hash=sha256:258d9967520cca899695d4eb7ea38be03f06951d6ca2f21fb48b1235f791e601 \ + --hash=sha256:269bfe913b7d5be12ab13a95f3a76da23cf147be7fa043933320ba5625f0a8de \ + --hash=sha256:2727d47fce3ee2bac648528e41455d1b0c46395a087a229deac75e9f88ba5a05 \ + --hash=sha256:314c24e700d7027ae3ab0d95fbf8d53544fca1f20345fd30cd219b737c6e58d3 \ + --hash=sha256:3d4ba9a449e9364a936a27322b20d32d8b166553bfe63059bd21527e681e2fad \ + --hash=sha256:3d4ed4de17e692ba6415b0587bc7f12bc80915031fc9db46a23ce70fc88c9841 \ + --hash=sha256:3d58ecaa865c5b9fa56e35efc51d1014d4c0d22838815b9fce57a27dd9576847 \ + --hash=sha256:4036cc9c7983a2b1f2556d574d2eb2154ac6ed55114761685657e38782b23f52 \ + --hash=sha256:424538266794db2861db4922b05d729ade0940ee69dcf0591ce8f69784db0e11 \ + --hash=sha256:4b7589765348d78fb4e5fb6ea35d07564e387da2fc5efff62e0222971f155f68 \ + --hash=sha256:4c1eeb3fb8eb9e0190bebafd0462936f75717687117339f708f395fe455acc73 \ + --hash=sha256:4d3ffa07a08657306cd2215b0da53761c4d73cb54d9143b9303a6481ec0cd415 \ + --hash=sha256:5693e57a065760dcbeb292d60cc4d0231a6d4b6b6f6a3191561e1d5e8820b745 \ + --hash=sha256:587c38849b853b157706407e9ebdca8fd12f45869edb56defbef2daa5fb0812b \ + --hash=sha256:596763d2f9a0ee7eec6e643e29660def2eef297e1de0d334c78c08706f1cb785 \ + --hash=sha256:59a6e5a265f7cfc05f76e3bb53eca2e0dfe90f05e07e849930fecd6abb8f40b4 \ + --hash=sha256:5a03eaf7ec24078ad64a07f02e30060aaf22b91dedf31a6b24d0d98d2bba7f48 \ + --hash=sha256:5ef83b107f50db3f9ae40f69e34b3bd9337456c5a7fe3461c7abf8b75dd666a2 \ + --hash=sha256:630d0bd7a293ad2fc8b4b94e5758c8b2536fdf36c05f1681270203e463cbfa9b \ + --hash=sha256:695340f698a5f56f795b2836abe6fb576e7c53d48cd155ad2f80fd24bc63a040 \ + --hash=sha256:6fbcee1a8f056af07ecd344482f711f563a9eb1c2cad192e87df00338ec3cdb0 \ + --hash=sha256:7161edd3426c8d19bdccde7d49e6f27f748f3c31cc350c5de7c633fea445d866 \ + --hash=sha256:73feb83bb41c32811973b8565f3705caf01d928d972b72042b44e97c71fd70d1 \ + --hash=sha256:765c0bc8fe46f48e341ef737c91c715bd2a53a12792592296a095f0c237e09cf \ + --hash=sha256:7ab934dd13b1c5e94b692b1e01bd87e4488cb746e3a50f798cb9464fd128374b \ + --hash=sha256:7db53b5cdd2917b6eaadd0b1251cf4e7d96f4a8d24e174bdbdf2f65b5ea7994d \ + --hash=sha256:80027673e9d0bd6aef86134b0771845e2da85755cf686e7c7c59566cf5a89115 \ + --hash=sha256:81b335f03ba67309a95210caf3eb43bd6fe75a4e22ba653ef97b4696c56c7ec2 \ + --hash=sha256:865965bf955d92790f1facd64fe7ff73551bd2c1e7e6b26443934e9701ba30b9 \ + --hash=sha256:8badf70446042553a773547a61fecaa734b55dc738cacf20c56ab04b77425e43 \ + --hash=sha256:8c934bd088eed6174210942761e38ee81d28c46de0132ebb1801dbe36a390dcc \ + --hash=sha256:9516add7256b6713ec08359b7b05aeff8850c98d357784c7205b2e60aa2513fa \ + --hash=sha256:9c49e77811cf9d024b95faf86c3f059b11c0c9be0b0d61bc598f453703bd6fd1 \ + --hash=sha256:9cbabd8f4d0d3dc571d77ae5bdbfa6afe5061e679a9d74b6797c48d143307088 \ + --hash=sha256:9ed43fa22c6436f7957df036331f8fe4efa7af132054e1844918866cd228af6c \ + --hash=sha256:a09c1211959903a479e389685b7feb8a17f59ec5a4ef9afde7650bd5eabc2777 \ + --hash=sha256:a1839d08406e4cba2953dcc0ffb312252f14d7c4c96919f70167611f4dee2623 \ + --hash=sha256:a386c1061bf98e7ea4758e4313c0ab5ecf57af341ef0f43a0bf26c2477b5c268 \ + --hash=sha256:a3b6a5f8b2524fd6c1066bc85bfd97e78709bb5e37b5b94911a6506b65f47186 \ + --hash=sha256:a3d0e2087dba64c86a6b254f43e12d264b636a39e88c5cc0a01a7c71bcfdab7e \ + --hash=sha256:a61e37a403a778e2cda2a6a39abcc895f1d984071942a41074b5c7ee31642007 \ + --hash=sha256:aef1747ede4bd8ca9cfc04cc3011516500c6891f1b33a94add3253f6f876b7b7 \ + --hash=sha256:b56efee146c98dbf2cf5cffc61b9829d1e94442df4d7398b26892a53992d3547 \ + --hash=sha256:b5c2705afa83f49bd91962a4094b6b082f94aef7626365ab3f8f4bd159c5acf3 \ + --hash=sha256:b679e171f1c104a5668550ada700e3c4937110dbdd153b7ef9055c4f1a1ee3cc \ + --hash=sha256:b971bdefdd75096163dd4261c74be813c4508477e39ff7b92191dea19f24cd37 \ + --hash=sha256:bab7ec4bb501743edc63609320aaec8cd9188b396354f482f4de4d40a9d10721 \ + --hash=sha256:bc1fbea96343b53f65d5351d8fd3b34fd415a2670d7c300b06d3e14a5af4f552 \ + --hash=sha256:c6f31f281012235ad08f9a560976cc2fc9c95c17604ff3ab20120fe480169bca \ + --hash=sha256:c770885b28fb399aaf2a65bbd1c12bf6f307ffd112d6a76c5231a94276f0c497 \ + --hash=sha256:c79cae102bb3b1801e2ef1511fb50e91ec83a1ce466b2c7c25010d884336de46 \ + --hash=sha256:c9f08ea03114a637dab06cedb2e914da9dc67fa52c6015c018ff43fdde25b9c2 \ + --hash=sha256:ca61691ba8c5b6797deb221a0d09d7470364733ea9c69425a640f1f01b7c5bf0 \ + --hash=sha256:cacb29f420cfeb9283b803263c3b9a068924474ff19ca126ba9103e1278dfa44 \ + --hash=sha256:cc3f49e65ea6e0d5d9bd60368684fe52a704d46f9e7fc413918f18d046ec40e1 \ + --hash=sha256:cdbcd376716d6b7fbfeedd687a6c4be019c5a5671b35f804ba76a4c0a778cba4 \ + --hash=sha256:ce37f215223af94ef0f75ac68ea096f9f8e8c8ec7d6e8c346ee45c0d363f0479 \ + --hash=sha256:ce9f3bde4e9b031eaf1eb61df95c1401427029ea1bfddb8621c1161dcb0fa02e \ + --hash=sha256:cee6291bb4fed184f1c2b663606a115c743df98a537c969c3c64b49989da96c2 \ + --hash=sha256:cf9e6ff4ca908ca15c157c409d608da77a56a09877b97c889b98fb2c32b6465e \ + --hash=sha256:d06f4fc7acf3cabd6d74941d53329e06bab00a8fe10e4df2714f0b134bfc64ef \ + --hash=sha256:d66c0104aec3b75e5fd897e7940188ea1892ca1d0235316bf89286d6a22568c0 \ + --hash=sha256:d91ebeac603812a09cf6a886ba6e464f3bbb367411904ae3790dfe28311b15ad \ + --hash=sha256:d9a03ec6cb9f40a5c360f138b88266fd8f58408d71e89f536b4f91d85721d075 \ + --hash=sha256:dadbcce51a10c07b7c72b0ce4a25e4b6dcb0c0372846afb8e5b6307a121eb99f \ + --hash=sha256:dba82204769d78c3fd31b35c3d5f46e06511936c5019c39f98320e05b08f794d \ + --hash=sha256:dbbf012be5f32533a490709ad597ad8a8ff80c582a95adc8d62af664e532f9ca \ + --hash=sha256:df01d6c4c81e15a7c88337b795bb7595a8596e92310266b5072c7e301168efbd \ + --hash=sha256:e0eb0a2dcc62478eb5b4cbb80b97bdee852d7e280b90e81f11b407d0b81c4287 \ + --hash=sha256:e24045453384e0ae2a587d562df2a04d852672eb63051d16096d3f08aa4c7c2f \ + --hash=sha256:e44a86a47bbdf83b0a3ea4d7df5410d6b1a0de984fbd805fa5101f3624b9abe0 \ + --hash=sha256:e4dc07e95495923d6fd4d6c27bf70769425b71c89053083843fd78f378558996 \ + --hash=sha256:e89641f5175d65e2dbb44db15fe4ea48fade5d5bbb9868fdc2b4fce22f4a469d \ + --hash=sha256:e9570ad567f880ef675673992222746a124b9595506826b210fbe0ce3f0499cd \ + --hash=sha256:eb53f1e8adeeb2e78962bade0c08bfdc461853c7969706ed901821e009b35e31 \ + --hash=sha256:eb92e47c92fcbcdc692f428da67db33337fa213756f7adb6a011f7b5a7a20740 \ + --hash=sha256:ef55537ff511b5e0a43edb4c50a7bf7ba1c3eea20b4f49b1490f1e8e0e42c591 \ + --hash=sha256:f39ae2f63f37472c17b4990f794035c9890418b1b8cca75c01193f3c8d3e01be \ + --hash=sha256:f413ce6e07e0d0dc9c433228727b619871532674b45165abafe201f200cc215f \ + --hash=sha256:f91f927a3215b8907e214af77200250bb6aae36eca3f760f89780d13e495388d \ + --hash=sha256:f9ea02ef40bb83823b2b04964459d281688fe173e20643870bb5d2edf68bc836 \ + --hash=sha256:fcc0a4aa589de34bc56e1a80a740ee0f8c47611bdfb28cd1849de60660f3799d \ + --hash=sha256:fcc15fc462707b0680cff6242c48625da7f9a16a28a41bb8fd7a4280920e676c # via # -r requirements.txt # pytest-cov -docutils==0.19 \ - --hash=sha256:33995a6753c30b7f577febfc2c50411fec6aac7f7ffeb7c4cfe5991072dcf9e6 \ - --hash=sha256:5e1de4d849fee02c63b040a4a3fd567f4ab104defd8a5511fbbc24a8a017efbc +docutils==0.22.2 \ + --hash=sha256:9fdb771707c8784c8f2728b67cb2c691305933d68137ef95a75db5f4dfbc213d \ + --hash=sha256:b0e98d679283fc3bb0ead8a5da7f501baa632654e7056e9c5846842213d674d8 # via catkin-pkg empy==3.3.4 \ --hash=sha256:73ac49785b601479df4ea18a7c79bc1304a8a7c34c02b9472cf1206ae88f01b3 # via -r requirements.txt -exceptiongroup==1.0.4 \ - --hash=sha256:542adf9dea4055530d6e1279602fa5cb11dab2395fa650b8674eaec35fc4a828 \ - --hash=sha256:bd14967b79cd9bdb54d97323216f8fdf533e278df937aa2a90089e7d6e06e5ec - # via pytest -iniconfig==1.1.1 \ - --hash=sha256:011e24c64b7f47f6ebd835bb12a743f2fbe9a26d4cecaa7f53bc4f35ee9da8b3 \ - --hash=sha256:bc3af051d7d14b2ee5ef9969666def0cd1a000e121eaea580d4a313df4b37f32 +iniconfig==2.1.0 \ + --hash=sha256:3abbd2e30b36733fee78f9c7f7308f2d0050e88f0087fd25c2645f63c773e1c7 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 # via pytest lark-parser==0.12.0 \ --hash=sha256:0eaf30cb5ba787fe404d73a7d6e61df97b21d5a63ac26c5008c78a494373c675 \ @@ -124,126 +161,134 @@ numpy==1.26.4 \ --hash=sha256:f870204a840a60da0b12273ef34f7051e98c3b5961b61b0c2c1be6dfd64fbcd3 \ --hash=sha256:ffa75af20b44f8dba823498024771d5ac50620e6915abac414251bd971b4529f # via -r requirements.txt -packaging==21.3 \ - --hash=sha256:dd47c42927d89ab911e606518907cc2d3a1f38bbd026385970643f9c5b8ecfeb \ - --hash=sha256:ef103e05f519cdc783ae24ea4e2e0f508a9c99b2d4969652eed6a2e1ea5bd522 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 \ + --hash=sha256:d443872c98d677bf60f6a1f2f8c1cb748e8fe762d2bf9d3148b5599295b0fc4f # via # -r requirements.txt + # catkin-pkg # pytest -pluggy==1.0.0 \ - --hash=sha256:4224373bacce55f955a878bf9cfa763c1e360858e330072059e10bad68531159 \ - --hash=sha256:74134bbf457f031a36d68416e1509f34bd5ccc019f0bcc952c7b909d06b37bd3 - # via pytest -psutil==5.9.7 \ - --hash=sha256:032f4f2c909818c86cea4fe2cc407f1c0f0cde8e6c6d702b28b8ce0c0d143340 \ - --hash=sha256:0bd41bf2d1463dfa535942b2a8f0e958acf6607ac0be52265ab31f7923bcd5e6 \ - --hash=sha256:1132704b876e58d277168cd729d64750633d5ff0183acf5b3c986b8466cd0284 \ - --hash=sha256:1d4bc4a0148fdd7fd8f38e0498639ae128e64538faa507df25a20f8f7fb2341c \ - --hash=sha256:3c4747a3e2ead1589e647e64aad601981f01b68f9398ddf94d01e3dc0d1e57c7 \ - --hash=sha256:3f02134e82cfb5d089fddf20bb2e03fd5cd52395321d1c8458a9e58500ff417c \ - --hash=sha256:44969859757f4d8f2a9bd5b76eba8c3099a2c8cf3992ff62144061e39ba8568e \ - --hash=sha256:4c03362e280d06bbbfcd52f29acd79c733e0af33d707c54255d21029b8b32ba6 \ - --hash=sha256:5794944462509e49d4d458f4dbfb92c47539e7d8d15c796f141f474010084056 \ - --hash=sha256:b27f8fdb190c8c03914f908a4555159327d7481dac2f01008d483137ef3311a9 \ - --hash=sha256:c727ca5a9b2dd5193b8644b9f0c883d54f1248310023b5ad3e92036c5e2ada68 \ - --hash=sha256:e469990e28f1ad738f65a42dcfc17adaed9d0f325d55047593cb9033a0ab63df \ - --hash=sha256:ea36cc62e69a13ec52b2f625c27527f6e4479bca2b340b7a452af55b34fcbe2e \ - --hash=sha256:f37f87e4d73b79e6c5e749440c3113b81d1ee7d26f21c19c47371ddea834f414 \ - --hash=sha256:fe361f743cb3389b8efda21980d93eb55c1f1e3898269bc9a2a1d0bb7b1f6508 \ - --hash=sha256:fe8b7f07948f1304497ce4f4684881250cd859b16d06a1dc4d7941eeb6233bfe - # via -r requirements.txt -pyparsing==3.0.9 \ - --hash=sha256:2b020ecf7d21b687f219b71ecad3631f644a47f01403fa1d1036b0c6416d70fb \ - --hash=sha256:5026bae9a10eeaefb61dab2f09052b9f4307d44aee4eda64b309723d8d206bbc +pluggy==1.6.0 \ + --hash=sha256:7dcc130b76258d33b90f61b658791dede3486c3e6bfb003ee5c9bfb396dd22f3 \ + --hash=sha256:e920276dd6813095e9377c0bc5566d94c932c33b27a3e3945d8389c374dd4746 # via - # catkin-pkg - # packaging -pytest==7.2.0 \ - --hash=sha256:892f933d339f068883b6fd5a459f03d85bfcb355e4981e146d2c7616c21fef71 \ - --hash=sha256:c4014eb40e10f11f355ad4e3c2fb2c6c6d1919c73f3b5a433de4708202cade59 + # pytest + # pytest-cov +psutil==7.1.0 \ + --hash=sha256:09ad740870c8d219ed8daae0ad3b726d3bf9a028a198e7f3080f6a1888b99bca \ + --hash=sha256:22e4454970b32472ce7deaa45d045b34d3648ce478e26a04c7e858a0a6e75ff3 \ + --hash=sha256:57f5e987c36d3146c0dd2528cd42151cf96cd359b9d67cfff836995cc5df9a3d \ + --hash=sha256:5d007560c8c372efdff9e4579c2846d71de737e4605f611437255e81efcca2c5 \ + --hash=sha256:655708b3c069387c8b77b072fc429a57d0e214221d01c0a772df7dfedcb3bcd2 \ + --hash=sha256:6937cb68133e7c97b6cc9649a570c9a18ba0efebed46d8c5dae4c07fa1b67a07 \ + --hash=sha256:76168cef4397494250e9f4e73eb3752b146de1dd950040b29186d0cce1d5ca13 \ + --hash=sha256:7d4a113425c037300de3ac8b331637293da9be9713855c4fc9d2d97436d7259d \ + --hash=sha256:8c70e113920d51e89f212dd7be06219a9b88014e63a4cec69b684c327bc474e3 + # via -r requirements.txt +pyparsing==3.2.5 \ + --hash=sha256:2df8d5b7b2802ef88e8d016a2eb9c7aeaa923529cd251ed0fe4608275d4105b6 \ + --hash=sha256:e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e + # via catkin-pkg +pytest==7.4.4 \ + --hash=sha256:2cf0005922c6ace4a3e2ec8b4080eb0d9753fdc93107415332f50ce9e7994280 \ + --hash=sha256:b090cdf5ed60bf4c45261be03239c2c1c22df034fbffe691abe93cd80cea01d8 # via # -r requirements.txt # pytest-cov -pytest-cov==4.0.0 \ - --hash=sha256:2feb1b751d66a8bd934e5edfa2e961d11309dc37b73b0eabe73b5945fee20f6b \ - --hash=sha256:996b79efde6433cdbd0088872dbc5fb3ed7fe1578b68cdbba634f14bb8dd0470 +pytest-cov==7.0.0 \ + --hash=sha256:33c97eda2e049a0c5298e91f519302a1334c26ac65c1a483d6206fd458361af1 \ + --hash=sha256:3b8e9558b16cc1479da72058bdecf8073661c7f57f7d3c5f22a1c23507f2d861 # via -r requirements.txt -python-dateutil==2.8.2 \ - --hash=sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86 \ - --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dateutil==2.9.0.post0 \ + --hash=sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3 \ + --hash=sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427 # via catkin-pkg -pyyaml==6.0.2 \ - --hash=sha256:01179a4a8559ab5de078078f37e5c1a30d76bb88519906844fd7bdea1b7729ff \ - --hash=sha256:0833f8694549e586547b576dcfaba4a6b55b9e96098b36cdc7ebefe667dfed48 \ - --hash=sha256:0a9a2848a5b7feac301353437eb7d5957887edbf81d56e903999a75a3d743086 \ - --hash=sha256:0b69e4ce7a131fe56b7e4d770c67429700908fc0752af059838b1cfb41960e4e \ - --hash=sha256:0ffe8360bab4910ef1b9e87fb812d8bc0a308b0d0eef8c8f44e0254ab3b07133 \ - --hash=sha256:11d8f3dd2b9c1207dcaf2ee0bbbfd5991f571186ec9cc78427ba5bd32afae4b5 \ - --hash=sha256:17e311b6c678207928d649faa7cb0d7b4c26a0ba73d41e99c4fff6b6c3276484 \ - --hash=sha256:1e2120ef853f59c7419231f3bf4e7021f1b936f6ebd222406c3b60212205d2ee \ - --hash=sha256:1f71ea527786de97d1a0cc0eacd1defc0985dcf6b3f17bb77dcfc8c34bec4dc5 \ - --hash=sha256:23502f431948090f597378482b4812b0caae32c22213aecf3b55325e049a6c68 \ - --hash=sha256:24471b829b3bf607e04e88d79542a9d48bb037c2267d7927a874e6c205ca7e9a \ - --hash=sha256:29717114e51c84ddfba879543fb232a6ed60086602313ca38cce623c1d62cfbf \ - --hash=sha256:2e99c6826ffa974fe6e27cdb5ed0021786b03fc98e5ee3c5bfe1fd5015f42b99 \ - --hash=sha256:39693e1f8320ae4f43943590b49779ffb98acb81f788220ea932a6b6c51004d8 \ - --hash=sha256:3ad2a3decf9aaba3d29c8f537ac4b243e36bef957511b4766cb0057d32b0be85 \ - --hash=sha256:3b1fdb9dc17f5a7677423d508ab4f243a726dea51fa5e70992e59a7411c89d19 \ - --hash=sha256:41e4e3953a79407c794916fa277a82531dd93aad34e29c2a514c2c0c5fe971cc \ - --hash=sha256:43fa96a3ca0d6b1812e01ced1044a003533c47f6ee8aca31724f78e93ccc089a \ - --hash=sha256:50187695423ffe49e2deacb8cd10510bc361faac997de9efef88badc3bb9e2d1 \ - --hash=sha256:5ac9328ec4831237bec75defaf839f7d4564be1e6b25ac710bd1a96321cc8317 \ - --hash=sha256:5d225db5a45f21e78dd9358e58a98702a0302f2659a3c6cd320564b75b86f47c \ - --hash=sha256:6395c297d42274772abc367baaa79683958044e5d3835486c16da75d2a694631 \ - --hash=sha256:688ba32a1cffef67fd2e9398a2efebaea461578b0923624778664cc1c914db5d \ - --hash=sha256:68ccc6023a3400877818152ad9a1033e3db8625d899c72eacb5a668902e4d652 \ - --hash=sha256:70b189594dbe54f75ab3a1acec5f1e3faa7e8cf2f1e08d9b561cb41b845f69d5 \ - --hash=sha256:797b4f722ffa07cc8d62053e4cff1486fa6dc094105d13fea7b1de7d8bf71c9e \ - --hash=sha256:7c36280e6fb8385e520936c3cb3b8042851904eba0e58d277dca80a5cfed590b \ - --hash=sha256:7e7401d0de89a9a855c839bc697c079a4af81cf878373abd7dc625847d25cbd8 \ - --hash=sha256:80bab7bfc629882493af4aa31a4cfa43a4c57c83813253626916b8c7ada83476 \ - --hash=sha256:82d09873e40955485746739bcb8b4586983670466c23382c19cffecbf1fd8706 \ - --hash=sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563 \ - --hash=sha256:8824b5a04a04a047e72eea5cec3bc266db09e35de6bdfe34c9436ac5ee27d237 \ - --hash=sha256:8b9c7197f7cb2738065c481a0461e50ad02f18c78cd75775628afb4d7137fb3b \ - --hash=sha256:9056c1ecd25795207ad294bcf39f2db3d845767be0ea6e6a34d856f006006083 \ - --hash=sha256:936d68689298c36b53b29f23c6dbb74de12b4ac12ca6cfe0e047bedceea56180 \ - --hash=sha256:9b22676e8097e9e22e36d6b7bda33190d0d400f345f23d4065d48f4ca7ae0425 \ - --hash=sha256:a4d3091415f010369ae4ed1fc6b79def9416358877534caf6a0fdd2146c87a3e \ - --hash=sha256:a8786accb172bd8afb8be14490a16625cbc387036876ab6ba70912730faf8e1f \ - --hash=sha256:a9f8c2e67970f13b16084e04f134610fd1d374bf477b17ec1599185cf611d725 \ - --hash=sha256:bc2fa7c6b47d6bc618dd7fb02ef6fdedb1090ec036abab80d4681424b84c1183 \ - --hash=sha256:c70c95198c015b85feafc136515252a261a84561b7b1d51e3384e0655ddf25ab \ - --hash=sha256:cc1c1159b3d456576af7a3e4d1ba7e6924cb39de8f67111c735f6fc832082774 \ - --hash=sha256:ce826d6ef20b1bc864f0a68340c8b3287705cae2f8b4b1d932177dcc76721725 \ - --hash=sha256:d584d9ec91ad65861cc08d42e834324ef890a082e591037abe114850ff7bbc3e \ - --hash=sha256:d7fded462629cfa4b685c5416b949ebad6cec74af5e2d42905d41e257e0869f5 \ - --hash=sha256:d84a1718ee396f54f3a086ea0a66d8e552b2ab2017ef8b420e92edbc841c352d \ - --hash=sha256:d8e03406cac8513435335dbab54c0d385e4a49e4945d2909a581c83647ca0290 \ - --hash=sha256:e10ce637b18caea04431ce14fabcf5c64a1c61ec9c56b071a4b7ca131ca52d44 \ - --hash=sha256:ec031d5d2feb36d1d1a24380e4db6d43695f3748343d99434e6f5f9156aaa2ed \ - --hash=sha256:ef6107725bd54b262d6dedcc2af448a266975032bc85ef0172c5f059da6325b4 \ - --hash=sha256:efdca5630322a10774e8e98e1af481aad470dd62c3170801852d752aa7a783ba \ - --hash=sha256:f753120cb8181e736c57ef7636e83f31b9c0d1722c516f7e86cf15b7aa57ff12 \ - --hash=sha256:ff3824dc5261f50c9b0dfb3be22b4567a6f938ccce4587b38952d85fd9e9afe4 +pyyaml==6.0.3 \ + --hash=sha256:00c4bdeba853cc34e7dd471f16b4114f4162dc03e6b7afcc2128711f0eca823c \ + --hash=sha256:0150219816b6a1fa26fb4699fb7daa9caf09eb1999f3b70fb6e786805e80375a \ + --hash=sha256:02893d100e99e03eda1c8fd5c441d8c60103fd175728e23e431db1b589cf5ab3 \ + --hash=sha256:02ea2dfa234451bbb8772601d7b8e426c2bfa197136796224e50e35a78777956 \ + --hash=sha256:0f29edc409a6392443abf94b9cf89ce99889a1dd5376d94316ae5145dfedd5d6 \ + --hash=sha256:10892704fc220243f5305762e276552a0395f7beb4dbf9b14ec8fd43b57f126c \ + --hash=sha256:16249ee61e95f858e83976573de0f5b2893b3677ba71c9dd36b9cf8be9ac6d65 \ + --hash=sha256:1d37d57ad971609cf3c53ba6a7e365e40660e3be0e5175fa9f2365a379d6095a \ + --hash=sha256:1ebe39cb5fc479422b83de611d14e2c0d3bb2a18bbcb01f229ab3cfbd8fee7a0 \ + --hash=sha256:214ed4befebe12df36bcc8bc2b64b396ca31be9304b8f59e25c11cf94a4c033b \ + --hash=sha256:2283a07e2c21a2aa78d9c4442724ec1eb15f5e42a723b99cb3d822d48f5f7ad1 \ + --hash=sha256:22ba7cfcad58ef3ecddc7ed1db3409af68d023b7f940da23c6c2a1890976eda6 \ + --hash=sha256:27c0abcb4a5dac13684a37f76e701e054692a9b2d3064b70f5e4eb54810553d7 \ + --hash=sha256:28c8d926f98f432f88adc23edf2e6d4921ac26fb084b028c733d01868d19007e \ + --hash=sha256:2e71d11abed7344e42a8849600193d15b6def118602c4c176f748e4583246007 \ + --hash=sha256:34d5fcd24b8445fadc33f9cf348c1047101756fd760b4dacb5c3e99755703310 \ + --hash=sha256:37503bfbfc9d2c40b344d06b2199cf0e96e97957ab1c1b546fd4f87e53e5d3e4 \ + --hash=sha256:3c5677e12444c15717b902a5798264fa7909e41153cdf9ef7ad571b704a63dd9 \ + --hash=sha256:3ff07ec89bae51176c0549bc4c63aa6202991da2d9a6129d7aef7f1407d3f295 \ + --hash=sha256:41715c910c881bc081f1e8872880d3c650acf13dfa8214bad49ed4cede7c34ea \ + --hash=sha256:418cf3f2111bc80e0933b2cd8cd04f286338bb88bdc7bc8e6dd775ebde60b5e0 \ + --hash=sha256:44edc647873928551a01e7a563d7452ccdebee747728c1080d881d68af7b997e \ + --hash=sha256:4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac \ + --hash=sha256:4ad1906908f2f5ae4e5a8ddfce73c320c2a1429ec52eafd27138b7f1cbe341c9 \ + --hash=sha256:501a031947e3a9025ed4405a168e6ef5ae3126c59f90ce0cd6f2bfc477be31b7 \ + --hash=sha256:5190d403f121660ce8d1d2c1bb2ef1bd05b5f68533fc5c2ea899bd15f4399b35 \ + --hash=sha256:5498cd1645aa724a7c71c8f378eb29ebe23da2fc0d7a08071d89469bf1d2defb \ + --hash=sha256:5cf4e27da7e3fbed4d6c3d8e797387aaad68102272f8f9752883bc32d61cb87b \ + --hash=sha256:5e0b74767e5f8c593e8c9b5912019159ed0533c70051e9cce3e8b6aa699fcd69 \ + --hash=sha256:5ed875a24292240029e4483f9d4a4b8a1ae08843b9c54f43fcc11e404532a8a5 \ + --hash=sha256:5fcd34e47f6e0b794d17de1b4ff496c00986e1c83f7ab2fb8fcfe9616ff7477b \ + --hash=sha256:5fdec68f91a0c6739b380c83b951e2c72ac0197ace422360e6d5a959d8d97b2c \ + --hash=sha256:6344df0d5755a2c9a276d4473ae6b90647e216ab4757f8426893b5dd2ac3f369 \ + --hash=sha256:64386e5e707d03a7e172c0701abfb7e10f0fb753ee1d773128192742712a98fd \ + --hash=sha256:652cb6edd41e718550aad172851962662ff2681490a8a711af6a4d288dd96824 \ + --hash=sha256:66291b10affd76d76f54fad28e22e51719ef9ba22b29e1d7d03d6777a9174198 \ + --hash=sha256:66e1674c3ef6f541c35191caae2d429b967b99e02040f5ba928632d9a7f0f065 \ + --hash=sha256:6adc77889b628398debc7b65c073bcb99c4a0237b248cacaf3fe8a557563ef6c \ + --hash=sha256:79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c \ + --hash=sha256:7c6610def4f163542a622a73fb39f534f8c101d690126992300bf3207eab9764 \ + --hash=sha256:7f047e29dcae44602496db43be01ad42fc6f1cc0d8cd6c83d342306c32270196 \ + --hash=sha256:8098f252adfa6c80ab48096053f512f2321f0b998f98150cea9bd23d83e1467b \ + --hash=sha256:850774a7879607d3a6f50d36d04f00ee69e7fc816450e5f7e58d7f17f1ae5c00 \ + --hash=sha256:8d1fab6bb153a416f9aeb4b8763bc0f22a5586065f86f7664fc23339fc1c1fac \ + --hash=sha256:8da9669d359f02c0b91ccc01cac4a67f16afec0dac22c2ad09f46bee0697eba8 \ + --hash=sha256:8dc52c23056b9ddd46818a57b78404882310fb473d63f17b07d5c40421e47f8e \ + --hash=sha256:9149cad251584d5fb4981be1ecde53a1ca46c891a79788c0df828d2f166bda28 \ + --hash=sha256:93dda82c9c22deb0a405ea4dc5f2d0cda384168e466364dec6255b293923b2f3 \ + --hash=sha256:96b533f0e99f6579b3d4d4995707cf36df9100d67e0c8303a0c55b27b5f99bc5 \ + --hash=sha256:9c57bb8c96f6d1808c030b1687b9b5fb476abaa47f0db9c0101f5e9f394e97f4 \ + --hash=sha256:9c7708761fccb9397fe64bbc0395abcae8c4bf7b0eac081e12b809bf47700d0b \ + --hash=sha256:9f3bfb4965eb874431221a3ff3fdcddc7e74e3b07799e0e84ca4a0f867d449bf \ + --hash=sha256:a33284e20b78bd4a18c8c2282d549d10bc8408a2a7ff57653c0cf0b9be0afce5 \ + --hash=sha256:a80cb027f6b349846a3bf6d73b5e95e782175e52f22108cfa17876aaeff93702 \ + --hash=sha256:b30236e45cf30d2b8e7b3e85881719e98507abed1011bf463a8fa23e9c3e98a8 \ + --hash=sha256:b3bc83488de33889877a0f2543ade9f70c67d66d9ebb4ac959502e12de895788 \ + --hash=sha256:b865addae83924361678b652338317d1bd7e79b1f4596f96b96c77a5a34b34da \ + --hash=sha256:b8bb0864c5a28024fac8a632c443c87c5aa6f215c0b126c449ae1a150412f31d \ + --hash=sha256:ba1cc08a7ccde2d2ec775841541641e4548226580ab850948cbfda66a1befcdc \ + --hash=sha256:bdb2c67c6c1390b63c6ff89f210c8fd09d9a1217a465701eac7316313c915e4c \ + --hash=sha256:c1ff362665ae507275af2853520967820d9124984e0f7466736aea23d8611fba \ + --hash=sha256:c2514fceb77bc5e7a2f7adfaa1feb2fb311607c9cb518dbc378688ec73d8292f \ + --hash=sha256:c3355370a2c156cffb25e876646f149d5d68f5e0a3ce86a5084dd0b64a994917 \ + --hash=sha256:c458b6d084f9b935061bc36216e8a69a7e293a2f1e68bf956dcd9e6cbcd143f5 \ + --hash=sha256:d0eae10f8159e8fdad514efdc92d74fd8d682c933a6dd088030f3834bc8e6b26 \ + --hash=sha256:d76623373421df22fb4cf8817020cbb7ef15c725b9d5e45f17e189bfc384190f \ + --hash=sha256:ebc55a14a21cb14062aa4162f906cd962b28e2e9ea38f9b4391244cd8de4ae0b \ + --hash=sha256:eda16858a3cab07b80edaf74336ece1f986ba330fdb8ee0d6c0d68fe82bc96be \ + --hash=sha256:ee2922902c45ae8ccada2c5b501ab86c36525b883eff4255313a253a3160861c \ + --hash=sha256:efd7b85f94a6f21e4932043973a7ba2613b059c4a000551892ac9f1d11f5baf3 \ + --hash=sha256:f7057c9a337546edc7973c0d3ba84ddcdf0daa14533c2065749c9075001090e6 \ + --hash=sha256:fa160448684b4e94d80416c0fa4aac48967a969efe22931448d853ada8baf926 \ + --hash=sha256:fc09d0aa354569bc501d4e787133afc08552722d3ab34836a80547331bb5d4a0 # via -r requirements.txt -six==1.16.0 \ - --hash=sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926 \ - --hash=sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 \ + --hash=sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81 # via python-dateutil -tomli==2.0.1 \ - --hash=sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc \ - --hash=sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f - # via - # coverage - # pytest types-pkg-resources==0.1.3 \ --hash=sha256:0cb9972cee992249f93fff1a491bf2dc3ce674e5a1926e27d4f0866f7d9b6d9c \ --hash=sha256:834a9b8d3dbea343562fd99d5d3359a726f6bf9d3733bccd2b4f3096fbab9dae # via -r requirements.txt # The following packages are considered to be unsafe in a requirements file: -setuptools==65.4.1 \ - --hash=sha256:1b6bdc6161661409c5f21508763dc63ab20a9ac2f8ba20029aaaa7fdb9118012 \ - --hash=sha256:3050e338e5871e70c72983072fe34f6032ae1cdeeeb67338199c2f74e083a80e +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 \ + --hash=sha256:f36b47402ecde768dbfafc46e8e4207b4360c654f1f3bb84475f0a28628fb19c # via catkin-pkg diff --git a/ros2/ament.bzl b/ros2/ament.bzl index 358bdc50..3df56849 100644 --- a/ros2/ament.bzl +++ b/ros2/ament.bzl @@ -6,8 +6,10 @@ load("@bazel_skylib//lib:paths.bzl", "paths") load( "@com_github_mvukov_rules_ros2//ros2:interfaces.bzl", "Ros2InterfaceInfo", + "c_generator_aspect", "cpp_generator_aspect", "idl_adapter_aspect", + "type_description_aspect", ) load( "@com_github_mvukov_rules_ros2//ros2:plugin_aspects.bzl", @@ -249,6 +251,8 @@ ros2_ament_setup = rule( "idl_deps": attr.label_list( aspects = [ idl_adapter_aspect, + type_description_aspect, + c_generator_aspect, cpp_generator_aspect, ros2_idl_plugin_aspect, ], diff --git a/ros2/interfaces.bzl b/ros2/interfaces.bzl index fa8af1f4..ec642850 100644 --- a/ros2/interfaces.bzl +++ b/ros2/interfaces.bzl @@ -165,6 +165,102 @@ idl_adapter_aspect = aspect( provides = [IdlAdapterAspectInfo], ) +TypeDescriptionAspectInfo = provider("TBD", fields = [ + "type_description_files", + "type_description_tuples", + "include_path_tuples", +]) + +def _type_description_aspect_impl(target, ctx): + package_name = target.label.name + srcs = target[Ros2InterfaceInfo].info.srcs + adapter = target[IdlAdapterAspectInfo] + + generator = ctx.executable._generator + generator_arguments_file = ctx.actions.declare_file( + "{}/{}_args.json".format(package_name, generator.basename), + ) + output_dir = generator_arguments_file.dirname + transitive_include_path_tuples = depset( + transitive = [ + dep[TypeDescriptionAspectInfo].include_path_tuples + for dep in ctx.rule.attr.deps + ], + ) + + generator_arguments = struct( + package_name = package_name, + idl_tuples = adapter.idl_tuples, + output_dir = output_dir, + include_paths = transitive_include_path_tuples.to_list(), + ) + ctx.actions.write(generator_arguments_file, json.encode(generator_arguments)) + + generator_cmd_args = ctx.actions.args() + generator_cmd_args.add( + generator_arguments_file.path, + format = "--generator-arguments-file=%s", + ) + + type_description_files = [] + type_description_tuples = [] + for src in srcs: + extension = src.extension + stem = _get_stem(src) + relative_file = "{}/{}/{}.json".format(package_name, extension, stem) + type_description_file = ctx.actions.declare_file(relative_file) + type_description_files.append(type_description_file) + type_description_tuples.append( + "{}/{}.idl:{}".format(extension, stem, type_description_file.path), + ) + + transitive_type_description_files = depset( + transitive = [ + dep[TypeDescriptionAspectInfo].type_description_files + for dep in ctx.rule.attr.deps + ], + ) + + ctx.actions.run( + inputs = adapter.idl_files + [generator_arguments_file] + transitive_type_description_files.to_list(), + outputs = type_description_files, + executable = generator, + arguments = [generator_cmd_args], + mnemonic = "Ros2TypeDescription", + progress_message = "Generating type description files for %{label}", + ) + + include_path_tuple = "{}:{}".format(package_name, _get_parent_dir(type_description_files[0].dirname)) + return [ + TypeDescriptionAspectInfo( + # TODO(mvukov) Check if run_generator only needs direct files! + type_description_files = depset( + direct = type_description_files, + transitive = [transitive_type_description_files], + ), + type_description_tuples = type_description_tuples, + include_path_tuples = depset( + direct = [include_path_tuple], + transitive = [transitive_include_path_tuples], + ), + ), + ] + +type_description_aspect = aspect( + implementation = _type_description_aspect_impl, + attr_aspects = ["deps"], + attrs = { + "_generator": attr.label( + default = Label("@ros2_rosidl//:rosidl_generator_type_description_app"), + executable = True, + cfg = "exec", + ), + }, + required_providers = [Ros2InterfaceInfo], + required_aspect_providers = [IdlAdapterAspectInfo], + provides = [TypeDescriptionAspectInfo], +) + def _get_parent_dir(path): return "/".join(path.split("/")[:-1]) @@ -181,19 +277,22 @@ def run_generator( extra_generated_outputs = None, mnemonic = None, progress_message = None, - generator_env = None): + generator_env = None, + type_description = None): generator_templates = generator_templates[DefaultInfo].files.to_list() generator_arguments_file = ctx.actions.declare_file( "{}/{}_args.json".format(package_name, generator.basename), ) output_dir = generator_arguments_file.dirname + type_description_tuples = type_description.type_description_tuples if type_description != None else [] generator_arguments = struct( package_name = package_name, idl_tuples = adapter.idl_tuples, output_dir = output_dir, template_dir = generator_templates[0].dirname, - target_dependencies = [], # TODO(mvukov) Do we need this? + target_dependencies = [], # We don't need this, Bazel takes care of consistency. + type_description_tuples = type_description_tuples, ) ctx.actions.write(generator_arguments_file, json.encode(generator_arguments)) @@ -224,8 +323,11 @@ def run_generator( relative_file = "{}/{}".format(package_name, extra_output) generator_outputs.append(ctx.actions.declare_file(relative_file)) + inputs = adapter.idl_files + generator_templates + [generator_arguments_file] + if type_description != None: + inputs.extend(type_description.type_description_files.to_list()) ctx.actions.run( - inputs = adapter.idl_files + generator_templates + [generator_arguments_file], + inputs = inputs, outputs = generator_outputs, env = generator_env, executable = generator, @@ -260,17 +362,19 @@ CGeneratorAspectInfo = provider("TBD", fields = [ _INTERFACE_GENERATOR_C_OUTPUT_MAPPING = [ "%s.h", + "detail/%s__description.c", "detail/%s__functions.c", "detail/%s__functions.h", "detail/%s__struct.h", + "detail/%s__type_support.c", "detail/%s__type_support.h", ] -_TYPESUPPORT_GENERATOR_C_OUTPUT_MAPPING = ["%s__type_support.c"] +_TYPESUPPORT_GENERATOR_C_OUTPUT_MAPPING = ["%s__type_support_c.c"] _TYPESUPPORT_INTROSPECION_GENERATOR_C_OUTPUT_MAPPING = [ "detail/%s__rosidl_typesupport_introspection_c.h", - "detail/%s__type_support.c", + "detail/%s__rosidl_typesupport_introspection_c.c", ] def _get_hdrs(files): @@ -290,19 +394,29 @@ def _get_srcs(files): def _get_compilation_contexts_from_deps(deps): return [dep[CcInfo].compilation_context for dep in deps] -def _get_compilation_contexts_from_aspect_info_deps(deps, aspect_info): - return [dep[aspect_info].cc_info.compilation_context for dep in deps] +def _get_compilation_contexts_from_aspect_info_deps(deps, aspect_infos): + return [ + dep[aspect_info].cc_info.compilation_context + for aspect_info in aspect_infos + for dep in deps + if aspect_info in dep + ] def _get_linking_contexts_from_deps(deps): return [dep[CcInfo].linking_context for dep in deps] -def _get_linking_contexts_from_aspect_info_deps(deps, aspect_info): - return [dep[aspect_info].cc_info.linking_context for dep in deps] +def _get_linking_contexts_from_aspect_info_deps(deps, aspect_infos): + return [ + dep[aspect_info].cc_info.linking_context + for aspect_info in aspect_infos + for dep in deps + if aspect_info in dep + ] def _compile_cc_generated_code( ctx, name, - aspect_info, + aspect_infos, srcs, hdrs, deps, @@ -323,10 +437,11 @@ def _compile_cc_generated_code( compilation_contexts = ( _get_compilation_contexts_from_aspect_info_deps( rule_deps, - aspect_info, + aspect_infos, ) + _get_compilation_contexts_from_deps(deps) ) + compilation_context, compilation_outputs = cc_common.compile( actions = ctx.actions, name = name, @@ -342,7 +457,7 @@ def _compile_cc_generated_code( linking_contexts = ( _get_linking_contexts_from_aspect_info_deps( rule_deps, - aspect_info, + aspect_infos, ) + _get_linking_contexts_from_deps(deps) ) @@ -382,6 +497,7 @@ def _c_generator_aspect_impl(target, ctx): visibility_control_template = ctx.file._interface_visibility_control_template, mnemonic = "Ros2IdlGeneratorC", progress_message = "Generating C IDL interfaces for %{label}", + type_description = target[TypeDescriptionAspectInfo], ) typesupport_outputs, _ = run_generator( @@ -422,7 +538,7 @@ def _c_generator_aspect_impl(target, ctx): compilation_info = _compile_cc_generated_code( ctx, name = package_name + "_c", - aspect_info = CGeneratorAspectInfo, + aspect_infos = [CGeneratorAspectInfo], srcs = srcs, hdrs = hdrs, deps = ctx.attr._c_deps, @@ -486,7 +602,10 @@ c_generator_aspect = aspect( ), }, required_providers = [Ros2InterfaceInfo], - required_aspect_providers = [IdlAdapterAspectInfo], + required_aspect_providers = [ + [IdlAdapterAspectInfo], + [TypeDescriptionAspectInfo], + ], provides = [CGeneratorAspectInfo], toolchains = ["@bazel_tools//tools/cpp:toolchain_type"], fragments = ["cpp"], @@ -505,7 +624,11 @@ c_ros2_interface_library = rule( attrs = { "deps": attr.label_list( mandatory = True, - aspects = [idl_adapter_aspect, c_generator_aspect], + aspects = [ + idl_adapter_aspect, + type_description_aspect, + c_generator_aspect, + ], providers = [Ros2InterfaceInfo], ), }, @@ -526,12 +649,12 @@ _INTERFACE_GENERATOR_CPP_OUTPUT_MAPPING = [ ] _TYPESUPPORT_GENERATOR_CPP_OUTPUT_MAPPING = [ - "%s__type_support.cpp", + "%s__type_support_cpp.cpp", ] _TYPESUPPORT_INTROSPECION_GENERATOR_CPP_OUTPUT_MAPPING = [ "detail/%s__rosidl_typesupport_introspection_cpp.hpp", - "detail/%s__type_support.cpp", + "detail/%s__rosidl_typesupport_introspection_cpp.cpp", ] def _cpp_generator_aspect_impl(target, ctx): @@ -588,12 +711,13 @@ def _cpp_generator_aspect_impl(target, ctx): compilation_info = _compile_cc_generated_code( ctx, name = package_name + "_cpp", - aspect_info = CppGeneratorAspectInfo, + aspect_infos = [CGeneratorAspectInfo, CppGeneratorAspectInfo], srcs = srcs, hdrs = hdrs, deps = ctx.attr._cpp_deps, cc_include_dir = cc_include_dir, copts = [], + target = target, ) return [ @@ -649,7 +773,11 @@ cpp_generator_aspect = aspect( ), }, required_providers = [Ros2InterfaceInfo], - required_aspect_providers = [IdlAdapterAspectInfo], + required_aspect_providers = [ + [IdlAdapterAspectInfo], + [TypeDescriptionAspectInfo], + [CGeneratorAspectInfo], + ], provides = [CppGeneratorAspectInfo], toolchains = ["@bazel_tools//tools/cpp:toolchain_type"], fragments = ["cpp"], @@ -662,7 +790,12 @@ cpp_ros2_interface_library = rule( attrs = { "deps": attr.label_list( mandatory = True, - aspects = [idl_adapter_aspect, cpp_generator_aspect], + aspects = [ + idl_adapter_aspect, + type_description_aspect, + c_generator_aspect, + cpp_generator_aspect, + ], providers = [Ros2InterfaceInfo], ), }, @@ -722,7 +855,7 @@ def _py_generator_aspect_impl(target, ctx): compilation_info = _compile_cc_generated_code( ctx, name = package_name + "_py", - aspect_info = CGeneratorAspectInfo, + aspect_infos = [CGeneratorAspectInfo], srcs = cc_srcs, hdrs = [], deps = ctx.attr._py_ext_c_deps, @@ -744,7 +877,7 @@ def _py_generator_aspect_impl(target, ctx): # on the one of A. linking_contexts = _get_linking_contexts_from_aspect_info_deps( ctx.rule.attr.deps, - PyGeneratorAspectInfo, + [PyGeneratorAspectInfo], ) dynamic_library_name_stem = package_name + "/" + py_extension_name linking_outputs = cc_common.link( @@ -842,6 +975,7 @@ py_generator_aspect = aspect( required_providers = [Ros2InterfaceInfo], required_aspect_providers = [ [IdlAdapterAspectInfo], + [TypeDescriptionAspectInfo], [CGeneratorAspectInfo], ], provides = [PyGeneratorAspectInfo], @@ -897,6 +1031,7 @@ py_generator = rule( mandatory = True, aspects = [ idl_adapter_aspect, + type_description_aspect, c_generator_aspect, py_generator_aspect, ], diff --git a/ros2/plugin.bzl b/ros2/plugin.bzl index d5a1b280..c2adb19e 100644 --- a/ros2/plugin.bzl +++ b/ros2/plugin.bzl @@ -15,14 +15,6 @@ """ load("@com_github_mvukov_rules_ros2//ros2:cc_defs.bzl", "ros2_cpp_library") -load( - "@com_github_mvukov_rules_ros2//ros2:interfaces.bzl", - "CppGeneratorAspectInfo", - "IdlAdapterAspectInfo", - "Ros2InterfaceInfo", - "cpp_generator_aspect", - "idl_adapter_aspect", -) load( "@com_github_mvukov_rules_ros2//ros2:plugin_aspects.bzl", "Ros2PluginInfo", diff --git a/ros2/plugin_aspects.bzl b/ros2/plugin_aspects.bzl index 53752b43..09d7201f 100644 --- a/ros2/plugin_aspects.bzl +++ b/ros2/plugin_aspects.bzl @@ -16,9 +16,11 @@ load( "@com_github_mvukov_rules_ros2//ros2:interfaces.bzl", + "CGeneratorAspectInfo", "CppGeneratorAspectInfo", "IdlAdapterAspectInfo", "Ros2InterfaceInfo", + "TypeDescriptionAspectInfo", ) load("@rules_cc//cc:defs.bzl", "cc_common") load("@rules_cc//cc:toolchain_utils.bzl", "find_cpp_toolchain") diff --git a/ros2/rust_interfaces.bzl b/ros2/rust_interfaces.bzl index 18139042..557b8608 100644 --- a/ros2/rust_interfaces.bzl +++ b/ros2/rust_interfaces.bzl @@ -21,9 +21,11 @@ load( "CGeneratorAspectInfo", "IdlAdapterAspectInfo", "Ros2InterfaceInfo", + "TypeDescriptionAspectInfo", "c_generator_aspect", "idl_adapter_aspect", "run_generator", + "type_description_aspect", ) load("@rules_cc//cc:defs.bzl", "cc_common") load("@rules_rust//rust:defs.bzl", "rust_common") @@ -157,7 +159,7 @@ def _rust_generator_aspect_impl(target, ctx): extra_generated_outputs = extra_generated_outputs, mnemonic = "Ros2IdlGeneratorRust", progress_message = "Generating Rust IDL interfaces for %{label}", - generator_env = {"ROS_DISTRO": "humble"}, + generator_env = {"ROS_DISTRO": "jazzy"}, ) # Ideally dep_variant_info could be a depset, and all dep propagation should @@ -229,6 +231,7 @@ rust_generator_aspect = aspect( required_providers = [Ros2InterfaceInfo], required_aspect_providers = [ [IdlAdapterAspectInfo], + [TypeDescriptionAspectInfo], [CGeneratorAspectInfo], ], provides = [RustGeneratorAspectInfo], @@ -271,6 +274,7 @@ rust_ros2_interface_library = rule( mandatory = True, aspects = [ idl_adapter_aspect, + type_description_aspect, c_generator_aspect, rust_generator_aspect, ], diff --git a/ros2/test/rosbag/tests.py b/ros2/test/rosbag/tests.py index 2cc13aff..6397009c 100644 --- a/ros2/test/rosbag/tests.py +++ b/ros2/test/rosbag/tests.py @@ -75,7 +75,8 @@ def test_recorder_and_playback(self, proc_info, recorder): bag_metadata = yaml.load( stream, Loader=yaml.Loader)['rosbag2_bagfile_information'] - min_num_received_msgs = 9 + # TODO(mvukov) Investigate why 8 and not 9 like before. + min_num_received_msgs = 8 self.assertGreaterEqual(bag_metadata['message_count'], min_num_received_msgs) diff --git a/ros2/test/rosbag/write_to_bag_tests.py b/ros2/test/rosbag/write_to_bag_tests.py index 43cc0cab..3aa3e481 100644 --- a/ros2/test/rosbag/write_to_bag_tests.py +++ b/ros2/test/rosbag/write_to_bag_tests.py @@ -41,7 +41,8 @@ def make_bag(bag_filepath: pathlib.Path, storage_id: str): output_serialization_format=SERIALIZATION_FORMAT), ) writer.create_topic( - rosbag2_py.TopicMetadata(name=ODOMETRY_TOPIC, + rosbag2_py.TopicMetadata(id=42, + name=ODOMETRY_TOPIC, type=ODOMETRY_MESSAGE_TYPE, serialization_format=SERIALIZATION_FORMAT)) diff --git a/third_party/foxglove_bridge/BUILD.bazel b/third_party/foxglove_bridge/BUILD.bazel index e4a5a934..5399f98b 100644 --- a/third_party/foxglove_bridge/BUILD.bazel +++ b/third_party/foxglove_bridge/BUILD.bazel @@ -41,7 +41,7 @@ ros2_cpp_test( name = "tests", size = "small", srcs = ["foxglove_bridge_tests.cc"], - env = {"ROS_DISTRO": "humble"}, + env = {"ROS_DISTRO": "jazzy"}, flaky = True, idl_deps = [ "@ros2_rcl_interfaces//:rcl_interfaces",