diff --git a/.github/workflows/cancel-previous-workflows.yaml b/.github/workflows/cancel-previous-workflows.yaml index ee79ce0e4..2037da36a 100644 --- a/.github/workflows/cancel-previous-workflows.yaml +++ b/.github/workflows/cancel-previous-workflows.yaml @@ -2,6 +2,8 @@ # https://github.com/autowarefoundation/sync-file-templates # To make changes, update the source repository and follow the guidelines in its README. +# Deprecated: Use concurrency in each workflow instead. + name: cancel-previous-workflows on: diff --git a/.github/workflows/delete-closed-pr-docs.yaml b/.github/workflows/delete-closed-pr-docs.yaml index 86301c06a..360cd84df 100644 --- a/.github/workflows/delete-closed-pr-docs.yaml +++ b/.github/workflows/delete-closed-pr-docs.yaml @@ -9,6 +9,10 @@ on: - cron: 0 0 * * * workflow_dispatch: +concurrency: + group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.ref }} + cancel-in-progress: true + jobs: delete-closed-pr-docs: runs-on: ubuntu-22.04 diff --git a/.github/workflows/deploy-docs.yaml b/.github/workflows/deploy-docs.yaml index 3af7a51d3..902ab8f40 100644 --- a/.github/workflows/deploy-docs.yaml +++ b/.github/workflows/deploy-docs.yaml @@ -8,7 +8,6 @@ on: push: branches: - main - - galactic paths: - mkdocs.yaml - "**/*.md" @@ -22,15 +21,19 @@ on: - labeled workflow_dispatch: +concurrency: + group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.ref }} + cancel-in-progress: true + jobs: - prevent-no-label-execution: - uses: autowarefoundation/autoware-github-actions/.github/workflows/prevent-no-label-execution.yaml@v1 + make-sure-label-is-present: + uses: autowarefoundation/autoware-github-actions/.github/workflows/make-sure-label-is-present.yaml@v1 with: label: run:deploy-docs deploy-docs: - needs: prevent-no-label-execution - if: ${{ needs.prevent-no-label-execution.outputs.run == 'true' }} + needs: make-sure-label-is-present + if: ${{ github.event_name != 'pull_request_target' || needs.make-sure-label-is-present.outputs.result == 'true' }} runs-on: ubuntu-22.04 steps: - name: Check out repository diff --git a/.github/workflows/github-release.yaml b/.github/workflows/github-release.yaml index ac4f6f05e..3171dffdb 100644 --- a/.github/workflows/github-release.yaml +++ b/.github/workflows/github-release.yaml @@ -15,6 +15,10 @@ on: type: string required: true +concurrency: + group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.ref }} + cancel-in-progress: true + jobs: github-release: runs-on: ubuntu-22.04 @@ -60,7 +64,7 @@ jobs: run: | gh release ${{ steps.select-verb.outputs.verb }} "${{ steps.set-tag-name.outputs.tag-name }}" \ --draft \ - --title "Release ${{ steps.set-tag-name.outputs.tag-name }}" \ + --title "${{ steps.set-tag-name.outputs.tag-name }}" \ --notes "$NOTES" env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/pre-commit-optional.yaml b/.github/workflows/pre-commit-optional.yaml index 3d0867028..b0ae24a9e 100644 --- a/.github/workflows/pre-commit-optional.yaml +++ b/.github/workflows/pre-commit-optional.yaml @@ -7,6 +7,10 @@ name: pre-commit-optional on: pull_request: +concurrency: + group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.ref }} + cancel-in-progress: true + jobs: pre-commit-optional: runs-on: ubuntu-22.04 diff --git a/.github/workflows/pre-commit.yaml b/.github/workflows/pre-commit.yaml index 15c8e86c4..79f6bcc9c 100644 --- a/.github/workflows/pre-commit.yaml +++ b/.github/workflows/pre-commit.yaml @@ -7,6 +7,10 @@ name: pre-commit on: pull_request: +concurrency: + group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.ref }} + cancel-in-progress: true + jobs: pre-commit: if: ${{ github.event.repository.private }} # Use pre-commit.ci for public repositories diff --git a/.github/workflows/sync-files.yaml b/.github/workflows/sync-files.yaml index 9224c1503..a8a035398 100644 --- a/.github/workflows/sync-files.yaml +++ b/.github/workflows/sync-files.yaml @@ -9,15 +9,12 @@ on: - cron: 0 0 * * * workflow_dispatch: -jobs: - check-secret: - uses: autowarefoundation/autoware-github-actions/.github/workflows/check-secret.yaml@v1 - secrets: - secret: ${{ secrets.APP_ID }} +concurrency: + group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.ref }} + cancel-in-progress: true +jobs: sync-files: - needs: check-secret - if: ${{ needs.check-secret.outputs.set == 'true' }} runs-on: ubuntu-22.04 steps: - name: Generate token diff --git a/.pre-commit-config-optional.yaml b/.pre-commit-config-optional.yaml index 8e753b95a..75e39d4eb 100644 --- a/.pre-commit-config-optional.yaml +++ b/.pre-commit-config-optional.yaml @@ -5,13 +5,12 @@ # https://pre-commit.ci/#configuration ci: autofix_commit_msg: "style(pre-commit-optional): autofix" - # we already have our own daily update mechanism, we set this to quarterly autoupdate_schedule: quarterly autoupdate_commit_msg: "ci(pre-commit-optional): quarterly autoupdate" repos: - repo: https://github.com/tcort/markdown-link-check - rev: v3.13.7 + rev: v3.14.2 hooks: - id: markdown-link-check args: [--quiet, --config=.markdown-link-check.json] diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index a5c504fc9..ab4342936 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -5,7 +5,6 @@ # https://pre-commit.ci/#configuration ci: autofix_commit_msg: "style(pre-commit): autofix" - # we already have our own daily update mechanism, we set this to quarterly autoupdate_schedule: quarterly autoupdate_commit_msg: "ci(pre-commit): quarterly autoupdate" @@ -26,7 +25,7 @@ repos: args: [--markdown-linebreak-ext=md] - repo: https://github.com/igorshubovych/markdownlint-cli - rev: v0.45.0 + rev: v0.47.0 hooks: - id: markdownlint args: [-c, .markdownlint.yaml, --fix] @@ -35,9 +34,10 @@ repos: rev: v4.0.0-alpha.8 hooks: - id: prettier + args: [--no-error-on-unmatched-pattern] - repo: https://github.com/adrienverge/yamllint - rev: v1.37.1 + rev: v1.38.0 hooks: - id: yamllint @@ -47,7 +47,7 @@ repos: - id: check-package-depends - repo: https://github.com/tier4/pre-commit-hooks-ros - rev: v0.10.0 + rev: v0.10.2 hooks: - id: flake8-ros - id: prettier-xacro @@ -68,18 +68,19 @@ repos: args: [-w, -s, -i=4] - repo: https://github.com/pycqa/isort - rev: 6.1.0 + rev: 7.0.0 hooks: - id: isort + args: [--profile=black, --line-length=100] - repo: https://github.com/psf/black-pre-commit-mirror - rev: 25.9.0 + rev: 26.1.0 hooks: - id: black args: [--line-length=100] - repo: https://github.com/pre-commit/mirrors-clang-format - rev: v21.1.2 + rev: v21.1.8 hooks: - id: clang-format types_or: [c++, c, cuda] @@ -92,7 +93,7 @@ repos: exclude: .cu - repo: https://github.com/python-jsonschema/check-jsonschema - rev: 0.34.0 + rev: 0.36.2 hooks: - id: check-metaschema files: ^.+/schema/.*schema\.json$ diff --git a/bag2lanelet/scripts/bag2way.py b/bag2lanelet/scripts/bag2way.py index 1b8e8e769..f7d223bd7 100755 --- a/bag2lanelet/scripts/bag2way.py +++ b/bag2lanelet/scripts/bag2way.py @@ -44,7 +44,7 @@ def bag2pose(input_path, interval=[0.1, 10000.0]): prev_trans = None # read topic and fix timestamp if lidar, and write while reader.has_next(): - (topic, data, stamp) = reader.read_next() + topic, data, stamp = reader.read_next() if topic == "/tf": msg_type = get_message(type_map[topic]) msg = deserialize_message(data, msg_type) @@ -76,7 +76,7 @@ def bag2point_stamped(input_path, too_close, too_far): prev_trans = None # read topic and fix timestamp if lidar, and write while reader.has_next(): - (topic, data, stamp) = reader.read_next() + topic, data, stamp = reader.read_next() if topic == "/tf": msg_type = get_message(type_map[topic]) msg = deserialize_message(data, msg_type) diff --git a/localization/autoware_localization_evaluation_scripts/scripts/plot_diagnostics.py b/localization/autoware_localization_evaluation_scripts/scripts/plot_diagnostics.py index 61c29f11c..cdfafd898 100755 --- a/localization/autoware_localization_evaluation_scripts/scripts/plot_diagnostics.py +++ b/localization/autoware_localization_evaluation_scripts/scripts/plot_diagnostics.py @@ -56,7 +56,7 @@ def parse_diagnostics_msgs(rosbag_dir: str, target_list: list) -> dict: data_dict: dict = {key: [] for key in target_list} while reader.has_next(): - (topic, data, timestamp_rosbag) = reader.read_next() + topic, data, timestamp_rosbag = reader.read_next() msg_type = get_message(type_map[topic]) msg = deserialize_message(data, msg_type) timestamp_header = parse_stamp(msg.header.stamp) diff --git a/localization/autoware_localization_evaluation_scripts/scripts/utils/parse_functions.py b/localization/autoware_localization_evaluation_scripts/scripts/utils/parse_functions.py index 0e7e96c7c..ff69fefba 100644 --- a/localization/autoware_localization_evaluation_scripts/scripts/utils/parse_functions.py +++ b/localization/autoware_localization_evaluation_scripts/scripts/utils/parse_functions.py @@ -37,7 +37,7 @@ def parse_rosbag(rosbag_dir: str, target_topic_list: list[str], limit: int = 0) topic_name_to_data = defaultdict(list) parse_num = 0 while reader.has_next(): - (topic, data, t) = reader.read_next() + topic, data, t = reader.read_next() msg_type = get_message(type_map[topic]) msg = deserialize_message(data, msg_type) if topic in target_topic_list: diff --git a/map/autoware_tp_manager/scripts/tp_utility.py b/map/autoware_tp_manager/scripts/tp_utility.py index 30e749e80..be1538794 100644 --- a/map/autoware_tp_manager/scripts/tp_utility.py +++ b/map/autoware_tp_manager/scripts/tp_utility.py @@ -132,7 +132,7 @@ def parse_rosbag(bag_path: str, pose_topic: str, tp_topic: str, scan_topic: str) while reader.has_next(): progress_bar.update(1) - (topic, data, stamp) = reader.read_next() + topic, data, stamp = reader.read_next() if topic == pose_topic: pose_msg = deserialize_message(data, PoseWithCovarianceStamped) diff --git a/mkdocs.yaml b/mkdocs.yaml index 4f6ba283c..352b3b854 100644 --- a/mkdocs.yaml +++ b/mkdocs.yaml @@ -50,7 +50,7 @@ extra_css: extra_javascript: - docs/assets/js/mathjax.js - - https://polyfill.io/v3/polyfill.min.js?features=es6 + - https://cdnjs.cloudflare.com/polyfill/v3/polyfill.min.js?features=es6 - https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js plugins: @@ -97,6 +97,8 @@ markdown_extensions: - name: mermaid class: mermaid format: !!python/name:pymdownx.superfences.fence_code_format + - pymdownx.tasklist: + custom_checkbox: true - toc: permalink: "#" toc_depth: 3 diff --git a/planning/autoware_planning_data_analyzer/scripts/add_prefix_to_bag.py b/planning/autoware_planning_data_analyzer/scripts/add_prefix_to_bag.py index 4f1102187..7b32b4849 100755 --- a/planning/autoware_planning_data_analyzer/scripts/add_prefix_to_bag.py +++ b/planning/autoware_planning_data_analyzer/scripts/add_prefix_to_bag.py @@ -16,6 +16,7 @@ # cspell:disable """Add prefixed trajectory topic to MCAP bag (in-place modification).""" + import argparse from pathlib import Path import shutil diff --git a/planning/autoware_planning_data_analyzer/scripts/evaluate_all_live_trajectories.py b/planning/autoware_planning_data_analyzer/scripts/evaluate_all_live_trajectories.py index 6d968077b..26ea720c4 100755 --- a/planning/autoware_planning_data_analyzer/scripts/evaluate_all_live_trajectories.py +++ b/planning/autoware_planning_data_analyzer/scripts/evaluate_all_live_trajectories.py @@ -15,6 +15,7 @@ # limitations under the License. # cspell:disable """Evaluate all LIVE trajectory topics in a bag simultaneously.""" + import argparse import json from pathlib import Path diff --git a/planning/autoware_planning_data_analyzer/scripts/evaluate_or_segments.py b/planning/autoware_planning_data_analyzer/scripts/evaluate_or_segments.py index c49668822..5231fa9a1 100755 --- a/planning/autoware_planning_data_analyzer/scripts/evaluate_or_segments.py +++ b/planning/autoware_planning_data_analyzer/scripts/evaluate_or_segments.py @@ -15,6 +15,7 @@ # limitations under the License. # cspell:disable """Auto-discover and evaluate all OR segment bags in a directory.""" + import argparse from pathlib import Path import subprocess diff --git a/planning/autoware_planning_data_analyzer/scripts/generate_or_visualization.py b/planning/autoware_planning_data_analyzer/scripts/generate_or_visualization.py index 2bf436eb0..2ddfc0674 100755 --- a/planning/autoware_planning_data_analyzer/scripts/generate_or_visualization.py +++ b/planning/autoware_planning_data_analyzer/scripts/generate_or_visualization.py @@ -16,6 +16,7 @@ # cspell:disable """Generate debug visualization for OR scene trajectory comparison.""" + import json import os import sys diff --git a/planning/autoware_planning_data_analyzer/scripts/merge_segment_models.py b/planning/autoware_planning_data_analyzer/scripts/merge_segment_models.py index 3dfbfe060..9f19da08f 100755 --- a/planning/autoware_planning_data_analyzer/scripts/merge_segment_models.py +++ b/planning/autoware_planning_data_analyzer/scripts/merge_segment_models.py @@ -15,6 +15,7 @@ # limitations under the License. # cspell:disable """Merge multiple model result bags for a single OR segment.""" + import argparse from pathlib import Path import shutil diff --git a/planning/autoware_planning_data_analyzer/scripts/rename_bag_topic.py b/planning/autoware_planning_data_analyzer/scripts/rename_bag_topic.py index 8f863ac43..31cd0b908 100755 --- a/planning/autoware_planning_data_analyzer/scripts/rename_bag_topic.py +++ b/planning/autoware_planning_data_analyzer/scripts/rename_bag_topic.py @@ -16,6 +16,7 @@ # cspell:disable """Rename a topic in a rosbag file.""" + import argparse from pathlib import Path diff --git a/simulator/simulator_compatibility_test/simulator_compatibility_test/clients/moraisim/morai_client_event_cmd.py b/simulator/simulator_compatibility_test/simulator_compatibility_test/clients/moraisim/morai_client_event_cmd.py index 3fdd0b450..a75c4d65e 100644 --- a/simulator/simulator_compatibility_test/simulator_compatibility_test/clients/moraisim/morai_client_event_cmd.py +++ b/simulator/simulator_compatibility_test/simulator_compatibility_test/clients/moraisim/morai_client_event_cmd.py @@ -31,10 +31,8 @@ def main(args=None): rclpy.spin_once(event_cmd_client) if event_cmd_client.future.done(): result_msg = event_cmd_client.future.result() - event_cmd_client.get_logger().info( - f"Change Control Mode : \ - {result_msg.response.gear}" - ) + event_cmd_client.get_logger().info(f"Change Control Mode : \ + {result_msg.response.gear}") break event_cmd_client.destroy_node()