all:
  children:
    tempest:
      hosts:
        controller: null
    zuul_unreachable:
      hosts: {}
  hosts:
    controller:
      ansible_connection: ssh
      ansible_host: 162.253.55.209
      ansible_port: 22
      ansible_python_interpreter: auto
      ansible_user: zuul
      configure_swap_size: 8192
      devstack_local_conf:
        post-config:
          $NEUTRON_CONF:
            DEFAULT:
              global_physnet_mtu: '{{ external_bridge_mtu }}'
          /etc/magnum/magnum.conf:
            cluster_template:
              kubernetes_allowed_network_drivers: calico,cilium
              kubernetes_default_network_driver: calico
            nova_client:
              api_version: 2.15
          /etc/manila/manila.conf:
            generic:
              connect_share_server_to_tenant_network: true
              driver_handles_share_servers: true
      devstack_localrc:
        ADMIN_PASSWORD: secretadmin
        DATABASE_PASSWORD: secretdatabase
        DEBUG_LIBVIRT_COREDUMPS: true
        DISABLE_AMP_IMAGE_BUILD: true
        ENABLE_SYSCTL_MEM_TUNING: true
        ENABLE_SYSCTL_NET_TUNING: true
        ENABLE_ZSWAP: true
        ERROR_ON_CLONE: true
        FIXED_RANGE: 10.1.0.0/20
        FLOATING_RANGE: 172.24.5.0/24
        GIT_BASE: https://github.com
        HOST_IP: '{{ hostvars[''controller''][''nodepool''][''private_ipv4''] }}'
        IPV4_ADDRS_SAFE_TO_USE: 10.1.0.0/20
        LIBVIRT_TYPE: '{{ devstack_libvirt_type | default("qemu") }}'
        LOGFILE: /opt/stack/logs/devstacklog.txt
        LOG_COLOR: false
        MAGNUM_GUEST_IMAGE_URL: '{{ image_url }}'
        MANILA_DEFAULT_SHARE_TYPE_EXTRA_SPECS: snapshot_support=True create_share_from_snapshot_support=True
        MANILA_ENABLED_BACKENDS: generic
        MANILA_USE_SERVICE_INSTANCE_PASSWORD: true
        NETWORK_GATEWAY: 10.1.0.1
        NOVA_LIBVIRT_TB_CACHE_SIZE: 128
        NOVA_VNC_ENABLED: true
        OCTAVIA_NODE: api
        OVN_DBS_LOG_LEVEL: dbg
        PUBLIC_BRIDGE_MTU: '{{ external_bridge_mtu }}'
        PUBLIC_NETWORK_GATEWAY: 172.24.5.1
        RABBIT_PASSWORD: secretrabbit
        SERVICE_HOST: '{{ hostvars[''controller''][''nodepool''][''private_ipv4'']
          }}'
        SERVICE_PASSWORD: secretservice
        SWIFT_HASH: 1234123412341234
        SWIFT_REPLICAS: 1
        SWIFT_START_ALL_SERVICES: false
        VERBOSE: true
        VERBOSE_NO_TIMESTAMP: true
      devstack_plugins:
        barbican: https://github.com/openstack/barbican
        magnum: https://review.opendev.org/openstack/magnum
        magnum-cluster-api: https://github.com/vexxhost/magnum-cluster-api
        manila: https://github.com/openstack/manila
        octavia: https://github.com/openstack/octavia
        ovn-octavia-provider: https://github.com/openstack/ovn-octavia-provider
      devstack_services:
        base: false
        c-api: true
        c-bak: true
        c-sch: true
        c-vol: true
        dstat: false
        etcd3: true
        file_tracker: true
        g-api: true
        horizon: false
        key: true
        memory_tracker: true
        mysql: true
        n-api: true
        n-api-meta: true
        n-cond: true
        n-cpu: true
        n-novnc: true
        n-sch: true
        o-api: true
        o-da: true
        o-hk: true
        octavia: true
        openstack-cli-server: true
        ovn-controller: true
        ovn-northd: true
        ovs-vswitchd: true
        ovsdb-server: true
        placement-api: true
        q-ovn-agent: true
        q-svc: true
        rabbit: true
        s-account: false
        s-container: false
        s-object: false
        s-proxy: false
        tempest: false
        tls-proxy: true
      extensions_to_txt:
        auto: true
        conf: true
        localrc: true
        log: true
        stackenv: true
      image_prefix: ubuntu-24.04
      image_release: 2026.05-7
      image_url: https://github.com/vexxhost/capo-image-elements/releases/download/{{
        image_release }}/{{ image_prefix }}-{{ kube_tag }}.qcow2
      kube_tag: v1.35.5
      network_driver: calico
      nodepool:
        az: yul2
        cloud: public
        external_id: d2afa818-d77f-4b05-a061-8315f1f32451
        host_id: 3cc3064f3f299d3d37bf8eb0728708985d63c3ec9e6e6eb729dd744b
        interface_ip: 162.253.55.209
        label: ubuntu-noble-16
        node_properties: {}
        private_ipv4: 162.253.55.209
        private_ipv6: null
        provider: yul1
        public_ipv4: 162.253.55.209
        public_ipv6: 2604:e100:1:0:f816:3eff:fe9b:4446
        region: ca-ymq-1
        slot: null
      zuul_copy_output:
        /etc/ceph: logs
        /etc/glusterfs/glusterd.vol: logs
        /etc/libvirt: logs
        /etc/lvm: logs
        /etc/resolv.conf: logs
        /etc/sudoers: logs
        /etc/sudoers.d: logs
        /var/log/ceph: logs
        /var/log/glusterfs: logs
        /var/log/libvirt: logs
        /var/log/mysql: logs
        /var/log/openvswitch: logs
        /var/log/postgresql: logs
        /var/log/rabbitmq: logs
        /var/log/unbound.log: logs
        '{{ devstack_conf_dir }}/.localrc.auto': logs
        '{{ devstack_conf_dir }}/.stackenv': logs
        '{{ devstack_conf_dir }}/local.conf': logs
        '{{ devstack_conf_dir }}/localrc': logs
        '{{ devstack_full_log}}': logs
        '{{ devstack_log_dir }}/atop': logs
        '{{ devstack_log_dir }}/devstacklog.txt': logs
        '{{ devstack_log_dir }}/devstacklog.txt.summary': logs
        '{{ devstack_log_dir }}/dstat-csv.log': logs
        '{{ devstack_log_dir }}/qemu.coredump': logs
        '{{ devstack_log_dir }}/tcpdump.pcap': logs
        '{{ devstack_log_dir }}/worlddump-latest.txt': logs
        '{{ stage_dir }}/apache': logs
        '{{ stage_dir }}/apache_config': logs
        '{{ stage_dir }}/audit.log': logs
        '{{ stage_dir }}/core': logs
        '{{ stage_dir }}/deprecations.log': logs
        '{{ stage_dir }}/df.txt': logs
        '{{ stage_dir }}/dpkg-l.txt': logs
        '{{ stage_dir }}/etc': logs
        '{{ stage_dir }}/iptables.txt': logs
        '{{ stage_dir }}/listen53.txt': logs
        '{{ stage_dir }}/mount.txt': logs
        '{{ stage_dir }}/performance.json': logs
        '{{ stage_dir }}/pip2-freeze.txt': logs
        '{{ stage_dir }}/pip3-freeze.txt': logs
        '{{ stage_dir }}/rpm-qa.txt': logs
        '{{ stage_dir }}/services.txt': logs
        '{{ stage_dir }}/verify_tempest_conf.log': logs
      zuul_node:
        az: yul2
        cloud: public
        external_id: d2afa818-d77f-4b05-a061-8315f1f32451
        host_id: 3cc3064f3f299d3d37bf8eb0728708985d63c3ec9e6e6eb729dd744b
        interface_ip: 162.253.55.209
        label: ubuntu-noble-16
        node_properties: {}
        private_ipv4: 162.253.55.209
        private_ipv6: null
        provider: yul1
        public_ipv4: 162.253.55.209
        public_ipv6: 2604:e100:1:0:f816:3eff:fe9b:4446
        region: ca-ymq-1
        slot: null
        uuid: null
  vars:
    configure_swap_size: 8192
    devstack_local_conf:
      post-config:
        $NEUTRON_CONF:
          DEFAULT:
            global_physnet_mtu: '{{ external_bridge_mtu }}'
        /etc/magnum/magnum.conf:
          cluster_template:
            kubernetes_allowed_network_drivers: calico,cilium
            kubernetes_default_network_driver: calico
          nova_client:
            api_version: 2.15
        /etc/manila/manila.conf:
          generic:
            connect_share_server_to_tenant_network: true
            driver_handles_share_servers: true
    devstack_localrc:
      ADMIN_PASSWORD: secretadmin
      DATABASE_PASSWORD: secretdatabase
      DEBUG_LIBVIRT_COREDUMPS: true
      DISABLE_AMP_IMAGE_BUILD: true
      ENABLE_SYSCTL_MEM_TUNING: true
      ENABLE_SYSCTL_NET_TUNING: true
      ENABLE_ZSWAP: true
      ERROR_ON_CLONE: true
      FIXED_RANGE: 10.1.0.0/20
      FLOATING_RANGE: 172.24.5.0/24
      GIT_BASE: https://github.com
      HOST_IP: '{{ hostvars[''controller''][''nodepool''][''private_ipv4''] }}'
      IPV4_ADDRS_SAFE_TO_USE: 10.1.0.0/20
      LIBVIRT_TYPE: '{{ devstack_libvirt_type | default("qemu") }}'
      LOGFILE: /opt/stack/logs/devstacklog.txt
      LOG_COLOR: false
      MAGNUM_GUEST_IMAGE_URL: '{{ image_url }}'
      MANILA_DEFAULT_SHARE_TYPE_EXTRA_SPECS: snapshot_support=True create_share_from_snapshot_support=True
      MANILA_ENABLED_BACKENDS: generic
      MANILA_USE_SERVICE_INSTANCE_PASSWORD: true
      NETWORK_GATEWAY: 10.1.0.1
      NOVA_LIBVIRT_TB_CACHE_SIZE: 128
      NOVA_VNC_ENABLED: true
      OCTAVIA_NODE: api
      OVN_DBS_LOG_LEVEL: dbg
      PUBLIC_BRIDGE_MTU: '{{ external_bridge_mtu }}'
      PUBLIC_NETWORK_GATEWAY: 172.24.5.1
      RABBIT_PASSWORD: secretrabbit
      SERVICE_HOST: '{{ hostvars[''controller''][''nodepool''][''private_ipv4''] }}'
      SERVICE_PASSWORD: secretservice
      SWIFT_HASH: 1234123412341234
      SWIFT_REPLICAS: 1
      SWIFT_START_ALL_SERVICES: false
      VERBOSE: true
      VERBOSE_NO_TIMESTAMP: true
    devstack_plugins:
      barbican: https://github.com/openstack/barbican
      magnum: https://review.opendev.org/openstack/magnum
      magnum-cluster-api: https://github.com/vexxhost/magnum-cluster-api
      manila: https://github.com/openstack/manila
      octavia: https://github.com/openstack/octavia
      ovn-octavia-provider: https://github.com/openstack/ovn-octavia-provider
    devstack_services:
      base: false
      c-api: true
      c-bak: true
      c-sch: true
      c-vol: true
      dstat: false
      etcd3: true
      file_tracker: true
      g-api: true
      horizon: false
      key: true
      memory_tracker: true
      mysql: true
      n-api: true
      n-api-meta: true
      n-cond: true
      n-cpu: true
      n-novnc: true
      n-sch: true
      o-api: true
      o-da: true
      o-hk: true
      octavia: true
      openstack-cli-server: true
      ovn-controller: true
      ovn-northd: true
      ovs-vswitchd: true
      ovsdb-server: true
      placement-api: true
      q-ovn-agent: true
      q-svc: true
      rabbit: true
      s-account: false
      s-container: false
      s-object: false
      s-proxy: false
      tempest: false
      tls-proxy: true
    extensions_to_txt:
      auto: true
      conf: true
      localrc: true
      log: true
      stackenv: true
    image_prefix: ubuntu-24.04
    image_release: 2026.05-7
    image_url: https://github.com/vexxhost/capo-image-elements/releases/download/{{
      image_release }}/{{ image_prefix }}-{{ kube_tag }}.qcow2
    kube_tag: v1.35.5
    network_driver: calico
    zuul:
      _inheritance_path:
      - '<Job base explicit: None implied: {MatchAny:{ImpliedBranchMatcher:main}}
        source: vexxhost/zuul-config/zuul.d/jobs.yaml@main#1>'
      - '<Job openstack-multinode-fips explicit: None implied: {MatchAny:{ImpliedBranchMatcher:main}}
        source: vexxhost/zuul-config/zuul.d/jobs.yaml@main#17>'
      - '<Job devstack-base explicit: None implied: {MatchAny:{ImpliedBranchMatcher:master}}
        source: openstack/devstack/.zuul.yaml@master#378>'
      - '<Job devstack-minimal explicit: None implied: {MatchAny:{ImpliedBranchMatcher:master}}
        source: openstack/devstack/.zuul.yaml@master#512>'
      - '<Job devstack explicit: None implied: {MatchAny:{ImpliedBranchMatcher:master}}
        source: openstack/devstack/.zuul.yaml@master#555>'
      - '<Job magnum-cluster-api-devstack explicit: None implied: {MatchAny:{ImpliedBranchMatcher:main}}
        source: vexxhost/magnum-cluster-api/zuul.d/jobs.yaml@main#1>'
      - '<Job magnum-cluster-api-hydrophone explicit: None implied: {MatchAny:{ImpliedBranchMatcher:main}}
        source: vexxhost/magnum-cluster-api/zuul.d/hydrophone-jobs.yaml@main#23>'
      - '<Job magnum-cluster-api-hydrophone-v1.35.5 explicit: None implied: {MatchAny:{ImpliedBranchMatcher:main}}
        source: vexxhost/magnum-cluster-api/zuul.d/hydrophone-jobs.yaml@main#67>'
      - '<Job magnum-cluster-api-hydrophone-v1.35.5-calico explicit: None implied:
        {MatchAny:{ImpliedBranchMatcher:main}} source: vexxhost/magnum-cluster-api/zuul.d/hydrophone-jobs.yaml@main#73>'
      - '<Job magnum-cluster-api-hydrophone-v1.35.5-calico explicit: None implied:
        None source: vexxhost/magnum-cluster-api/zuul.d/hydrophone-jobs.yaml@main#1>'
      ansible_version: '9'
      attempts: 1
      branch: main
      build: c358842f5e4e49b9ac41aead3b8367a2
      build_refs:
      - branch: main
        change: '1114'
        change_message: "chore(deps): update rust crate tokio to v1.54.0\n\nThis PR
          contains the following updates:\n\n| Package | Type | Update | Change |\n|---|---|---|---|\n|
          [tokio](https://tokio.rs) ([source](https://redirect.github.com/tokio-rs/tokio))
          | dependencies | minor | `1.52.3` \u2192 `1.54.0` |\n\n---\n\n### Release
          Notes\n\n<details>\n<summary>tokio-rs/tokio (tokio)</summary>\n\n### [`v1.54.0`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.54.0):
          Tokio v1.54.0\n\n[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.53.3...tokio-1.54.0)\n\n#####
          1.54.0 (October 19th, 2026)\n\nThe 1.54.0 release includes all changes up
          to 1.53.3.\n\nThe MSRV is increased to 1.85. ([#&#8203;8514])\n\n##### Added\n\n-
          fs: add `File::set_times`, `File::set_modified`, and `fs::FileTimes` ([#&#8203;8504])\n-
          net: implement `Default` for `named_pipe::{ClientOptions, ServerOptions}`
          ([#&#8203;8378])\n- runtime: add `Builder::max_io_events_per_busy_tick`
          ([#&#8203;8410])\n- runtime: stabilize `tokio::runtime::worker_index()`
          ([#&#8203;8431])\n- sync: add `SemaphorePermit::semaphore()` ([#&#8203;8482])\n-
          sync: add `blocking_acquire` methods to `Semaphore` ([#&#8203;8269])\n-
          sync: add `watch::Receiver::is_closed` ([#&#8203;8481])\n- wasm: support
          JSPI for Emscripten target ([#&#8203;8285], [#&#8203;8627])\n- wasm: support
          the `wasm32-unknown-emscripten` target ([#&#8203;8281], [#&#8203;8422],
          [#&#8203;8528], [#&#8203;8628])\n\n##### Changed\n\n- fs: reject zero in
          `File::set_max_buf_size` ([#&#8203;8449])\n- io: make `copy_buf` cooperative
          ([#&#8203;8459])\n- io: panic when `BufReader` or `BufStream` is created
          with zero capacity ([#&#8203;8494])\n- io: panic when in-memory pipe is
          created with zero capacity ([#&#8203;8397])\n- io: reject zero buffer size
          in `copy_bidirectional_with_sizes` ([#&#8203;8454])\n- io: support vectored
          writes in `Sink` ([#&#8203;8663])\n- net: start `UnixStream::pair` and `UnixDatagram::pair`
          sockets as writable ([#&#8203;8444])\n- net: start accepted sockets as readable
          and writable ([#&#8203;8435])\n- net: support `UCred` on Fuchsia ([#&#8203;8257])\n-
          process: use `mio::unix::pipe` for Unix child stdio ([#&#8203;8603])\n-
          runtime: cache-pad the shared injection queue and idle state ([#&#8203;8622])\n-
          runtime: decide auto-boxing of spawned futures at monomorphization time
          ([#&#8203;8414])\n- runtime: make `enable_io` available whenever `rt` is
          enabled ([#&#8203;8387])\n- runtime: move `block_in_place` setup into a
          non-generic function ([#&#8203;8315])\n- runtime: move the multi-thread
          inject queue to its own mutex ([#&#8203;8382])\n- runtime: panic when `max_io_events_per_tick`
          is zero ([#&#8203;8476])\n- runtime: suggest `.await` in nested `block_on`
          panic message ([#&#8203;8501])\n- sync: avoid atomic reader count in broadcast
          slots ([#&#8203;8357])\n- sync: use acquire/release orderings in `Notify`
          ([#&#8203;8325])\n- time: remove the runtime handle from timers ([#&#8203;8458])\n\n#####
          Fixed\n\n- fs: restore `File` internal state when op fails ([#&#8203;8291])\n-
          io: complete zero-length memory stream operations immediately ([#&#8203;8323])\n-
          io: flush the writer when the reader stalls in `copy_buf` ([#&#8203;8424])\n-
          io: keep the shutdown bit when clearing readiness ([#&#8203;8435])\n- io:
          preserve the full `ScheduledIo` tick in readiness events ([#&#8203;8331])\n-
          io: read lines as bytes so a partial line survives an I/O error ([#&#8203;8400])\n-
          io: retry on `ErrorKind::Interrupted` in more I/O operations ([#&#8203;8417],
          [#&#8203;8432], [#&#8203;8448], [#&#8203;8453], [#&#8203;8455], [#&#8203;8460])\n-
          io: use `spawn_mandatory_blocking` for stdout and stderr ([#&#8203;8506])\n-
          io: wait for pending operations before `BufReader` seeks ([#&#8203;8599])\n-
          net: close `CreateFileW` handle on `SetNamedPipeHandleState` failure ([#&#8203;8418])\n-
          net: fix peer credentials on NetBSD ([#&#8203;8589])\n- net: saturate `TcpSocket`
          and `UnixSocket` listen backlog ([#&#8203;8511])\n- net: treat `ENOTCONN`
          as success in `UnixStream::shutdown` ([#&#8203;8526])\n- runtime: allow
          building with `--all-features` without `tokio_unstable` ([#&#8203;8401])\n-
          runtime: avoid overflow in `shutdown_timeout()` ([#&#8203;8497])\n- runtime:
          fix `spawn_blocking` hang when only scheduler workers exist ([#&#8203;8408])\n-
          runtime: fix misleading signal driver panic message ([#&#8203;8419])\n-
          sync: preserve FIFO lock order when coop budget is exhausted ([#&#8203;8371])\n-
          sync: use `usize` for permit count in `SemaphorePermit` ([#&#8203;8405])\n-
          time: avoid interval deadline overflow ([#&#8203;8385])\n- time: handle
          wrapped top-level timer-wheel slots ([#&#8203;8334])\n\n##### Unstable\n\n-
          fs: fall back when `io_uring` has no IO driver ([#&#8203;8165])\n- metrics:
          cap log histogram precision ([#&#8203;8496])\n- runtime: add an opt-in sharded
          `spawn_blocking` queue ([#&#8203;8337])\n- runtime: expose schedule latency
          in task hooks ([#&#8203;8282])\n- taskdump: fix idle bookkeeping when a
          task dump wakes parked workers ([#&#8203;8372])\n- taskdump: skip non-idle
          tasks during taskdumps ([#&#8203;8568])\n\n##### Documented\n\n- docs: fix
          stray braces and broken links in rustdoc ([#&#8203;8605])\n- fs: document
          cancellation behavior of `tokio::fs` ([#&#8203;8265])\n- net: add Safety
          docs for named pipe `from_raw_handle` ([#&#8203;8378])\n- net: document
          that `TcpStream::connect` returns only the last error ([#&#8203;8421])\n-
          runtime: add error documentation for `runtime::Builder` ([#&#8203;8297])\n-
          runtime: link `available_parallelism` in worker count docs ([#&#8203;8625])\n-
          sync: clarify panic behavior of `broadcast::channel()` ([#&#8203;8420])\n-
          sync: fix typo in `Semaphore` documentation ([#&#8203;8521])\n\n[#&#8203;8165]:
          https://redirect.github.com/tokio-rs/tokio/pull/8165\n\n[#&#8203;8257]:
          https://redirect.github.com/tokio-rs/tokio/pull/8257\n\n[#&#8203;8265]:
          https://redirect.github.com/tokio-rs/tokio/pull/8265\n\n[#&#8203;8269]:
          https://redirect.github.com/tokio-rs/tokio/pull/8269\n\n[#&#8203;8281]:
          https://redirect.github.com/tokio-rs/tokio/pull/8281\n\n[#&#8203;8282]:
          https://redirect.github.com/tokio-rs/tokio/pull/8282\n\n[#&#8203;8285]:
          https://redirect.github.com/tokio-rs/tokio/pull/8285\n\n[#&#8203;8291]:
          https://redirect.github.com/tokio-rs/tokio/pull/8291\n\n[#&#8203;8297]:
          https://redirect.github.com/tokio-rs/tokio/pull/8297\n\n[#&#8203;8315]:
          https://redirect.github.com/tokio-rs/tokio/pull/8315\n\n[#&#8203;8323]:
          https://redirect.github.com/tokio-rs/tokio/pull/8323\n\n[#&#8203;8325]:
          https://redirect.github.com/tokio-rs/tokio/pull/8325\n\n[#&#8203;8331]:
          https://redirect.github.com/tokio-rs/tokio/pull/8331\n\n[#&#8203;8334]:
          https://redirect.github.com/tokio-rs/tokio/pull/8334\n\n[#&#8203;8337]:
          https://redirect.github.com/tokio-rs/tokio/pull/8337\n\n[#&#8203;8357]:
          https://redirect.github.com/tokio-rs/tokio/pull/8357\n\n[#&#8203;8371]:
          https://redirect.github.com/tokio-rs/tokio/pull/8371\n\n[#&#8203;8372]:
          https://redirect.github.com/tokio-rs/tokio/pull/8372\n\n[#&#8203;8378]:
          https://redirect.github.com/tokio-rs/tokio/pull/8378\n\n[#&#8203;8382]:
          https://redirect.github.com/tokio-rs/tokio/pull/8382\n\n[#&#8203;8385]:
          https://redirect.github.com/tokio-rs/tokio/pull/8385\n\n[#&#8203;8387]:
          https://redirect.github.com/tokio-rs/tokio/pull/8387\n\n[#&#8203;8397]:
          https://redirect.github.com/tokio-rs/tokio/pull/8397\n\n[#&#8203;8400]:
          https://redirect.github.com/tokio-rs/tokio/pull/8400\n\n[#&#8203;8401]:
          https://redirect.github.com/tokio-rs/tokio/pull/8401\n\n[#&#8203;8405]:
          https://redirect.github.com/tokio-rs/tokio/pull/8405\n\n[#&#8203;8408]:
          https://redirect.github.com/tokio-rs/tokio/pull/8408\n\n[#&#8203;8410]:
          https://redirect.github.com/tokio-rs/tokio/pull/8410\n\n[#&#8203;8414]:
          https://redirect.github.com/tokio-rs/tokio/pull/8414\n\n[#&#8203;8417]:
          https://redirect.github.com/tokio-rs/tokio/pull/8417\n\n[#&#8203;8418]:
          https://redirect.github.com/tokio-rs/tokio/pull/8418\n\n[#&#8203;8419]:
          https://redirect.github.com/tokio-rs/tokio/pull/8419\n\n[#&#8203;8420]:
          https://redirect.github.com/tokio-rs/tokio/pull/8420\n\n[#&#8203;8421]:
          https://redirect.github.com/tokio-rs/tokio/pull/8421\n\n[#&#8203;8422]:
          https://redirect.github.com/tokio-rs/tokio/pull/8422\n\n[#&#8203;8424]:
          https://redirect.github.com/tokio-rs/tokio/pull/8424\n\n[#&#8203;8431]:
          https://redirect.github.com/tokio-rs/tokio/pull/8431\n\n[#&#8203;8432]:
          https://redirect.github.com/tokio-rs/tokio/pull/8432\n\n[#&#8203;8435]:
          https://redirect.github.com/tokio-rs/tokio/pull/8435\n\n[#&#8203;8444]:
          https://redirect.github.com/tokio-rs/tokio/pull/8444\n\n[#&#8203;8448]:
          https://redirect.github.com/tokio-rs/tokio/pull/8448\n\n[#&#8203;8449]:
          https://redirect.github.com/tokio-rs/tokio/pull/8449\n\n[#&#8203;8453]:
          https://redirect.github.com/tokio-rs/tokio/pull/8453\n\n[#&#8203;8454]:
          https://redirect.github.com/tokio-rs/tokio/pull/8454\n\n[#&#8203;8455]:
          https://redirect.github.com/tokio-rs/tokio/pull/8455\n\n[#&#8203;8458]:
          https://redirect.github.com/tokio-rs/tokio/pull/8458\n\n[#&#8203;8459]:
          https://redirect.github.com/tokio-rs/tokio/pull/8459\n\n[#&#8203;8460]:
          https://redirect.github.com/tokio-rs/tokio/pull/8460\n\n[#&#8203;8476]:
          https://redirect.github.com/tokio-rs/tokio/pull/8476\n\n[#&#8203;8481]:
          https://redirect.github.com/tokio-rs/tokio/pull/8481\n\n[#&#8203;8482]:
          https://redirect.github.com/tokio-rs/tokio/pull/8482\n\n[#&#8203;8494]:
          https://redirect.github.com/tokio-rs/tokio/pull/8494\n\n[#&#8203;8496]:
          https://redirect.github.com/tokio-rs/tokio/pull/8496\n\n[#&#8203;8497]:
          https://redirect.github.com/tokio-rs/tokio/pull/8497\n\n[#&#8203;8501]:
          https://redirect.github.com/tokio-rs/tokio/pull/8501\n\n[#&#8203;8504]:
          https://redirect.github.com/tokio-rs/tokio/pull/8504\n\n[#&#8203;8506]:
          https://redirect.github.com/tokio-rs/tokio/pull/8506\n\n[#&#8203;8511]:
          https://redirect.github.com/tokio-rs/tokio/pull/8511\n\n[#&#8203;8514]:
          https://redirect.github.com/tokio-rs/tokio/pull/8514\n\n[#&#8203;8521]:
          https://redirect.github.com/tokio-rs/tokio/pull/8521\n\n[#&#8203;8526]:
          https://redirect.github.com/tokio-rs/tokio/pull/8526\n\n[#&#8203;8528]:
          https://redirect.github.com/tokio-rs/tokio/pull/8528\n\n[#&#8203;8568]:
          https://redirect.github.com/tokio-rs/tokio/pull/8568\n\n[#&#8203;8589]:
          https://redirect.github.com/tokio-rs/tokio/pull/8589\n\n[#&#8203;8599]:
          https://redirect.github.com/tokio-rs/tokio/pull/8599\n\n[#&#8203;8603]:
          https://redirect.github.com/tokio-rs/tokio/pull/8603\n\n[#&#8203;8605]:
          https://redirect.github.com/tokio-rs/tokio/pull/8605\n\n[#&#8203;8622]:
          https://redirect.github.com/tokio-rs/tokio/pull/8622\n\n[#&#8203;8625]:
          https://redirect.github.com/tokio-rs/tokio/pull/8625\n\n[#&#8203;8627]:
          https://redirect.github.com/tokio-rs/tokio/pull/8627\n\n[#&#8203;8628]:
          https://redirect.github.com/tokio-rs/tokio/pull/8628\n\n[#&#8203;8663]:
          https://redirect.github.com/tokio-rs/tokio/pull/8663\n\n### [`v1.53.3`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.53.3):
          Tokio v1.53.3\n\n[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.53.2...tokio-1.53.3)\n\n#####
          1.53.3 (October 13th, 2026)\n\n##### Added\n\n- io: add `AsyncFd::register`
          and `AsyncFd::register_with_interest` ([#&#8203;8587])\n\n##### Changed\n\n-
          io: deprecate `AsyncFd::{new, with_interest, try_new, try_with_interest}`
          ([#&#8203;8587])\n\n##### Fixed\n\n- io: wake and drop `DuplexStream` wakers
          outside the lock ([#&#8203;8618])\n- macros: avoid `unreachable_code` in
          `join!` and `try_join!` for `Infallible` ([#&#8203;8518])\n- runtime: fix
          paused time auto-advancing when I/O wakes a task on `current_thread` ([#&#8203;8595])\n-
          sync: wake waiters outside the lock when closing a semaphore ([#&#8203;8529])\n-
          test: fix several flaky tests ([#&#8203;8196], [#&#8203;8427], [#&#8203;8609])\n\n#####
          Fixed (unstable)\n\n- rt: keep `io_uring` op alive when submission fails
          after push ([#&#8203;8185])\n\n[#&#8203;8185]: https://redirect.github.com/tokio-rs/tokio/pull/8185\n\n[#&#8203;8196]:
          https://redirect.github.com/tokio-rs/tokio/pull/8196\n\n[#&#8203;8427]:
          https://redirect.github.com/tokio-rs/tokio/pull/8427\n\n[#&#8203;8518]:
          https://redirect.github.com/tokio-rs/tokio/pull/8518\n\n[#&#8203;8529]:
          https://redirect.github.com/tokio-rs/tokio/pull/8529\n\n[#&#8203;8587]:
          https://redirect.github.com/tokio-rs/tokio/pull/8587\n\n[#&#8203;8595]:
          https://redirect.github.com/tokio-rs/tokio/pull/8595\n\n[#&#8203;8609]:
          https://redirect.github.com/tokio-rs/tokio/pull/8609\n\n[#&#8203;8618]:
          https://redirect.github.com/tokio-rs/tokio/pull/8618\n\n### [`v1.53.2`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.53.2):
          Tokio v1.53.2\n\n[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.53.1...tokio-1.53.2)\n\n###
          1.53.2 (October 3rd, 2026)\n\n##### Fixed\n\n- fs: handle integer overflow
          in buffered relative seek ([#&#8203;8574])\n- io: revert \"always cleanup
          `AsyncFd` registration list on deregister\" ([#&#8203;8540])\n- process:
          unregister Windows wait before closing child handle ([#&#8203;8564])\n-
          rt: drop blocking pool mutex before shutting down rejected task ([#&#8203;8562])\n-
          sync: fix mpsc index wraparound in block reclamation ([#&#8203;8546])\n-
          sync: forget mpsc `Permit` before sending value ([#&#8203;8560])\n- sync:
          validate `MAX_PERMITS` in `Semaphore::acquire` ([#&#8203;8548])\n- sync:
          wake broadcast `Sender::closed` outside mutex ([#&#8203;8558])\n- task:
          drop replaced waker outside lock in `JoinSet` ([#&#8203;8554])\n- time:
          drop timer lock before dropping waker in `clear_entry` ([#&#8203;8552])\n-
          time: expire timers directly on shutdown without rotating wheel ([#&#8203;8570])\n\n#####
          Fixed (unstable)\n\n- fs: clamp `io_uring` read length to `u32::MAX` ([#&#8203;8572])\n-
          rt: ignore `current_thread` task dumps from other runtimes ([#&#8203;8544])\n-
          rt: preserve `io_uring` context if a completion waker panics ([#&#8203;8566])\n-
          sync: fix semaphore use-after-free and permit leak on tracing panic ([#&#8203;8542])\n-
          taskdump: restore deferred leaf wakes during capture ([#&#8203;8445])\n-
          time: drop stored waker when cancelling alt timer entry ([#&#8203;8550])\n\n[#&#8203;8445]:
          https://redirect.github.com/tokio-rs/tokio/pull/8445\n\n[#&#8203;8572]:
          https://redirect.github.com/tokio-rs/tokio/pull/8572\n\n[#&#8203;8540]:
          https://redirect.github.com/tokio-rs/tokio/pull/8540\n\n[#&#8203;8542]:
          https://redirect.github.com/tokio-rs/tokio/pull/8542\n\n[#&#8203;8544]:
          https://redirect.github.com/tokio-rs/tokio/pull/8544\n\n[#&#8203;8546]:
          https://redirect.github.com/tokio-rs/tokio/pull/8546\n\n[#&#8203;8548]:
          https://redirect.github.com/tokio-rs/tokio/pull/8548\n\n[#&#8203;8550]:
          https://redirect.github.com/tokio-rs/tokio/pull/8550\n\n[#&#8203;8552]:
          https://redirect.github.com/tokio-rs/tokio/pull/8552\n\n[#&#8203;8554]:
          https://redirect.github.com/tokio-rs/tokio/pull/8554\n\n[#&#8203;8558]:
          https://redirect.github.com/tokio-rs/tokio/pull/8558\n\n[#&#8203;8560]:
          https://redirect.github.com/tokio-rs/tokio/pull/8560\n\n[#&#8203;8562]:
          https://redirect.github.com/tokio-rs/tokio/pull/8562\n\n[#&#8203;8564]:
          https://redirect.github.com/tokio-rs/tokio/pull/8564\n\n[#&#8203;8566]:
          https://redirect.github.com/tokio-rs/tokio/pull/8566\n\n[#&#8203;8570]:
          https://redirect.github.com/tokio-rs/tokio/pull/8570\n\n[#&#8203;8574]:
          https://redirect.github.com/tokio-rs/tokio/pull/8574\n\n### [`v1.53.1`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.53.1):
          Tokio v1.53.1\n\n[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.53.0...tokio-1.53.1)\n\n#####
          1.53.1 (July 20th, 2026)\n\n##### Fixed\n\n- signal: restore MSRV by removing
          `OnceLock::wait` from the Windows handler ([#&#8203;8300])\n\n##### Fixed
          (unstable)\n\n- time: fix alt timer cancellation and insertion race ([#&#8203;8252])\n\n#####
          Documented\n\n- runtime: remove dead link definition in Runtime::block_on
          ([#&#8203;8301])\n\n[#&#8203;8252]: https://redirect.github.com/tokio-rs/tokio/pull/8252\n\n[#&#8203;8300]:
          https://redirect.github.com/tokio-rs/tokio/pull/8300\n\n[#&#8203;8301]:
          https://redirect.github.com/tokio-rs/tokio/pull/8301\n\n### [`v1.53.0`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.53.0):
          Tokio v1.53.0\n\n[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.52.4...tokio-1.53.0)\n\n###
          1.53.0 (July 17th, 2026)\n\n##### Added\n\n- fs: implement `From<OwnedFd>`
          and `From<OwnedHandle>` for `File` ([#&#8203;8266])\n- metrics: add task
          schedule latency metric ([#&#8203;7986])\n- net: add `SocketAddr` methods
          to Unix sockets ([#&#8203;8144])\n\n##### Changed\n\n- io: add `#[inline]`
          to IO trait impls for in-memory types ([#&#8203;8242])\n- net: implement
          UCred::pid on FreeBSD ([#&#8203;8086])\n- net: support Nuttx target os ([#&#8203;8259])\n-
          signal: refactor global variables on Windows ([#&#8203;8231])\n- sync: `mpsc::{Receiver,UnboundedReceiver}`
          now drops waker on drop, even if there are still senders ([#&#8203;8095])\n-
          taskdump: support taskdumps on s390x ([#&#8203;8192])\n- time: add `#[track_caller]`
          to `timeout_at()` ([#&#8203;8077])\n- time: consolidate mutex locks on spurious
          poll ([#&#8203;8124])\n- time: defer waker clone on spurious poll ([#&#8203;8107])\n-
          time: move lazy-registration state into `Sleep` ([#&#8203;8132])\n- tracing:
          remove unnecessary span clone ([#&#8203;8126])\n\n##### Fixed\n\n- io: do
          not treat zero-length reads as EOF in `Chain` ([#&#8203;8251])\n- net: use
          getpeereid for QNX peer credentials ([#&#8203;8270])\n- runtime: avoid illegal
          state in `FastRand` ([#&#8203;8078])\n- sync: wake mpsc receiver when a
          queued `reserve[_many]` returns permits ([#&#8203;8260])\n- taskdump: skip
          double wake on `Trace::capture`/`Trace::trace_with` ([#&#8203;8043])\n-
          time: avoid stack overflow in runtime constructor ([#&#8203;8093])\n- time
          (alt timer): ensure timers stay in the same runtime after `.reset()` ([#&#8203;8169])\n\n#####
          IO uring (unstable)\n\n- fs: use io-uring for `fs::try_exists` ([#&#8203;8080])\n-
          fs: use io-uring for renaming files ([#&#8203;7800])\n- rt: flush io-uring
          CQE in case of CQE overflow ([#&#8203;8277])\n\n##### Documented\n\n- docs:
          clarify cancel safety wording ([#&#8203;8181])\n- fs: clarify `create_dir_all`
          succeeds if path exists ([#&#8203;8149])\n- io: add warning about stdout
          reordering with multiple handles ([#&#8203;8276])\n- net: document pipe
          `try_read*`/`try_write*` readiness behavior ([#&#8203;8032])\n- runtime:
          document interaction with fork() ([#&#8203;8202])\n- sync: clarify broadcast
          lagging semantics ([#&#8203;8239])\n- sync: document memory ordering guarantees
          for Semaphore ([#&#8203;8119])\n- task: explain why `yield_now` defers its
          waker ([#&#8203;8254])\n- time: add panic docs to `timeout_at()` ([#&#8203;8077])\n-
          time: fix reversed poll order in timeout doc ([#&#8203;8214])\n\n[#&#8203;7800]:
          https://redirect.github.com/tokio-rs/tokio/pull/7800\n\n[#&#8203;7986]:
          https://redirect.github.com/tokio-rs/tokio/pull/7986\n\n[#&#8203;8032]:
          https://redirect.github.com/tokio-rs/tokio/pull/8032\n\n[#&#8203;8043]:
          https://redirect.github.com/tokio-rs/tokio/pull/8043\n\n[#&#8203;8077]:
          https://redirect.github.com/tokio-rs/tokio/pull/8077\n\n[#&#8203;8078]:
          https://redirect.github.com/tokio-rs/tokio/pull/8078\n\n[#&#8203;8080]:
          https://redirect.github.com/tokio-rs/tokio/pull/8080\n\n[#&#8203;8086]:
          https://redirect.github.com/tokio-rs/tokio/pull/8086\n\n[#&#8203;8093]:
          https://redirect.github.com/tokio-rs/tokio/pull/8093\n\n[#&#8203;8095]:
          https://redirect.github.com/tokio-rs/tokio/pull/8095\n\n[#&#8203;8107]:
          https://redirect.github.com/tokio-rs/tokio/pull/8107\n\n[#&#8203;8119]:
          https://redirect.github.com/tokio-rs/tokio/pull/8119\n\n[#&#8203;8124]:
          https://redirect.github.com/tokio-rs/tokio/pull/8124\n\n[#&#8203;8126]:
          https://redirect.github.com/tokio-rs/tokio/pull/8126\n\n[#&#8203;8132]:
          https://redirect.github.com/tokio-rs/tokio/pull/8132\n\n[#&#8203;8144]:
          https://redirect.github.com/tokio-rs/tokio/pull/8144\n\n[#&#8203;8149]:
          https://redirect.github.com/tokio-rs/tokio/pull/8149\n\n[#&#8203;8169]:
          https://redirect.github.com/tokio-rs/tokio/pull/8169\n\n[#&#8203;8181]:
          https://redirect.github.com/tokio-rs/tokio/pull/8181\n\n[#&#8203;8192]:
          https://redirect.github.com/tokio-rs/tokio/pull/8192\n\n[#&#8203;8193]:
          https://redirect.github.com/tokio-rs/tokio/pull/8193\n\n[#&#8203;8202]:
          https://redirect.github.com/tokio-rs/tokio/pull/8202\n\n[#&#8203;8214]:
          https://redirect.github.com/tokio-rs/tokio/pull/8214\n\n[#&#8203;8231]:
          https://redirect.github.com/tokio-rs/tokio/pull/8231\n\n[#&#8203;8239]:
          https://redirect.github.com/tokio-rs/tokio/pull/8239\n\n[#&#8203;8242]:
          https://redirect.github.com/tokio-rs/tokio/pull/8242\n\n[#&#8203;8251]:
          https://redirect.github.com/tokio-rs/tokio/pull/8251\n\n[#&#8203;8254]:
          https://redirect.github.com/tokio-rs/tokio/pull/8254\n\n[#&#8203;8259]:
          https://redirect.github.com/tokio-rs/tokio/pull/8259\n\n[#&#8203;8260]:
          https://redirect.github.com/tokio-rs/tokio/pull/8260\n\n[#&#8203;8266]:
          https://redirect.github.com/tokio-rs/tokio/pull/8266\n\n[#&#8203;8270]:
          https://redirect.github.com/tokio-rs/tokio/pull/8270\n\n[#&#8203;8276]:
          https://redirect.github.com/tokio-rs/tokio/pull/8276\n\n[#&#8203;8277]:
          https://redirect.github.com/tokio-rs/tokio/pull/8277\n\n### [`v1.52.4`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.52.4):
          Tokio v1.52.4\n\n[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.52.3...tokio-1.52.4)\n\n#####
          1.52.4 (July 16th, 2026)\n\n##### Fixed\n\n- runtime: don't skip the driver
          when `before_park` schedules work ([#&#8203;8222])\n\n##### Fixed (unstable)\n\n-
          taskdump: remove crate disambiguators from output ([#&#8203;8264])\n\n[#&#8203;8264]:
          https://redirect.github.com/tokio-rs/tokio/pull/8264\n\n[#&#8203;8222]:
          https://redirect.github.com/tokio-rs/tokio/pull/8222\n\n</details>\n\n---\n\n###
          Configuration\n\n\U0001F4C5 **Schedule**: (UTC)\n\n- Branch creation\n  -
          At any time (no schedule defined)\n- Automerge\n  - At any time (no schedule
          defined)\n\n\U0001F6A6 **Automerge**: Disabled by config. Please merge this
          manually once you are satisfied.\n\n\u267B **Rebasing**: Whenever PR becomes
          conflicted, or you tick the rebase/retry checkbox.\n\n\U0001F515 **Ignore**:
          Close this PR and you won't be reminded about this update again.\n\n---\n\n
          - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this
          box\n\n---\n\nThis PR was generated by [Mend Renovate](https://mend.io/renovate/).
          View the [repository job log](https://developer.mend.io/github/vexxhost/magnum-cluster-api).\n<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNjUuMSIsInVwZGF0ZWRJblZlciI6IjQ0LjE3MS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->\n"
        change_url: https://github.com/vexxhost/magnum-cluster-api/pull/1114
        commit_id: b8a7cdc13ccec9ceb9af05b81ebaed6a0ece3e85
        patchset: b8a7cdc13ccec9ceb9af05b81ebaed6a0ece3e85
        project:
          canonical_hostname: github.com
          canonical_name: github.com/vexxhost/magnum-cluster-api
          name: vexxhost/magnum-cluster-api
          short_name: magnum-cluster-api
          src_dir: src/github.com/vexxhost/magnum-cluster-api
        src_dir: src/github.com/vexxhost/magnum-cluster-api
        topic: null
      buildset: f9947ee0247643bd9bcbfe1344ca67ce
      buildset_refs:
      - branch: main
        change: '1114'
        change_message: "chore(deps): update rust crate tokio to v1.54.0\n\nThis PR
          contains the following updates:\n\n| Package | Type | Update | Change |\n|---|---|---|---|\n|
          [tokio](https://tokio.rs) ([source](https://redirect.github.com/tokio-rs/tokio))
          | dependencies | minor | `1.52.3` \u2192 `1.54.0` |\n\n---\n\n### Release
          Notes\n\n<details>\n<summary>tokio-rs/tokio (tokio)</summary>\n\n### [`v1.54.0`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.54.0):
          Tokio v1.54.0\n\n[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.53.3...tokio-1.54.0)\n\n#####
          1.54.0 (October 19th, 2026)\n\nThe 1.54.0 release includes all changes up
          to 1.53.3.\n\nThe MSRV is increased to 1.85. ([#&#8203;8514])\n\n##### Added\n\n-
          fs: add `File::set_times`, `File::set_modified`, and `fs::FileTimes` ([#&#8203;8504])\n-
          net: implement `Default` for `named_pipe::{ClientOptions, ServerOptions}`
          ([#&#8203;8378])\n- runtime: add `Builder::max_io_events_per_busy_tick`
          ([#&#8203;8410])\n- runtime: stabilize `tokio::runtime::worker_index()`
          ([#&#8203;8431])\n- sync: add `SemaphorePermit::semaphore()` ([#&#8203;8482])\n-
          sync: add `blocking_acquire` methods to `Semaphore` ([#&#8203;8269])\n-
          sync: add `watch::Receiver::is_closed` ([#&#8203;8481])\n- wasm: support
          JSPI for Emscripten target ([#&#8203;8285], [#&#8203;8627])\n- wasm: support
          the `wasm32-unknown-emscripten` target ([#&#8203;8281], [#&#8203;8422],
          [#&#8203;8528], [#&#8203;8628])\n\n##### Changed\n\n- fs: reject zero in
          `File::set_max_buf_size` ([#&#8203;8449])\n- io: make `copy_buf` cooperative
          ([#&#8203;8459])\n- io: panic when `BufReader` or `BufStream` is created
          with zero capacity ([#&#8203;8494])\n- io: panic when in-memory pipe is
          created with zero capacity ([#&#8203;8397])\n- io: reject zero buffer size
          in `copy_bidirectional_with_sizes` ([#&#8203;8454])\n- io: support vectored
          writes in `Sink` ([#&#8203;8663])\n- net: start `UnixStream::pair` and `UnixDatagram::pair`
          sockets as writable ([#&#8203;8444])\n- net: start accepted sockets as readable
          and writable ([#&#8203;8435])\n- net: support `UCred` on Fuchsia ([#&#8203;8257])\n-
          process: use `mio::unix::pipe` for Unix child stdio ([#&#8203;8603])\n-
          runtime: cache-pad the shared injection queue and idle state ([#&#8203;8622])\n-
          runtime: decide auto-boxing of spawned futures at monomorphization time
          ([#&#8203;8414])\n- runtime: make `enable_io` available whenever `rt` is
          enabled ([#&#8203;8387])\n- runtime: move `block_in_place` setup into a
          non-generic function ([#&#8203;8315])\n- runtime: move the multi-thread
          inject queue to its own mutex ([#&#8203;8382])\n- runtime: panic when `max_io_events_per_tick`
          is zero ([#&#8203;8476])\n- runtime: suggest `.await` in nested `block_on`
          panic message ([#&#8203;8501])\n- sync: avoid atomic reader count in broadcast
          slots ([#&#8203;8357])\n- sync: use acquire/release orderings in `Notify`
          ([#&#8203;8325])\n- time: remove the runtime handle from timers ([#&#8203;8458])\n\n#####
          Fixed\n\n- fs: restore `File` internal state when op fails ([#&#8203;8291])\n-
          io: complete zero-length memory stream operations immediately ([#&#8203;8323])\n-
          io: flush the writer when the reader stalls in `copy_buf` ([#&#8203;8424])\n-
          io: keep the shutdown bit when clearing readiness ([#&#8203;8435])\n- io:
          preserve the full `ScheduledIo` tick in readiness events ([#&#8203;8331])\n-
          io: read lines as bytes so a partial line survives an I/O error ([#&#8203;8400])\n-
          io: retry on `ErrorKind::Interrupted` in more I/O operations ([#&#8203;8417],
          [#&#8203;8432], [#&#8203;8448], [#&#8203;8453], [#&#8203;8455], [#&#8203;8460])\n-
          io: use `spawn_mandatory_blocking` for stdout and stderr ([#&#8203;8506])\n-
          io: wait for pending operations before `BufReader` seeks ([#&#8203;8599])\n-
          net: close `CreateFileW` handle on `SetNamedPipeHandleState` failure ([#&#8203;8418])\n-
          net: fix peer credentials on NetBSD ([#&#8203;8589])\n- net: saturate `TcpSocket`
          and `UnixSocket` listen backlog ([#&#8203;8511])\n- net: treat `ENOTCONN`
          as success in `UnixStream::shutdown` ([#&#8203;8526])\n- runtime: allow
          building with `--all-features` without `tokio_unstable` ([#&#8203;8401])\n-
          runtime: avoid overflow in `shutdown_timeout()` ([#&#8203;8497])\n- runtime:
          fix `spawn_blocking` hang when only scheduler workers exist ([#&#8203;8408])\n-
          runtime: fix misleading signal driver panic message ([#&#8203;8419])\n-
          sync: preserve FIFO lock order when coop budget is exhausted ([#&#8203;8371])\n-
          sync: use `usize` for permit count in `SemaphorePermit` ([#&#8203;8405])\n-
          time: avoid interval deadline overflow ([#&#8203;8385])\n- time: handle
          wrapped top-level timer-wheel slots ([#&#8203;8334])\n\n##### Unstable\n\n-
          fs: fall back when `io_uring` has no IO driver ([#&#8203;8165])\n- metrics:
          cap log histogram precision ([#&#8203;8496])\n- runtime: add an opt-in sharded
          `spawn_blocking` queue ([#&#8203;8337])\n- runtime: expose schedule latency
          in task hooks ([#&#8203;8282])\n- taskdump: fix idle bookkeeping when a
          task dump wakes parked workers ([#&#8203;8372])\n- taskdump: skip non-idle
          tasks during taskdumps ([#&#8203;8568])\n\n##### Documented\n\n- docs: fix
          stray braces and broken links in rustdoc ([#&#8203;8605])\n- fs: document
          cancellation behavior of `tokio::fs` ([#&#8203;8265])\n- net: add Safety
          docs for named pipe `from_raw_handle` ([#&#8203;8378])\n- net: document
          that `TcpStream::connect` returns only the last error ([#&#8203;8421])\n-
          runtime: add error documentation for `runtime::Builder` ([#&#8203;8297])\n-
          runtime: link `available_parallelism` in worker count docs ([#&#8203;8625])\n-
          sync: clarify panic behavior of `broadcast::channel()` ([#&#8203;8420])\n-
          sync: fix typo in `Semaphore` documentation ([#&#8203;8521])\n\n[#&#8203;8165]:
          https://redirect.github.com/tokio-rs/tokio/pull/8165\n\n[#&#8203;8257]:
          https://redirect.github.com/tokio-rs/tokio/pull/8257\n\n[#&#8203;8265]:
          https://redirect.github.com/tokio-rs/tokio/pull/8265\n\n[#&#8203;8269]:
          https://redirect.github.com/tokio-rs/tokio/pull/8269\n\n[#&#8203;8281]:
          https://redirect.github.com/tokio-rs/tokio/pull/8281\n\n[#&#8203;8282]:
          https://redirect.github.com/tokio-rs/tokio/pull/8282\n\n[#&#8203;8285]:
          https://redirect.github.com/tokio-rs/tokio/pull/8285\n\n[#&#8203;8291]:
          https://redirect.github.com/tokio-rs/tokio/pull/8291\n\n[#&#8203;8297]:
          https://redirect.github.com/tokio-rs/tokio/pull/8297\n\n[#&#8203;8315]:
          https://redirect.github.com/tokio-rs/tokio/pull/8315\n\n[#&#8203;8323]:
          https://redirect.github.com/tokio-rs/tokio/pull/8323\n\n[#&#8203;8325]:
          https://redirect.github.com/tokio-rs/tokio/pull/8325\n\n[#&#8203;8331]:
          https://redirect.github.com/tokio-rs/tokio/pull/8331\n\n[#&#8203;8334]:
          https://redirect.github.com/tokio-rs/tokio/pull/8334\n\n[#&#8203;8337]:
          https://redirect.github.com/tokio-rs/tokio/pull/8337\n\n[#&#8203;8357]:
          https://redirect.github.com/tokio-rs/tokio/pull/8357\n\n[#&#8203;8371]:
          https://redirect.github.com/tokio-rs/tokio/pull/8371\n\n[#&#8203;8372]:
          https://redirect.github.com/tokio-rs/tokio/pull/8372\n\n[#&#8203;8378]:
          https://redirect.github.com/tokio-rs/tokio/pull/8378\n\n[#&#8203;8382]:
          https://redirect.github.com/tokio-rs/tokio/pull/8382\n\n[#&#8203;8385]:
          https://redirect.github.com/tokio-rs/tokio/pull/8385\n\n[#&#8203;8387]:
          https://redirect.github.com/tokio-rs/tokio/pull/8387\n\n[#&#8203;8397]:
          https://redirect.github.com/tokio-rs/tokio/pull/8397\n\n[#&#8203;8400]:
          https://redirect.github.com/tokio-rs/tokio/pull/8400\n\n[#&#8203;8401]:
          https://redirect.github.com/tokio-rs/tokio/pull/8401\n\n[#&#8203;8405]:
          https://redirect.github.com/tokio-rs/tokio/pull/8405\n\n[#&#8203;8408]:
          https://redirect.github.com/tokio-rs/tokio/pull/8408\n\n[#&#8203;8410]:
          https://redirect.github.com/tokio-rs/tokio/pull/8410\n\n[#&#8203;8414]:
          https://redirect.github.com/tokio-rs/tokio/pull/8414\n\n[#&#8203;8417]:
          https://redirect.github.com/tokio-rs/tokio/pull/8417\n\n[#&#8203;8418]:
          https://redirect.github.com/tokio-rs/tokio/pull/8418\n\n[#&#8203;8419]:
          https://redirect.github.com/tokio-rs/tokio/pull/8419\n\n[#&#8203;8420]:
          https://redirect.github.com/tokio-rs/tokio/pull/8420\n\n[#&#8203;8421]:
          https://redirect.github.com/tokio-rs/tokio/pull/8421\n\n[#&#8203;8422]:
          https://redirect.github.com/tokio-rs/tokio/pull/8422\n\n[#&#8203;8424]:
          https://redirect.github.com/tokio-rs/tokio/pull/8424\n\n[#&#8203;8431]:
          https://redirect.github.com/tokio-rs/tokio/pull/8431\n\n[#&#8203;8432]:
          https://redirect.github.com/tokio-rs/tokio/pull/8432\n\n[#&#8203;8435]:
          https://redirect.github.com/tokio-rs/tokio/pull/8435\n\n[#&#8203;8444]:
          https://redirect.github.com/tokio-rs/tokio/pull/8444\n\n[#&#8203;8448]:
          https://redirect.github.com/tokio-rs/tokio/pull/8448\n\n[#&#8203;8449]:
          https://redirect.github.com/tokio-rs/tokio/pull/8449\n\n[#&#8203;8453]:
          https://redirect.github.com/tokio-rs/tokio/pull/8453\n\n[#&#8203;8454]:
          https://redirect.github.com/tokio-rs/tokio/pull/8454\n\n[#&#8203;8455]:
          https://redirect.github.com/tokio-rs/tokio/pull/8455\n\n[#&#8203;8458]:
          https://redirect.github.com/tokio-rs/tokio/pull/8458\n\n[#&#8203;8459]:
          https://redirect.github.com/tokio-rs/tokio/pull/8459\n\n[#&#8203;8460]:
          https://redirect.github.com/tokio-rs/tokio/pull/8460\n\n[#&#8203;8476]:
          https://redirect.github.com/tokio-rs/tokio/pull/8476\n\n[#&#8203;8481]:
          https://redirect.github.com/tokio-rs/tokio/pull/8481\n\n[#&#8203;8482]:
          https://redirect.github.com/tokio-rs/tokio/pull/8482\n\n[#&#8203;8494]:
          https://redirect.github.com/tokio-rs/tokio/pull/8494\n\n[#&#8203;8496]:
          https://redirect.github.com/tokio-rs/tokio/pull/8496\n\n[#&#8203;8497]:
          https://redirect.github.com/tokio-rs/tokio/pull/8497\n\n[#&#8203;8501]:
          https://redirect.github.com/tokio-rs/tokio/pull/8501\n\n[#&#8203;8504]:
          https://redirect.github.com/tokio-rs/tokio/pull/8504\n\n[#&#8203;8506]:
          https://redirect.github.com/tokio-rs/tokio/pull/8506\n\n[#&#8203;8511]:
          https://redirect.github.com/tokio-rs/tokio/pull/8511\n\n[#&#8203;8514]:
          https://redirect.github.com/tokio-rs/tokio/pull/8514\n\n[#&#8203;8521]:
          https://redirect.github.com/tokio-rs/tokio/pull/8521\n\n[#&#8203;8526]:
          https://redirect.github.com/tokio-rs/tokio/pull/8526\n\n[#&#8203;8528]:
          https://redirect.github.com/tokio-rs/tokio/pull/8528\n\n[#&#8203;8568]:
          https://redirect.github.com/tokio-rs/tokio/pull/8568\n\n[#&#8203;8589]:
          https://redirect.github.com/tokio-rs/tokio/pull/8589\n\n[#&#8203;8599]:
          https://redirect.github.com/tokio-rs/tokio/pull/8599\n\n[#&#8203;8603]:
          https://redirect.github.com/tokio-rs/tokio/pull/8603\n\n[#&#8203;8605]:
          https://redirect.github.com/tokio-rs/tokio/pull/8605\n\n[#&#8203;8622]:
          https://redirect.github.com/tokio-rs/tokio/pull/8622\n\n[#&#8203;8625]:
          https://redirect.github.com/tokio-rs/tokio/pull/8625\n\n[#&#8203;8627]:
          https://redirect.github.com/tokio-rs/tokio/pull/8627\n\n[#&#8203;8628]:
          https://redirect.github.com/tokio-rs/tokio/pull/8628\n\n[#&#8203;8663]:
          https://redirect.github.com/tokio-rs/tokio/pull/8663\n\n### [`v1.53.3`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.53.3):
          Tokio v1.53.3\n\n[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.53.2...tokio-1.53.3)\n\n#####
          1.53.3 (October 13th, 2026)\n\n##### Added\n\n- io: add `AsyncFd::register`
          and `AsyncFd::register_with_interest` ([#&#8203;8587])\n\n##### Changed\n\n-
          io: deprecate `AsyncFd::{new, with_interest, try_new, try_with_interest}`
          ([#&#8203;8587])\n\n##### Fixed\n\n- io: wake and drop `DuplexStream` wakers
          outside the lock ([#&#8203;8618])\n- macros: avoid `unreachable_code` in
          `join!` and `try_join!` for `Infallible` ([#&#8203;8518])\n- runtime: fix
          paused time auto-advancing when I/O wakes a task on `current_thread` ([#&#8203;8595])\n-
          sync: wake waiters outside the lock when closing a semaphore ([#&#8203;8529])\n-
          test: fix several flaky tests ([#&#8203;8196], [#&#8203;8427], [#&#8203;8609])\n\n#####
          Fixed (unstable)\n\n- rt: keep `io_uring` op alive when submission fails
          after push ([#&#8203;8185])\n\n[#&#8203;8185]: https://redirect.github.com/tokio-rs/tokio/pull/8185\n\n[#&#8203;8196]:
          https://redirect.github.com/tokio-rs/tokio/pull/8196\n\n[#&#8203;8427]:
          https://redirect.github.com/tokio-rs/tokio/pull/8427\n\n[#&#8203;8518]:
          https://redirect.github.com/tokio-rs/tokio/pull/8518\n\n[#&#8203;8529]:
          https://redirect.github.com/tokio-rs/tokio/pull/8529\n\n[#&#8203;8587]:
          https://redirect.github.com/tokio-rs/tokio/pull/8587\n\n[#&#8203;8595]:
          https://redirect.github.com/tokio-rs/tokio/pull/8595\n\n[#&#8203;8609]:
          https://redirect.github.com/tokio-rs/tokio/pull/8609\n\n[#&#8203;8618]:
          https://redirect.github.com/tokio-rs/tokio/pull/8618\n\n### [`v1.53.2`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.53.2):
          Tokio v1.53.2\n\n[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.53.1...tokio-1.53.2)\n\n###
          1.53.2 (October 3rd, 2026)\n\n##### Fixed\n\n- fs: handle integer overflow
          in buffered relative seek ([#&#8203;8574])\n- io: revert \"always cleanup
          `AsyncFd` registration list on deregister\" ([#&#8203;8540])\n- process:
          unregister Windows wait before closing child handle ([#&#8203;8564])\n-
          rt: drop blocking pool mutex before shutting down rejected task ([#&#8203;8562])\n-
          sync: fix mpsc index wraparound in block reclamation ([#&#8203;8546])\n-
          sync: forget mpsc `Permit` before sending value ([#&#8203;8560])\n- sync:
          validate `MAX_PERMITS` in `Semaphore::acquire` ([#&#8203;8548])\n- sync:
          wake broadcast `Sender::closed` outside mutex ([#&#8203;8558])\n- task:
          drop replaced waker outside lock in `JoinSet` ([#&#8203;8554])\n- time:
          drop timer lock before dropping waker in `clear_entry` ([#&#8203;8552])\n-
          time: expire timers directly on shutdown without rotating wheel ([#&#8203;8570])\n\n#####
          Fixed (unstable)\n\n- fs: clamp `io_uring` read length to `u32::MAX` ([#&#8203;8572])\n-
          rt: ignore `current_thread` task dumps from other runtimes ([#&#8203;8544])\n-
          rt: preserve `io_uring` context if a completion waker panics ([#&#8203;8566])\n-
          sync: fix semaphore use-after-free and permit leak on tracing panic ([#&#8203;8542])\n-
          taskdump: restore deferred leaf wakes during capture ([#&#8203;8445])\n-
          time: drop stored waker when cancelling alt timer entry ([#&#8203;8550])\n\n[#&#8203;8445]:
          https://redirect.github.com/tokio-rs/tokio/pull/8445\n\n[#&#8203;8572]:
          https://redirect.github.com/tokio-rs/tokio/pull/8572\n\n[#&#8203;8540]:
          https://redirect.github.com/tokio-rs/tokio/pull/8540\n\n[#&#8203;8542]:
          https://redirect.github.com/tokio-rs/tokio/pull/8542\n\n[#&#8203;8544]:
          https://redirect.github.com/tokio-rs/tokio/pull/8544\n\n[#&#8203;8546]:
          https://redirect.github.com/tokio-rs/tokio/pull/8546\n\n[#&#8203;8548]:
          https://redirect.github.com/tokio-rs/tokio/pull/8548\n\n[#&#8203;8550]:
          https://redirect.github.com/tokio-rs/tokio/pull/8550\n\n[#&#8203;8552]:
          https://redirect.github.com/tokio-rs/tokio/pull/8552\n\n[#&#8203;8554]:
          https://redirect.github.com/tokio-rs/tokio/pull/8554\n\n[#&#8203;8558]:
          https://redirect.github.com/tokio-rs/tokio/pull/8558\n\n[#&#8203;8560]:
          https://redirect.github.com/tokio-rs/tokio/pull/8560\n\n[#&#8203;8562]:
          https://redirect.github.com/tokio-rs/tokio/pull/8562\n\n[#&#8203;8564]:
          https://redirect.github.com/tokio-rs/tokio/pull/8564\n\n[#&#8203;8566]:
          https://redirect.github.com/tokio-rs/tokio/pull/8566\n\n[#&#8203;8570]:
          https://redirect.github.com/tokio-rs/tokio/pull/8570\n\n[#&#8203;8574]:
          https://redirect.github.com/tokio-rs/tokio/pull/8574\n\n### [`v1.53.1`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.53.1):
          Tokio v1.53.1\n\n[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.53.0...tokio-1.53.1)\n\n#####
          1.53.1 (July 20th, 2026)\n\n##### Fixed\n\n- signal: restore MSRV by removing
          `OnceLock::wait` from the Windows handler ([#&#8203;8300])\n\n##### Fixed
          (unstable)\n\n- time: fix alt timer cancellation and insertion race ([#&#8203;8252])\n\n#####
          Documented\n\n- runtime: remove dead link definition in Runtime::block_on
          ([#&#8203;8301])\n\n[#&#8203;8252]: https://redirect.github.com/tokio-rs/tokio/pull/8252\n\n[#&#8203;8300]:
          https://redirect.github.com/tokio-rs/tokio/pull/8300\n\n[#&#8203;8301]:
          https://redirect.github.com/tokio-rs/tokio/pull/8301\n\n### [`v1.53.0`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.53.0):
          Tokio v1.53.0\n\n[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.52.4...tokio-1.53.0)\n\n###
          1.53.0 (July 17th, 2026)\n\n##### Added\n\n- fs: implement `From<OwnedFd>`
          and `From<OwnedHandle>` for `File` ([#&#8203;8266])\n- metrics: add task
          schedule latency metric ([#&#8203;7986])\n- net: add `SocketAddr` methods
          to Unix sockets ([#&#8203;8144])\n\n##### Changed\n\n- io: add `#[inline]`
          to IO trait impls for in-memory types ([#&#8203;8242])\n- net: implement
          UCred::pid on FreeBSD ([#&#8203;8086])\n- net: support Nuttx target os ([#&#8203;8259])\n-
          signal: refactor global variables on Windows ([#&#8203;8231])\n- sync: `mpsc::{Receiver,UnboundedReceiver}`
          now drops waker on drop, even if there are still senders ([#&#8203;8095])\n-
          taskdump: support taskdumps on s390x ([#&#8203;8192])\n- time: add `#[track_caller]`
          to `timeout_at()` ([#&#8203;8077])\n- time: consolidate mutex locks on spurious
          poll ([#&#8203;8124])\n- time: defer waker clone on spurious poll ([#&#8203;8107])\n-
          time: move lazy-registration state into `Sleep` ([#&#8203;8132])\n- tracing:
          remove unnecessary span clone ([#&#8203;8126])\n\n##### Fixed\n\n- io: do
          not treat zero-length reads as EOF in `Chain` ([#&#8203;8251])\n- net: use
          getpeereid for QNX peer credentials ([#&#8203;8270])\n- runtime: avoid illegal
          state in `FastRand` ([#&#8203;8078])\n- sync: wake mpsc receiver when a
          queued `reserve[_many]` returns permits ([#&#8203;8260])\n- taskdump: skip
          double wake on `Trace::capture`/`Trace::trace_with` ([#&#8203;8043])\n-
          time: avoid stack overflow in runtime constructor ([#&#8203;8093])\n- time
          (alt timer): ensure timers stay in the same runtime after `.reset()` ([#&#8203;8169])\n\n#####
          IO uring (unstable)\n\n- fs: use io-uring for `fs::try_exists` ([#&#8203;8080])\n-
          fs: use io-uring for renaming files ([#&#8203;7800])\n- rt: flush io-uring
          CQE in case of CQE overflow ([#&#8203;8277])\n\n##### Documented\n\n- docs:
          clarify cancel safety wording ([#&#8203;8181])\n- fs: clarify `create_dir_all`
          succeeds if path exists ([#&#8203;8149])\n- io: add warning about stdout
          reordering with multiple handles ([#&#8203;8276])\n- net: document pipe
          `try_read*`/`try_write*` readiness behavior ([#&#8203;8032])\n- runtime:
          document interaction with fork() ([#&#8203;8202])\n- sync: clarify broadcast
          lagging semantics ([#&#8203;8239])\n- sync: document memory ordering guarantees
          for Semaphore ([#&#8203;8119])\n- task: explain why `yield_now` defers its
          waker ([#&#8203;8254])\n- time: add panic docs to `timeout_at()` ([#&#8203;8077])\n-
          time: fix reversed poll order in timeout doc ([#&#8203;8214])\n\n[#&#8203;7800]:
          https://redirect.github.com/tokio-rs/tokio/pull/7800\n\n[#&#8203;7986]:
          https://redirect.github.com/tokio-rs/tokio/pull/7986\n\n[#&#8203;8032]:
          https://redirect.github.com/tokio-rs/tokio/pull/8032\n\n[#&#8203;8043]:
          https://redirect.github.com/tokio-rs/tokio/pull/8043\n\n[#&#8203;8077]:
          https://redirect.github.com/tokio-rs/tokio/pull/8077\n\n[#&#8203;8078]:
          https://redirect.github.com/tokio-rs/tokio/pull/8078\n\n[#&#8203;8080]:
          https://redirect.github.com/tokio-rs/tokio/pull/8080\n\n[#&#8203;8086]:
          https://redirect.github.com/tokio-rs/tokio/pull/8086\n\n[#&#8203;8093]:
          https://redirect.github.com/tokio-rs/tokio/pull/8093\n\n[#&#8203;8095]:
          https://redirect.github.com/tokio-rs/tokio/pull/8095\n\n[#&#8203;8107]:
          https://redirect.github.com/tokio-rs/tokio/pull/8107\n\n[#&#8203;8119]:
          https://redirect.github.com/tokio-rs/tokio/pull/8119\n\n[#&#8203;8124]:
          https://redirect.github.com/tokio-rs/tokio/pull/8124\n\n[#&#8203;8126]:
          https://redirect.github.com/tokio-rs/tokio/pull/8126\n\n[#&#8203;8132]:
          https://redirect.github.com/tokio-rs/tokio/pull/8132\n\n[#&#8203;8144]:
          https://redirect.github.com/tokio-rs/tokio/pull/8144\n\n[#&#8203;8149]:
          https://redirect.github.com/tokio-rs/tokio/pull/8149\n\n[#&#8203;8169]:
          https://redirect.github.com/tokio-rs/tokio/pull/8169\n\n[#&#8203;8181]:
          https://redirect.github.com/tokio-rs/tokio/pull/8181\n\n[#&#8203;8192]:
          https://redirect.github.com/tokio-rs/tokio/pull/8192\n\n[#&#8203;8193]:
          https://redirect.github.com/tokio-rs/tokio/pull/8193\n\n[#&#8203;8202]:
          https://redirect.github.com/tokio-rs/tokio/pull/8202\n\n[#&#8203;8214]:
          https://redirect.github.com/tokio-rs/tokio/pull/8214\n\n[#&#8203;8231]:
          https://redirect.github.com/tokio-rs/tokio/pull/8231\n\n[#&#8203;8239]:
          https://redirect.github.com/tokio-rs/tokio/pull/8239\n\n[#&#8203;8242]:
          https://redirect.github.com/tokio-rs/tokio/pull/8242\n\n[#&#8203;8251]:
          https://redirect.github.com/tokio-rs/tokio/pull/8251\n\n[#&#8203;8254]:
          https://redirect.github.com/tokio-rs/tokio/pull/8254\n\n[#&#8203;8259]:
          https://redirect.github.com/tokio-rs/tokio/pull/8259\n\n[#&#8203;8260]:
          https://redirect.github.com/tokio-rs/tokio/pull/8260\n\n[#&#8203;8266]:
          https://redirect.github.com/tokio-rs/tokio/pull/8266\n\n[#&#8203;8270]:
          https://redirect.github.com/tokio-rs/tokio/pull/8270\n\n[#&#8203;8276]:
          https://redirect.github.com/tokio-rs/tokio/pull/8276\n\n[#&#8203;8277]:
          https://redirect.github.com/tokio-rs/tokio/pull/8277\n\n### [`v1.52.4`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.52.4):
          Tokio v1.52.4\n\n[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.52.3...tokio-1.52.4)\n\n#####
          1.52.4 (July 16th, 2026)\n\n##### Fixed\n\n- runtime: don't skip the driver
          when `before_park` schedules work ([#&#8203;8222])\n\n##### Fixed (unstable)\n\n-
          taskdump: remove crate disambiguators from output ([#&#8203;8264])\n\n[#&#8203;8264]:
          https://redirect.github.com/tokio-rs/tokio/pull/8264\n\n[#&#8203;8222]:
          https://redirect.github.com/tokio-rs/tokio/pull/8222\n\n</details>\n\n---\n\n###
          Configuration\n\n\U0001F4C5 **Schedule**: (UTC)\n\n- Branch creation\n  -
          At any time (no schedule defined)\n- Automerge\n  - At any time (no schedule
          defined)\n\n\U0001F6A6 **Automerge**: Disabled by config. Please merge this
          manually once you are satisfied.\n\n\u267B **Rebasing**: Whenever PR becomes
          conflicted, or you tick the rebase/retry checkbox.\n\n\U0001F515 **Ignore**:
          Close this PR and you won't be reminded about this update again.\n\n---\n\n
          - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this
          box\n\n---\n\nThis PR was generated by [Mend Renovate](https://mend.io/renovate/).
          View the [repository job log](https://developer.mend.io/github/vexxhost/magnum-cluster-api).\n<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNjUuMSIsInVwZGF0ZWRJblZlciI6IjQ0LjE3MS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->\n"
        change_url: https://github.com/vexxhost/magnum-cluster-api/pull/1114
        commit_id: b8a7cdc13ccec9ceb9af05b81ebaed6a0ece3e85
        patchset: b8a7cdc13ccec9ceb9af05b81ebaed6a0ece3e85
        project:
          canonical_hostname: github.com
          canonical_name: github.com/vexxhost/magnum-cluster-api
          name: vexxhost/magnum-cluster-api
          short_name: magnum-cluster-api
          src_dir: src/github.com/vexxhost/magnum-cluster-api
        src_dir: src/github.com/vexxhost/magnum-cluster-api
        topic: null
      change: '1114'
      change_message: "chore(deps): update rust crate tokio to v1.54.0\n\nThis PR
        contains the following updates:\n\n| Package | Type | Update | Change |\n|---|---|---|---|\n|
        [tokio](https://tokio.rs) ([source](https://redirect.github.com/tokio-rs/tokio))
        | dependencies | minor | `1.52.3` \u2192 `1.54.0` |\n\n---\n\n### Release
        Notes\n\n<details>\n<summary>tokio-rs/tokio (tokio)</summary>\n\n### [`v1.54.0`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.54.0):
        Tokio v1.54.0\n\n[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.53.3...tokio-1.54.0)\n\n#####
        1.54.0 (October 19th, 2026)\n\nThe 1.54.0 release includes all changes up
        to 1.53.3.\n\nThe MSRV is increased to 1.85. ([#&#8203;8514])\n\n##### Added\n\n-
        fs: add `File::set_times`, `File::set_modified`, and `fs::FileTimes` ([#&#8203;8504])\n-
        net: implement `Default` for `named_pipe::{ClientOptions, ServerOptions}`
        ([#&#8203;8378])\n- runtime: add `Builder::max_io_events_per_busy_tick` ([#&#8203;8410])\n-
        runtime: stabilize `tokio::runtime::worker_index()` ([#&#8203;8431])\n- sync:
        add `SemaphorePermit::semaphore()` ([#&#8203;8482])\n- sync: add `blocking_acquire`
        methods to `Semaphore` ([#&#8203;8269])\n- sync: add `watch::Receiver::is_closed`
        ([#&#8203;8481])\n- wasm: support JSPI for Emscripten target ([#&#8203;8285],
        [#&#8203;8627])\n- wasm: support the `wasm32-unknown-emscripten` target ([#&#8203;8281],
        [#&#8203;8422], [#&#8203;8528], [#&#8203;8628])\n\n##### Changed\n\n- fs:
        reject zero in `File::set_max_buf_size` ([#&#8203;8449])\n- io: make `copy_buf`
        cooperative ([#&#8203;8459])\n- io: panic when `BufReader` or `BufStream`
        is created with zero capacity ([#&#8203;8494])\n- io: panic when in-memory
        pipe is created with zero capacity ([#&#8203;8397])\n- io: reject zero buffer
        size in `copy_bidirectional_with_sizes` ([#&#8203;8454])\n- io: support vectored
        writes in `Sink` ([#&#8203;8663])\n- net: start `UnixStream::pair` and `UnixDatagram::pair`
        sockets as writable ([#&#8203;8444])\n- net: start accepted sockets as readable
        and writable ([#&#8203;8435])\n- net: support `UCred` on Fuchsia ([#&#8203;8257])\n-
        process: use `mio::unix::pipe` for Unix child stdio ([#&#8203;8603])\n- runtime:
        cache-pad the shared injection queue and idle state ([#&#8203;8622])\n- runtime:
        decide auto-boxing of spawned futures at monomorphization time ([#&#8203;8414])\n-
        runtime: make `enable_io` available whenever `rt` is enabled ([#&#8203;8387])\n-
        runtime: move `block_in_place` setup into a non-generic function ([#&#8203;8315])\n-
        runtime: move the multi-thread inject queue to its own mutex ([#&#8203;8382])\n-
        runtime: panic when `max_io_events_per_tick` is zero ([#&#8203;8476])\n- runtime:
        suggest `.await` in nested `block_on` panic message ([#&#8203;8501])\n- sync:
        avoid atomic reader count in broadcast slots ([#&#8203;8357])\n- sync: use
        acquire/release orderings in `Notify` ([#&#8203;8325])\n- time: remove the
        runtime handle from timers ([#&#8203;8458])\n\n##### Fixed\n\n- fs: restore
        `File` internal state when op fails ([#&#8203;8291])\n- io: complete zero-length
        memory stream operations immediately ([#&#8203;8323])\n- io: flush the writer
        when the reader stalls in `copy_buf` ([#&#8203;8424])\n- io: keep the shutdown
        bit when clearing readiness ([#&#8203;8435])\n- io: preserve the full `ScheduledIo`
        tick in readiness events ([#&#8203;8331])\n- io: read lines as bytes so a
        partial line survives an I/O error ([#&#8203;8400])\n- io: retry on `ErrorKind::Interrupted`
        in more I/O operations ([#&#8203;8417], [#&#8203;8432], [#&#8203;8448], [#&#8203;8453],
        [#&#8203;8455], [#&#8203;8460])\n- io: use `spawn_mandatory_blocking` for
        stdout and stderr ([#&#8203;8506])\n- io: wait for pending operations before
        `BufReader` seeks ([#&#8203;8599])\n- net: close `CreateFileW` handle on `SetNamedPipeHandleState`
        failure ([#&#8203;8418])\n- net: fix peer credentials on NetBSD ([#&#8203;8589])\n-
        net: saturate `TcpSocket` and `UnixSocket` listen backlog ([#&#8203;8511])\n-
        net: treat `ENOTCONN` as success in `UnixStream::shutdown` ([#&#8203;8526])\n-
        runtime: allow building with `--all-features` without `tokio_unstable` ([#&#8203;8401])\n-
        runtime: avoid overflow in `shutdown_timeout()` ([#&#8203;8497])\n- runtime:
        fix `spawn_blocking` hang when only scheduler workers exist ([#&#8203;8408])\n-
        runtime: fix misleading signal driver panic message ([#&#8203;8419])\n- sync:
        preserve FIFO lock order when coop budget is exhausted ([#&#8203;8371])\n-
        sync: use `usize` for permit count in `SemaphorePermit` ([#&#8203;8405])\n-
        time: avoid interval deadline overflow ([#&#8203;8385])\n- time: handle wrapped
        top-level timer-wheel slots ([#&#8203;8334])\n\n##### Unstable\n\n- fs: fall
        back when `io_uring` has no IO driver ([#&#8203;8165])\n- metrics: cap log
        histogram precision ([#&#8203;8496])\n- runtime: add an opt-in sharded `spawn_blocking`
        queue ([#&#8203;8337])\n- runtime: expose schedule latency in task hooks ([#&#8203;8282])\n-
        taskdump: fix idle bookkeeping when a task dump wakes parked workers ([#&#8203;8372])\n-
        taskdump: skip non-idle tasks during taskdumps ([#&#8203;8568])\n\n##### Documented\n\n-
        docs: fix stray braces and broken links in rustdoc ([#&#8203;8605])\n- fs:
        document cancellation behavior of `tokio::fs` ([#&#8203;8265])\n- net: add
        Safety docs for named pipe `from_raw_handle` ([#&#8203;8378])\n- net: document
        that `TcpStream::connect` returns only the last error ([#&#8203;8421])\n-
        runtime: add error documentation for `runtime::Builder` ([#&#8203;8297])\n-
        runtime: link `available_parallelism` in worker count docs ([#&#8203;8625])\n-
        sync: clarify panic behavior of `broadcast::channel()` ([#&#8203;8420])\n-
        sync: fix typo in `Semaphore` documentation ([#&#8203;8521])\n\n[#&#8203;8165]:
        https://redirect.github.com/tokio-rs/tokio/pull/8165\n\n[#&#8203;8257]: https://redirect.github.com/tokio-rs/tokio/pull/8257\n\n[#&#8203;8265]:
        https://redirect.github.com/tokio-rs/tokio/pull/8265\n\n[#&#8203;8269]: https://redirect.github.com/tokio-rs/tokio/pull/8269\n\n[#&#8203;8281]:
        https://redirect.github.com/tokio-rs/tokio/pull/8281\n\n[#&#8203;8282]: https://redirect.github.com/tokio-rs/tokio/pull/8282\n\n[#&#8203;8285]:
        https://redirect.github.com/tokio-rs/tokio/pull/8285\n\n[#&#8203;8291]: https://redirect.github.com/tokio-rs/tokio/pull/8291\n\n[#&#8203;8297]:
        https://redirect.github.com/tokio-rs/tokio/pull/8297\n\n[#&#8203;8315]: https://redirect.github.com/tokio-rs/tokio/pull/8315\n\n[#&#8203;8323]:
        https://redirect.github.com/tokio-rs/tokio/pull/8323\n\n[#&#8203;8325]: https://redirect.github.com/tokio-rs/tokio/pull/8325\n\n[#&#8203;8331]:
        https://redirect.github.com/tokio-rs/tokio/pull/8331\n\n[#&#8203;8334]: https://redirect.github.com/tokio-rs/tokio/pull/8334\n\n[#&#8203;8337]:
        https://redirect.github.com/tokio-rs/tokio/pull/8337\n\n[#&#8203;8357]: https://redirect.github.com/tokio-rs/tokio/pull/8357\n\n[#&#8203;8371]:
        https://redirect.github.com/tokio-rs/tokio/pull/8371\n\n[#&#8203;8372]: https://redirect.github.com/tokio-rs/tokio/pull/8372\n\n[#&#8203;8378]:
        https://redirect.github.com/tokio-rs/tokio/pull/8378\n\n[#&#8203;8382]: https://redirect.github.com/tokio-rs/tokio/pull/8382\n\n[#&#8203;8385]:
        https://redirect.github.com/tokio-rs/tokio/pull/8385\n\n[#&#8203;8387]: https://redirect.github.com/tokio-rs/tokio/pull/8387\n\n[#&#8203;8397]:
        https://redirect.github.com/tokio-rs/tokio/pull/8397\n\n[#&#8203;8400]: https://redirect.github.com/tokio-rs/tokio/pull/8400\n\n[#&#8203;8401]:
        https://redirect.github.com/tokio-rs/tokio/pull/8401\n\n[#&#8203;8405]: https://redirect.github.com/tokio-rs/tokio/pull/8405\n\n[#&#8203;8408]:
        https://redirect.github.com/tokio-rs/tokio/pull/8408\n\n[#&#8203;8410]: https://redirect.github.com/tokio-rs/tokio/pull/8410\n\n[#&#8203;8414]:
        https://redirect.github.com/tokio-rs/tokio/pull/8414\n\n[#&#8203;8417]: https://redirect.github.com/tokio-rs/tokio/pull/8417\n\n[#&#8203;8418]:
        https://redirect.github.com/tokio-rs/tokio/pull/8418\n\n[#&#8203;8419]: https://redirect.github.com/tokio-rs/tokio/pull/8419\n\n[#&#8203;8420]:
        https://redirect.github.com/tokio-rs/tokio/pull/8420\n\n[#&#8203;8421]: https://redirect.github.com/tokio-rs/tokio/pull/8421\n\n[#&#8203;8422]:
        https://redirect.github.com/tokio-rs/tokio/pull/8422\n\n[#&#8203;8424]: https://redirect.github.com/tokio-rs/tokio/pull/8424\n\n[#&#8203;8431]:
        https://redirect.github.com/tokio-rs/tokio/pull/8431\n\n[#&#8203;8432]: https://redirect.github.com/tokio-rs/tokio/pull/8432\n\n[#&#8203;8435]:
        https://redirect.github.com/tokio-rs/tokio/pull/8435\n\n[#&#8203;8444]: https://redirect.github.com/tokio-rs/tokio/pull/8444\n\n[#&#8203;8448]:
        https://redirect.github.com/tokio-rs/tokio/pull/8448\n\n[#&#8203;8449]: https://redirect.github.com/tokio-rs/tokio/pull/8449\n\n[#&#8203;8453]:
        https://redirect.github.com/tokio-rs/tokio/pull/8453\n\n[#&#8203;8454]: https://redirect.github.com/tokio-rs/tokio/pull/8454\n\n[#&#8203;8455]:
        https://redirect.github.com/tokio-rs/tokio/pull/8455\n\n[#&#8203;8458]: https://redirect.github.com/tokio-rs/tokio/pull/8458\n\n[#&#8203;8459]:
        https://redirect.github.com/tokio-rs/tokio/pull/8459\n\n[#&#8203;8460]: https://redirect.github.com/tokio-rs/tokio/pull/8460\n\n[#&#8203;8476]:
        https://redirect.github.com/tokio-rs/tokio/pull/8476\n\n[#&#8203;8481]: https://redirect.github.com/tokio-rs/tokio/pull/8481\n\n[#&#8203;8482]:
        https://redirect.github.com/tokio-rs/tokio/pull/8482\n\n[#&#8203;8494]: https://redirect.github.com/tokio-rs/tokio/pull/8494\n\n[#&#8203;8496]:
        https://redirect.github.com/tokio-rs/tokio/pull/8496\n\n[#&#8203;8497]: https://redirect.github.com/tokio-rs/tokio/pull/8497\n\n[#&#8203;8501]:
        https://redirect.github.com/tokio-rs/tokio/pull/8501\n\n[#&#8203;8504]: https://redirect.github.com/tokio-rs/tokio/pull/8504\n\n[#&#8203;8506]:
        https://redirect.github.com/tokio-rs/tokio/pull/8506\n\n[#&#8203;8511]: https://redirect.github.com/tokio-rs/tokio/pull/8511\n\n[#&#8203;8514]:
        https://redirect.github.com/tokio-rs/tokio/pull/8514\n\n[#&#8203;8521]: https://redirect.github.com/tokio-rs/tokio/pull/8521\n\n[#&#8203;8526]:
        https://redirect.github.com/tokio-rs/tokio/pull/8526\n\n[#&#8203;8528]: https://redirect.github.com/tokio-rs/tokio/pull/8528\n\n[#&#8203;8568]:
        https://redirect.github.com/tokio-rs/tokio/pull/8568\n\n[#&#8203;8589]: https://redirect.github.com/tokio-rs/tokio/pull/8589\n\n[#&#8203;8599]:
        https://redirect.github.com/tokio-rs/tokio/pull/8599\n\n[#&#8203;8603]: https://redirect.github.com/tokio-rs/tokio/pull/8603\n\n[#&#8203;8605]:
        https://redirect.github.com/tokio-rs/tokio/pull/8605\n\n[#&#8203;8622]: https://redirect.github.com/tokio-rs/tokio/pull/8622\n\n[#&#8203;8625]:
        https://redirect.github.com/tokio-rs/tokio/pull/8625\n\n[#&#8203;8627]: https://redirect.github.com/tokio-rs/tokio/pull/8627\n\n[#&#8203;8628]:
        https://redirect.github.com/tokio-rs/tokio/pull/8628\n\n[#&#8203;8663]: https://redirect.github.com/tokio-rs/tokio/pull/8663\n\n###
        [`v1.53.3`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.53.3):
        Tokio v1.53.3\n\n[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.53.2...tokio-1.53.3)\n\n#####
        1.53.3 (October 13th, 2026)\n\n##### Added\n\n- io: add `AsyncFd::register`
        and `AsyncFd::register_with_interest` ([#&#8203;8587])\n\n##### Changed\n\n-
        io: deprecate `AsyncFd::{new, with_interest, try_new, try_with_interest}`
        ([#&#8203;8587])\n\n##### Fixed\n\n- io: wake and drop `DuplexStream` wakers
        outside the lock ([#&#8203;8618])\n- macros: avoid `unreachable_code` in `join!`
        and `try_join!` for `Infallible` ([#&#8203;8518])\n- runtime: fix paused time
        auto-advancing when I/O wakes a task on `current_thread` ([#&#8203;8595])\n-
        sync: wake waiters outside the lock when closing a semaphore ([#&#8203;8529])\n-
        test: fix several flaky tests ([#&#8203;8196], [#&#8203;8427], [#&#8203;8609])\n\n#####
        Fixed (unstable)\n\n- rt: keep `io_uring` op alive when submission fails after
        push ([#&#8203;8185])\n\n[#&#8203;8185]: https://redirect.github.com/tokio-rs/tokio/pull/8185\n\n[#&#8203;8196]:
        https://redirect.github.com/tokio-rs/tokio/pull/8196\n\n[#&#8203;8427]: https://redirect.github.com/tokio-rs/tokio/pull/8427\n\n[#&#8203;8518]:
        https://redirect.github.com/tokio-rs/tokio/pull/8518\n\n[#&#8203;8529]: https://redirect.github.com/tokio-rs/tokio/pull/8529\n\n[#&#8203;8587]:
        https://redirect.github.com/tokio-rs/tokio/pull/8587\n\n[#&#8203;8595]: https://redirect.github.com/tokio-rs/tokio/pull/8595\n\n[#&#8203;8609]:
        https://redirect.github.com/tokio-rs/tokio/pull/8609\n\n[#&#8203;8618]: https://redirect.github.com/tokio-rs/tokio/pull/8618\n\n###
        [`v1.53.2`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.53.2):
        Tokio v1.53.2\n\n[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.53.1...tokio-1.53.2)\n\n###
        1.53.2 (October 3rd, 2026)\n\n##### Fixed\n\n- fs: handle integer overflow
        in buffered relative seek ([#&#8203;8574])\n- io: revert \"always cleanup
        `AsyncFd` registration list on deregister\" ([#&#8203;8540])\n- process: unregister
        Windows wait before closing child handle ([#&#8203;8564])\n- rt: drop blocking
        pool mutex before shutting down rejected task ([#&#8203;8562])\n- sync: fix
        mpsc index wraparound in block reclamation ([#&#8203;8546])\n- sync: forget
        mpsc `Permit` before sending value ([#&#8203;8560])\n- sync: validate `MAX_PERMITS`
        in `Semaphore::acquire` ([#&#8203;8548])\n- sync: wake broadcast `Sender::closed`
        outside mutex ([#&#8203;8558])\n- task: drop replaced waker outside lock in
        `JoinSet` ([#&#8203;8554])\n- time: drop timer lock before dropping waker
        in `clear_entry` ([#&#8203;8552])\n- time: expire timers directly on shutdown
        without rotating wheel ([#&#8203;8570])\n\n##### Fixed (unstable)\n\n- fs:
        clamp `io_uring` read length to `u32::MAX` ([#&#8203;8572])\n- rt: ignore
        `current_thread` task dumps from other runtimes ([#&#8203;8544])\n- rt: preserve
        `io_uring` context if a completion waker panics ([#&#8203;8566])\n- sync:
        fix semaphore use-after-free and permit leak on tracing panic ([#&#8203;8542])\n-
        taskdump: restore deferred leaf wakes during capture ([#&#8203;8445])\n- time:
        drop stored waker when cancelling alt timer entry ([#&#8203;8550])\n\n[#&#8203;8445]:
        https://redirect.github.com/tokio-rs/tokio/pull/8445\n\n[#&#8203;8572]: https://redirect.github.com/tokio-rs/tokio/pull/8572\n\n[#&#8203;8540]:
        https://redirect.github.com/tokio-rs/tokio/pull/8540\n\n[#&#8203;8542]: https://redirect.github.com/tokio-rs/tokio/pull/8542\n\n[#&#8203;8544]:
        https://redirect.github.com/tokio-rs/tokio/pull/8544\n\n[#&#8203;8546]: https://redirect.github.com/tokio-rs/tokio/pull/8546\n\n[#&#8203;8548]:
        https://redirect.github.com/tokio-rs/tokio/pull/8548\n\n[#&#8203;8550]: https://redirect.github.com/tokio-rs/tokio/pull/8550\n\n[#&#8203;8552]:
        https://redirect.github.com/tokio-rs/tokio/pull/8552\n\n[#&#8203;8554]: https://redirect.github.com/tokio-rs/tokio/pull/8554\n\n[#&#8203;8558]:
        https://redirect.github.com/tokio-rs/tokio/pull/8558\n\n[#&#8203;8560]: https://redirect.github.com/tokio-rs/tokio/pull/8560\n\n[#&#8203;8562]:
        https://redirect.github.com/tokio-rs/tokio/pull/8562\n\n[#&#8203;8564]: https://redirect.github.com/tokio-rs/tokio/pull/8564\n\n[#&#8203;8566]:
        https://redirect.github.com/tokio-rs/tokio/pull/8566\n\n[#&#8203;8570]: https://redirect.github.com/tokio-rs/tokio/pull/8570\n\n[#&#8203;8574]:
        https://redirect.github.com/tokio-rs/tokio/pull/8574\n\n### [`v1.53.1`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.53.1):
        Tokio v1.53.1\n\n[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.53.0...tokio-1.53.1)\n\n#####
        1.53.1 (July 20th, 2026)\n\n##### Fixed\n\n- signal: restore MSRV by removing
        `OnceLock::wait` from the Windows handler ([#&#8203;8300])\n\n##### Fixed
        (unstable)\n\n- time: fix alt timer cancellation and insertion race ([#&#8203;8252])\n\n#####
        Documented\n\n- runtime: remove dead link definition in Runtime::block_on
        ([#&#8203;8301])\n\n[#&#8203;8252]: https://redirect.github.com/tokio-rs/tokio/pull/8252\n\n[#&#8203;8300]:
        https://redirect.github.com/tokio-rs/tokio/pull/8300\n\n[#&#8203;8301]: https://redirect.github.com/tokio-rs/tokio/pull/8301\n\n###
        [`v1.53.0`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.53.0):
        Tokio v1.53.0\n\n[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.52.4...tokio-1.53.0)\n\n###
        1.53.0 (July 17th, 2026)\n\n##### Added\n\n- fs: implement `From<OwnedFd>`
        and `From<OwnedHandle>` for `File` ([#&#8203;8266])\n- metrics: add task schedule
        latency metric ([#&#8203;7986])\n- net: add `SocketAddr` methods to Unix sockets
        ([#&#8203;8144])\n\n##### Changed\n\n- io: add `#[inline]` to IO trait impls
        for in-memory types ([#&#8203;8242])\n- net: implement UCred::pid on FreeBSD
        ([#&#8203;8086])\n- net: support Nuttx target os ([#&#8203;8259])\n- signal:
        refactor global variables on Windows ([#&#8203;8231])\n- sync: `mpsc::{Receiver,UnboundedReceiver}`
        now drops waker on drop, even if there are still senders ([#&#8203;8095])\n-
        taskdump: support taskdumps on s390x ([#&#8203;8192])\n- time: add `#[track_caller]`
        to `timeout_at()` ([#&#8203;8077])\n- time: consolidate mutex locks on spurious
        poll ([#&#8203;8124])\n- time: defer waker clone on spurious poll ([#&#8203;8107])\n-
        time: move lazy-registration state into `Sleep` ([#&#8203;8132])\n- tracing:
        remove unnecessary span clone ([#&#8203;8126])\n\n##### Fixed\n\n- io: do
        not treat zero-length reads as EOF in `Chain` ([#&#8203;8251])\n- net: use
        getpeereid for QNX peer credentials ([#&#8203;8270])\n- runtime: avoid illegal
        state in `FastRand` ([#&#8203;8078])\n- sync: wake mpsc receiver when a queued
        `reserve[_many]` returns permits ([#&#8203;8260])\n- taskdump: skip double
        wake on `Trace::capture`/`Trace::trace_with` ([#&#8203;8043])\n- time: avoid
        stack overflow in runtime constructor ([#&#8203;8093])\n- time (alt timer):
        ensure timers stay in the same runtime after `.reset()` ([#&#8203;8169])\n\n#####
        IO uring (unstable)\n\n- fs: use io-uring for `fs::try_exists` ([#&#8203;8080])\n-
        fs: use io-uring for renaming files ([#&#8203;7800])\n- rt: flush io-uring
        CQE in case of CQE overflow ([#&#8203;8277])\n\n##### Documented\n\n- docs:
        clarify cancel safety wording ([#&#8203;8181])\n- fs: clarify `create_dir_all`
        succeeds if path exists ([#&#8203;8149])\n- io: add warning about stdout reordering
        with multiple handles ([#&#8203;8276])\n- net: document pipe `try_read*`/`try_write*`
        readiness behavior ([#&#8203;8032])\n- runtime: document interaction with
        fork() ([#&#8203;8202])\n- sync: clarify broadcast lagging semantics ([#&#8203;8239])\n-
        sync: document memory ordering guarantees for Semaphore ([#&#8203;8119])\n-
        task: explain why `yield_now` defers its waker ([#&#8203;8254])\n- time: add
        panic docs to `timeout_at()` ([#&#8203;8077])\n- time: fix reversed poll order
        in timeout doc ([#&#8203;8214])\n\n[#&#8203;7800]: https://redirect.github.com/tokio-rs/tokio/pull/7800\n\n[#&#8203;7986]:
        https://redirect.github.com/tokio-rs/tokio/pull/7986\n\n[#&#8203;8032]: https://redirect.github.com/tokio-rs/tokio/pull/8032\n\n[#&#8203;8043]:
        https://redirect.github.com/tokio-rs/tokio/pull/8043\n\n[#&#8203;8077]: https://redirect.github.com/tokio-rs/tokio/pull/8077\n\n[#&#8203;8078]:
        https://redirect.github.com/tokio-rs/tokio/pull/8078\n\n[#&#8203;8080]: https://redirect.github.com/tokio-rs/tokio/pull/8080\n\n[#&#8203;8086]:
        https://redirect.github.com/tokio-rs/tokio/pull/8086\n\n[#&#8203;8093]: https://redirect.github.com/tokio-rs/tokio/pull/8093\n\n[#&#8203;8095]:
        https://redirect.github.com/tokio-rs/tokio/pull/8095\n\n[#&#8203;8107]: https://redirect.github.com/tokio-rs/tokio/pull/8107\n\n[#&#8203;8119]:
        https://redirect.github.com/tokio-rs/tokio/pull/8119\n\n[#&#8203;8124]: https://redirect.github.com/tokio-rs/tokio/pull/8124\n\n[#&#8203;8126]:
        https://redirect.github.com/tokio-rs/tokio/pull/8126\n\n[#&#8203;8132]: https://redirect.github.com/tokio-rs/tokio/pull/8132\n\n[#&#8203;8144]:
        https://redirect.github.com/tokio-rs/tokio/pull/8144\n\n[#&#8203;8149]: https://redirect.github.com/tokio-rs/tokio/pull/8149\n\n[#&#8203;8169]:
        https://redirect.github.com/tokio-rs/tokio/pull/8169\n\n[#&#8203;8181]: https://redirect.github.com/tokio-rs/tokio/pull/8181\n\n[#&#8203;8192]:
        https://redirect.github.com/tokio-rs/tokio/pull/8192\n\n[#&#8203;8193]: https://redirect.github.com/tokio-rs/tokio/pull/8193\n\n[#&#8203;8202]:
        https://redirect.github.com/tokio-rs/tokio/pull/8202\n\n[#&#8203;8214]: https://redirect.github.com/tokio-rs/tokio/pull/8214\n\n[#&#8203;8231]:
        https://redirect.github.com/tokio-rs/tokio/pull/8231\n\n[#&#8203;8239]: https://redirect.github.com/tokio-rs/tokio/pull/8239\n\n[#&#8203;8242]:
        https://redirect.github.com/tokio-rs/tokio/pull/8242\n\n[#&#8203;8251]: https://redirect.github.com/tokio-rs/tokio/pull/8251\n\n[#&#8203;8254]:
        https://redirect.github.com/tokio-rs/tokio/pull/8254\n\n[#&#8203;8259]: https://redirect.github.com/tokio-rs/tokio/pull/8259\n\n[#&#8203;8260]:
        https://redirect.github.com/tokio-rs/tokio/pull/8260\n\n[#&#8203;8266]: https://redirect.github.com/tokio-rs/tokio/pull/8266\n\n[#&#8203;8270]:
        https://redirect.github.com/tokio-rs/tokio/pull/8270\n\n[#&#8203;8276]: https://redirect.github.com/tokio-rs/tokio/pull/8276\n\n[#&#8203;8277]:
        https://redirect.github.com/tokio-rs/tokio/pull/8277\n\n### [`v1.52.4`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.52.4):
        Tokio v1.52.4\n\n[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.52.3...tokio-1.52.4)\n\n#####
        1.52.4 (July 16th, 2026)\n\n##### Fixed\n\n- runtime: don't skip the driver
        when `before_park` schedules work ([#&#8203;8222])\n\n##### Fixed (unstable)\n\n-
        taskdump: remove crate disambiguators from output ([#&#8203;8264])\n\n[#&#8203;8264]:
        https://redirect.github.com/tokio-rs/tokio/pull/8264\n\n[#&#8203;8222]: https://redirect.github.com/tokio-rs/tokio/pull/8222\n\n</details>\n\n---\n\n###
        Configuration\n\n\U0001F4C5 **Schedule**: (UTC)\n\n- Branch creation\n  -
        At any time (no schedule defined)\n- Automerge\n  - At any time (no schedule
        defined)\n\n\U0001F6A6 **Automerge**: Disabled by config. Please merge this
        manually once you are satisfied.\n\n\u267B **Rebasing**: Whenever PR becomes
        conflicted, or you tick the rebase/retry checkbox.\n\n\U0001F515 **Ignore**:
        Close this PR and you won't be reminded about this update again.\n\n---\n\n
        - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this
        box\n\n---\n\nThis PR was generated by [Mend Renovate](https://mend.io/renovate/).
        View the [repository job log](https://developer.mend.io/github/vexxhost/magnum-cluster-api).\n<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNjUuMSIsInVwZGF0ZWRJblZlciI6IjQ0LjE3MS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->\n"
      change_url: https://github.com/vexxhost/magnum-cluster-api/pull/1114
      child_jobs: []
      commit_id: b8a7cdc13ccec9ceb9af05b81ebaed6a0ece3e85
      event_id: 8196c920-ccac-11f1-8213-18af826e2c11
      executor:
        hostname: 2d72f0692154
        inventory_file: /var/lib/zuul/builds/c358842f5e4e49b9ac41aead3b8367a2/ansible/inventory.yaml
        log_root: /var/lib/zuul/builds/c358842f5e4e49b9ac41aead3b8367a2/work/logs
        result_data_file: /var/lib/zuul/builds/c358842f5e4e49b9ac41aead3b8367a2/work/results.json
        src_root: /var/lib/zuul/builds/c358842f5e4e49b9ac41aead3b8367a2/work/src
        work_root: /var/lib/zuul/builds/c358842f5e4e49b9ac41aead3b8367a2/work
      include_vars: []
      items:
      - branch: main
        change: '1114'
        change_message: "chore(deps): update rust crate tokio to v1.54.0\n\nThis PR
          contains the following updates:\n\n| Package | Type | Update | Change |\n|---|---|---|---|\n|
          [tokio](https://tokio.rs) ([source](https://redirect.github.com/tokio-rs/tokio))
          | dependencies | minor | `1.52.3` \u2192 `1.54.0` |\n\n---\n\n### Release
          Notes\n\n<details>\n<summary>tokio-rs/tokio (tokio)</summary>\n\n### [`v1.54.0`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.54.0):
          Tokio v1.54.0\n\n[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.53.3...tokio-1.54.0)\n\n#####
          1.54.0 (October 19th, 2026)\n\nThe 1.54.0 release includes all changes up
          to 1.53.3.\n\nThe MSRV is increased to 1.85. ([#&#8203;8514])\n\n##### Added\n\n-
          fs: add `File::set_times`, `File::set_modified`, and `fs::FileTimes` ([#&#8203;8504])\n-
          net: implement `Default` for `named_pipe::{ClientOptions, ServerOptions}`
          ([#&#8203;8378])\n- runtime: add `Builder::max_io_events_per_busy_tick`
          ([#&#8203;8410])\n- runtime: stabilize `tokio::runtime::worker_index()`
          ([#&#8203;8431])\n- sync: add `SemaphorePermit::semaphore()` ([#&#8203;8482])\n-
          sync: add `blocking_acquire` methods to `Semaphore` ([#&#8203;8269])\n-
          sync: add `watch::Receiver::is_closed` ([#&#8203;8481])\n- wasm: support
          JSPI for Emscripten target ([#&#8203;8285], [#&#8203;8627])\n- wasm: support
          the `wasm32-unknown-emscripten` target ([#&#8203;8281], [#&#8203;8422],
          [#&#8203;8528], [#&#8203;8628])\n\n##### Changed\n\n- fs: reject zero in
          `File::set_max_buf_size` ([#&#8203;8449])\n- io: make `copy_buf` cooperative
          ([#&#8203;8459])\n- io: panic when `BufReader` or `BufStream` is created
          with zero capacity ([#&#8203;8494])\n- io: panic when in-memory pipe is
          created with zero capacity ([#&#8203;8397])\n- io: reject zero buffer size
          in `copy_bidirectional_with_sizes` ([#&#8203;8454])\n- io: support vectored
          writes in `Sink` ([#&#8203;8663])\n- net: start `UnixStream::pair` and `UnixDatagram::pair`
          sockets as writable ([#&#8203;8444])\n- net: start accepted sockets as readable
          and writable ([#&#8203;8435])\n- net: support `UCred` on Fuchsia ([#&#8203;8257])\n-
          process: use `mio::unix::pipe` for Unix child stdio ([#&#8203;8603])\n-
          runtime: cache-pad the shared injection queue and idle state ([#&#8203;8622])\n-
          runtime: decide auto-boxing of spawned futures at monomorphization time
          ([#&#8203;8414])\n- runtime: make `enable_io` available whenever `rt` is
          enabled ([#&#8203;8387])\n- runtime: move `block_in_place` setup into a
          non-generic function ([#&#8203;8315])\n- runtime: move the multi-thread
          inject queue to its own mutex ([#&#8203;8382])\n- runtime: panic when `max_io_events_per_tick`
          is zero ([#&#8203;8476])\n- runtime: suggest `.await` in nested `block_on`
          panic message ([#&#8203;8501])\n- sync: avoid atomic reader count in broadcast
          slots ([#&#8203;8357])\n- sync: use acquire/release orderings in `Notify`
          ([#&#8203;8325])\n- time: remove the runtime handle from timers ([#&#8203;8458])\n\n#####
          Fixed\n\n- fs: restore `File` internal state when op fails ([#&#8203;8291])\n-
          io: complete zero-length memory stream operations immediately ([#&#8203;8323])\n-
          io: flush the writer when the reader stalls in `copy_buf` ([#&#8203;8424])\n-
          io: keep the shutdown bit when clearing readiness ([#&#8203;8435])\n- io:
          preserve the full `ScheduledIo` tick in readiness events ([#&#8203;8331])\n-
          io: read lines as bytes so a partial line survives an I/O error ([#&#8203;8400])\n-
          io: retry on `ErrorKind::Interrupted` in more I/O operations ([#&#8203;8417],
          [#&#8203;8432], [#&#8203;8448], [#&#8203;8453], [#&#8203;8455], [#&#8203;8460])\n-
          io: use `spawn_mandatory_blocking` for stdout and stderr ([#&#8203;8506])\n-
          io: wait for pending operations before `BufReader` seeks ([#&#8203;8599])\n-
          net: close `CreateFileW` handle on `SetNamedPipeHandleState` failure ([#&#8203;8418])\n-
          net: fix peer credentials on NetBSD ([#&#8203;8589])\n- net: saturate `TcpSocket`
          and `UnixSocket` listen backlog ([#&#8203;8511])\n- net: treat `ENOTCONN`
          as success in `UnixStream::shutdown` ([#&#8203;8526])\n- runtime: allow
          building with `--all-features` without `tokio_unstable` ([#&#8203;8401])\n-
          runtime: avoid overflow in `shutdown_timeout()` ([#&#8203;8497])\n- runtime:
          fix `spawn_blocking` hang when only scheduler workers exist ([#&#8203;8408])\n-
          runtime: fix misleading signal driver panic message ([#&#8203;8419])\n-
          sync: preserve FIFO lock order when coop budget is exhausted ([#&#8203;8371])\n-
          sync: use `usize` for permit count in `SemaphorePermit` ([#&#8203;8405])\n-
          time: avoid interval deadline overflow ([#&#8203;8385])\n- time: handle
          wrapped top-level timer-wheel slots ([#&#8203;8334])\n\n##### Unstable\n\n-
          fs: fall back when `io_uring` has no IO driver ([#&#8203;8165])\n- metrics:
          cap log histogram precision ([#&#8203;8496])\n- runtime: add an opt-in sharded
          `spawn_blocking` queue ([#&#8203;8337])\n- runtime: expose schedule latency
          in task hooks ([#&#8203;8282])\n- taskdump: fix idle bookkeeping when a
          task dump wakes parked workers ([#&#8203;8372])\n- taskdump: skip non-idle
          tasks during taskdumps ([#&#8203;8568])\n\n##### Documented\n\n- docs: fix
          stray braces and broken links in rustdoc ([#&#8203;8605])\n- fs: document
          cancellation behavior of `tokio::fs` ([#&#8203;8265])\n- net: add Safety
          docs for named pipe `from_raw_handle` ([#&#8203;8378])\n- net: document
          that `TcpStream::connect` returns only the last error ([#&#8203;8421])\n-
          runtime: add error documentation for `runtime::Builder` ([#&#8203;8297])\n-
          runtime: link `available_parallelism` in worker count docs ([#&#8203;8625])\n-
          sync: clarify panic behavior of `broadcast::channel()` ([#&#8203;8420])\n-
          sync: fix typo in `Semaphore` documentation ([#&#8203;8521])\n\n[#&#8203;8165]:
          https://redirect.github.com/tokio-rs/tokio/pull/8165\n\n[#&#8203;8257]:
          https://redirect.github.com/tokio-rs/tokio/pull/8257\n\n[#&#8203;8265]:
          https://redirect.github.com/tokio-rs/tokio/pull/8265\n\n[#&#8203;8269]:
          https://redirect.github.com/tokio-rs/tokio/pull/8269\n\n[#&#8203;8281]:
          https://redirect.github.com/tokio-rs/tokio/pull/8281\n\n[#&#8203;8282]:
          https://redirect.github.com/tokio-rs/tokio/pull/8282\n\n[#&#8203;8285]:
          https://redirect.github.com/tokio-rs/tokio/pull/8285\n\n[#&#8203;8291]:
          https://redirect.github.com/tokio-rs/tokio/pull/8291\n\n[#&#8203;8297]:
          https://redirect.github.com/tokio-rs/tokio/pull/8297\n\n[#&#8203;8315]:
          https://redirect.github.com/tokio-rs/tokio/pull/8315\n\n[#&#8203;8323]:
          https://redirect.github.com/tokio-rs/tokio/pull/8323\n\n[#&#8203;8325]:
          https://redirect.github.com/tokio-rs/tokio/pull/8325\n\n[#&#8203;8331]:
          https://redirect.github.com/tokio-rs/tokio/pull/8331\n\n[#&#8203;8334]:
          https://redirect.github.com/tokio-rs/tokio/pull/8334\n\n[#&#8203;8337]:
          https://redirect.github.com/tokio-rs/tokio/pull/8337\n\n[#&#8203;8357]:
          https://redirect.github.com/tokio-rs/tokio/pull/8357\n\n[#&#8203;8371]:
          https://redirect.github.com/tokio-rs/tokio/pull/8371\n\n[#&#8203;8372]:
          https://redirect.github.com/tokio-rs/tokio/pull/8372\n\n[#&#8203;8378]:
          https://redirect.github.com/tokio-rs/tokio/pull/8378\n\n[#&#8203;8382]:
          https://redirect.github.com/tokio-rs/tokio/pull/8382\n\n[#&#8203;8385]:
          https://redirect.github.com/tokio-rs/tokio/pull/8385\n\n[#&#8203;8387]:
          https://redirect.github.com/tokio-rs/tokio/pull/8387\n\n[#&#8203;8397]:
          https://redirect.github.com/tokio-rs/tokio/pull/8397\n\n[#&#8203;8400]:
          https://redirect.github.com/tokio-rs/tokio/pull/8400\n\n[#&#8203;8401]:
          https://redirect.github.com/tokio-rs/tokio/pull/8401\n\n[#&#8203;8405]:
          https://redirect.github.com/tokio-rs/tokio/pull/8405\n\n[#&#8203;8408]:
          https://redirect.github.com/tokio-rs/tokio/pull/8408\n\n[#&#8203;8410]:
          https://redirect.github.com/tokio-rs/tokio/pull/8410\n\n[#&#8203;8414]:
          https://redirect.github.com/tokio-rs/tokio/pull/8414\n\n[#&#8203;8417]:
          https://redirect.github.com/tokio-rs/tokio/pull/8417\n\n[#&#8203;8418]:
          https://redirect.github.com/tokio-rs/tokio/pull/8418\n\n[#&#8203;8419]:
          https://redirect.github.com/tokio-rs/tokio/pull/8419\n\n[#&#8203;8420]:
          https://redirect.github.com/tokio-rs/tokio/pull/8420\n\n[#&#8203;8421]:
          https://redirect.github.com/tokio-rs/tokio/pull/8421\n\n[#&#8203;8422]:
          https://redirect.github.com/tokio-rs/tokio/pull/8422\n\n[#&#8203;8424]:
          https://redirect.github.com/tokio-rs/tokio/pull/8424\n\n[#&#8203;8431]:
          https://redirect.github.com/tokio-rs/tokio/pull/8431\n\n[#&#8203;8432]:
          https://redirect.github.com/tokio-rs/tokio/pull/8432\n\n[#&#8203;8435]:
          https://redirect.github.com/tokio-rs/tokio/pull/8435\n\n[#&#8203;8444]:
          https://redirect.github.com/tokio-rs/tokio/pull/8444\n\n[#&#8203;8448]:
          https://redirect.github.com/tokio-rs/tokio/pull/8448\n\n[#&#8203;8449]:
          https://redirect.github.com/tokio-rs/tokio/pull/8449\n\n[#&#8203;8453]:
          https://redirect.github.com/tokio-rs/tokio/pull/8453\n\n[#&#8203;8454]:
          https://redirect.github.com/tokio-rs/tokio/pull/8454\n\n[#&#8203;8455]:
          https://redirect.github.com/tokio-rs/tokio/pull/8455\n\n[#&#8203;8458]:
          https://redirect.github.com/tokio-rs/tokio/pull/8458\n\n[#&#8203;8459]:
          https://redirect.github.com/tokio-rs/tokio/pull/8459\n\n[#&#8203;8460]:
          https://redirect.github.com/tokio-rs/tokio/pull/8460\n\n[#&#8203;8476]:
          https://redirect.github.com/tokio-rs/tokio/pull/8476\n\n[#&#8203;8481]:
          https://redirect.github.com/tokio-rs/tokio/pull/8481\n\n[#&#8203;8482]:
          https://redirect.github.com/tokio-rs/tokio/pull/8482\n\n[#&#8203;8494]:
          https://redirect.github.com/tokio-rs/tokio/pull/8494\n\n[#&#8203;8496]:
          https://redirect.github.com/tokio-rs/tokio/pull/8496\n\n[#&#8203;8497]:
          https://redirect.github.com/tokio-rs/tokio/pull/8497\n\n[#&#8203;8501]:
          https://redirect.github.com/tokio-rs/tokio/pull/8501\n\n[#&#8203;8504]:
          https://redirect.github.com/tokio-rs/tokio/pull/8504\n\n[#&#8203;8506]:
          https://redirect.github.com/tokio-rs/tokio/pull/8506\n\n[#&#8203;8511]:
          https://redirect.github.com/tokio-rs/tokio/pull/8511\n\n[#&#8203;8514]:
          https://redirect.github.com/tokio-rs/tokio/pull/8514\n\n[#&#8203;8521]:
          https://redirect.github.com/tokio-rs/tokio/pull/8521\n\n[#&#8203;8526]:
          https://redirect.github.com/tokio-rs/tokio/pull/8526\n\n[#&#8203;8528]:
          https://redirect.github.com/tokio-rs/tokio/pull/8528\n\n[#&#8203;8568]:
          https://redirect.github.com/tokio-rs/tokio/pull/8568\n\n[#&#8203;8589]:
          https://redirect.github.com/tokio-rs/tokio/pull/8589\n\n[#&#8203;8599]:
          https://redirect.github.com/tokio-rs/tokio/pull/8599\n\n[#&#8203;8603]:
          https://redirect.github.com/tokio-rs/tokio/pull/8603\n\n[#&#8203;8605]:
          https://redirect.github.com/tokio-rs/tokio/pull/8605\n\n[#&#8203;8622]:
          https://redirect.github.com/tokio-rs/tokio/pull/8622\n\n[#&#8203;8625]:
          https://redirect.github.com/tokio-rs/tokio/pull/8625\n\n[#&#8203;8627]:
          https://redirect.github.com/tokio-rs/tokio/pull/8627\n\n[#&#8203;8628]:
          https://redirect.github.com/tokio-rs/tokio/pull/8628\n\n[#&#8203;8663]:
          https://redirect.github.com/tokio-rs/tokio/pull/8663\n\n### [`v1.53.3`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.53.3):
          Tokio v1.53.3\n\n[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.53.2...tokio-1.53.3)\n\n#####
          1.53.3 (October 13th, 2026)\n\n##### Added\n\n- io: add `AsyncFd::register`
          and `AsyncFd::register_with_interest` ([#&#8203;8587])\n\n##### Changed\n\n-
          io: deprecate `AsyncFd::{new, with_interest, try_new, try_with_interest}`
          ([#&#8203;8587])\n\n##### Fixed\n\n- io: wake and drop `DuplexStream` wakers
          outside the lock ([#&#8203;8618])\n- macros: avoid `unreachable_code` in
          `join!` and `try_join!` for `Infallible` ([#&#8203;8518])\n- runtime: fix
          paused time auto-advancing when I/O wakes a task on `current_thread` ([#&#8203;8595])\n-
          sync: wake waiters outside the lock when closing a semaphore ([#&#8203;8529])\n-
          test: fix several flaky tests ([#&#8203;8196], [#&#8203;8427], [#&#8203;8609])\n\n#####
          Fixed (unstable)\n\n- rt: keep `io_uring` op alive when submission fails
          after push ([#&#8203;8185])\n\n[#&#8203;8185]: https://redirect.github.com/tokio-rs/tokio/pull/8185\n\n[#&#8203;8196]:
          https://redirect.github.com/tokio-rs/tokio/pull/8196\n\n[#&#8203;8427]:
          https://redirect.github.com/tokio-rs/tokio/pull/8427\n\n[#&#8203;8518]:
          https://redirect.github.com/tokio-rs/tokio/pull/8518\n\n[#&#8203;8529]:
          https://redirect.github.com/tokio-rs/tokio/pull/8529\n\n[#&#8203;8587]:
          https://redirect.github.com/tokio-rs/tokio/pull/8587\n\n[#&#8203;8595]:
          https://redirect.github.com/tokio-rs/tokio/pull/8595\n\n[#&#8203;8609]:
          https://redirect.github.com/tokio-rs/tokio/pull/8609\n\n[#&#8203;8618]:
          https://redirect.github.com/tokio-rs/tokio/pull/8618\n\n### [`v1.53.2`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.53.2):
          Tokio v1.53.2\n\n[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.53.1...tokio-1.53.2)\n\n###
          1.53.2 (October 3rd, 2026)\n\n##### Fixed\n\n- fs: handle integer overflow
          in buffered relative seek ([#&#8203;8574])\n- io: revert \"always cleanup
          `AsyncFd` registration list on deregister\" ([#&#8203;8540])\n- process:
          unregister Windows wait before closing child handle ([#&#8203;8564])\n-
          rt: drop blocking pool mutex before shutting down rejected task ([#&#8203;8562])\n-
          sync: fix mpsc index wraparound in block reclamation ([#&#8203;8546])\n-
          sync: forget mpsc `Permit` before sending value ([#&#8203;8560])\n- sync:
          validate `MAX_PERMITS` in `Semaphore::acquire` ([#&#8203;8548])\n- sync:
          wake broadcast `Sender::closed` outside mutex ([#&#8203;8558])\n- task:
          drop replaced waker outside lock in `JoinSet` ([#&#8203;8554])\n- time:
          drop timer lock before dropping waker in `clear_entry` ([#&#8203;8552])\n-
          time: expire timers directly on shutdown without rotating wheel ([#&#8203;8570])\n\n#####
          Fixed (unstable)\n\n- fs: clamp `io_uring` read length to `u32::MAX` ([#&#8203;8572])\n-
          rt: ignore `current_thread` task dumps from other runtimes ([#&#8203;8544])\n-
          rt: preserve `io_uring` context if a completion waker panics ([#&#8203;8566])\n-
          sync: fix semaphore use-after-free and permit leak on tracing panic ([#&#8203;8542])\n-
          taskdump: restore deferred leaf wakes during capture ([#&#8203;8445])\n-
          time: drop stored waker when cancelling alt timer entry ([#&#8203;8550])\n\n[#&#8203;8445]:
          https://redirect.github.com/tokio-rs/tokio/pull/8445\n\n[#&#8203;8572]:
          https://redirect.github.com/tokio-rs/tokio/pull/8572\n\n[#&#8203;8540]:
          https://redirect.github.com/tokio-rs/tokio/pull/8540\n\n[#&#8203;8542]:
          https://redirect.github.com/tokio-rs/tokio/pull/8542\n\n[#&#8203;8544]:
          https://redirect.github.com/tokio-rs/tokio/pull/8544\n\n[#&#8203;8546]:
          https://redirect.github.com/tokio-rs/tokio/pull/8546\n\n[#&#8203;8548]:
          https://redirect.github.com/tokio-rs/tokio/pull/8548\n\n[#&#8203;8550]:
          https://redirect.github.com/tokio-rs/tokio/pull/8550\n\n[#&#8203;8552]:
          https://redirect.github.com/tokio-rs/tokio/pull/8552\n\n[#&#8203;8554]:
          https://redirect.github.com/tokio-rs/tokio/pull/8554\n\n[#&#8203;8558]:
          https://redirect.github.com/tokio-rs/tokio/pull/8558\n\n[#&#8203;8560]:
          https://redirect.github.com/tokio-rs/tokio/pull/8560\n\n[#&#8203;8562]:
          https://redirect.github.com/tokio-rs/tokio/pull/8562\n\n[#&#8203;8564]:
          https://redirect.github.com/tokio-rs/tokio/pull/8564\n\n[#&#8203;8566]:
          https://redirect.github.com/tokio-rs/tokio/pull/8566\n\n[#&#8203;8570]:
          https://redirect.github.com/tokio-rs/tokio/pull/8570\n\n[#&#8203;8574]:
          https://redirect.github.com/tokio-rs/tokio/pull/8574\n\n### [`v1.53.1`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.53.1):
          Tokio v1.53.1\n\n[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.53.0...tokio-1.53.1)\n\n#####
          1.53.1 (July 20th, 2026)\n\n##### Fixed\n\n- signal: restore MSRV by removing
          `OnceLock::wait` from the Windows handler ([#&#8203;8300])\n\n##### Fixed
          (unstable)\n\n- time: fix alt timer cancellation and insertion race ([#&#8203;8252])\n\n#####
          Documented\n\n- runtime: remove dead link definition in Runtime::block_on
          ([#&#8203;8301])\n\n[#&#8203;8252]: https://redirect.github.com/tokio-rs/tokio/pull/8252\n\n[#&#8203;8300]:
          https://redirect.github.com/tokio-rs/tokio/pull/8300\n\n[#&#8203;8301]:
          https://redirect.github.com/tokio-rs/tokio/pull/8301\n\n### [`v1.53.0`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.53.0):
          Tokio v1.53.0\n\n[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.52.4...tokio-1.53.0)\n\n###
          1.53.0 (July 17th, 2026)\n\n##### Added\n\n- fs: implement `From<OwnedFd>`
          and `From<OwnedHandle>` for `File` ([#&#8203;8266])\n- metrics: add task
          schedule latency metric ([#&#8203;7986])\n- net: add `SocketAddr` methods
          to Unix sockets ([#&#8203;8144])\n\n##### Changed\n\n- io: add `#[inline]`
          to IO trait impls for in-memory types ([#&#8203;8242])\n- net: implement
          UCred::pid on FreeBSD ([#&#8203;8086])\n- net: support Nuttx target os ([#&#8203;8259])\n-
          signal: refactor global variables on Windows ([#&#8203;8231])\n- sync: `mpsc::{Receiver,UnboundedReceiver}`
          now drops waker on drop, even if there are still senders ([#&#8203;8095])\n-
          taskdump: support taskdumps on s390x ([#&#8203;8192])\n- time: add `#[track_caller]`
          to `timeout_at()` ([#&#8203;8077])\n- time: consolidate mutex locks on spurious
          poll ([#&#8203;8124])\n- time: defer waker clone on spurious poll ([#&#8203;8107])\n-
          time: move lazy-registration state into `Sleep` ([#&#8203;8132])\n- tracing:
          remove unnecessary span clone ([#&#8203;8126])\n\n##### Fixed\n\n- io: do
          not treat zero-length reads as EOF in `Chain` ([#&#8203;8251])\n- net: use
          getpeereid for QNX peer credentials ([#&#8203;8270])\n- runtime: avoid illegal
          state in `FastRand` ([#&#8203;8078])\n- sync: wake mpsc receiver when a
          queued `reserve[_many]` returns permits ([#&#8203;8260])\n- taskdump: skip
          double wake on `Trace::capture`/`Trace::trace_with` ([#&#8203;8043])\n-
          time: avoid stack overflow in runtime constructor ([#&#8203;8093])\n- time
          (alt timer): ensure timers stay in the same runtime after `.reset()` ([#&#8203;8169])\n\n#####
          IO uring (unstable)\n\n- fs: use io-uring for `fs::try_exists` ([#&#8203;8080])\n-
          fs: use io-uring for renaming files ([#&#8203;7800])\n- rt: flush io-uring
          CQE in case of CQE overflow ([#&#8203;8277])\n\n##### Documented\n\n- docs:
          clarify cancel safety wording ([#&#8203;8181])\n- fs: clarify `create_dir_all`
          succeeds if path exists ([#&#8203;8149])\n- io: add warning about stdout
          reordering with multiple handles ([#&#8203;8276])\n- net: document pipe
          `try_read*`/`try_write*` readiness behavior ([#&#8203;8032])\n- runtime:
          document interaction with fork() ([#&#8203;8202])\n- sync: clarify broadcast
          lagging semantics ([#&#8203;8239])\n- sync: document memory ordering guarantees
          for Semaphore ([#&#8203;8119])\n- task: explain why `yield_now` defers its
          waker ([#&#8203;8254])\n- time: add panic docs to `timeout_at()` ([#&#8203;8077])\n-
          time: fix reversed poll order in timeout doc ([#&#8203;8214])\n\n[#&#8203;7800]:
          https://redirect.github.com/tokio-rs/tokio/pull/7800\n\n[#&#8203;7986]:
          https://redirect.github.com/tokio-rs/tokio/pull/7986\n\n[#&#8203;8032]:
          https://redirect.github.com/tokio-rs/tokio/pull/8032\n\n[#&#8203;8043]:
          https://redirect.github.com/tokio-rs/tokio/pull/8043\n\n[#&#8203;8077]:
          https://redirect.github.com/tokio-rs/tokio/pull/8077\n\n[#&#8203;8078]:
          https://redirect.github.com/tokio-rs/tokio/pull/8078\n\n[#&#8203;8080]:
          https://redirect.github.com/tokio-rs/tokio/pull/8080\n\n[#&#8203;8086]:
          https://redirect.github.com/tokio-rs/tokio/pull/8086\n\n[#&#8203;8093]:
          https://redirect.github.com/tokio-rs/tokio/pull/8093\n\n[#&#8203;8095]:
          https://redirect.github.com/tokio-rs/tokio/pull/8095\n\n[#&#8203;8107]:
          https://redirect.github.com/tokio-rs/tokio/pull/8107\n\n[#&#8203;8119]:
          https://redirect.github.com/tokio-rs/tokio/pull/8119\n\n[#&#8203;8124]:
          https://redirect.github.com/tokio-rs/tokio/pull/8124\n\n[#&#8203;8126]:
          https://redirect.github.com/tokio-rs/tokio/pull/8126\n\n[#&#8203;8132]:
          https://redirect.github.com/tokio-rs/tokio/pull/8132\n\n[#&#8203;8144]:
          https://redirect.github.com/tokio-rs/tokio/pull/8144\n\n[#&#8203;8149]:
          https://redirect.github.com/tokio-rs/tokio/pull/8149\n\n[#&#8203;8169]:
          https://redirect.github.com/tokio-rs/tokio/pull/8169\n\n[#&#8203;8181]:
          https://redirect.github.com/tokio-rs/tokio/pull/8181\n\n[#&#8203;8192]:
          https://redirect.github.com/tokio-rs/tokio/pull/8192\n\n[#&#8203;8193]:
          https://redirect.github.com/tokio-rs/tokio/pull/8193\n\n[#&#8203;8202]:
          https://redirect.github.com/tokio-rs/tokio/pull/8202\n\n[#&#8203;8214]:
          https://redirect.github.com/tokio-rs/tokio/pull/8214\n\n[#&#8203;8231]:
          https://redirect.github.com/tokio-rs/tokio/pull/8231\n\n[#&#8203;8239]:
          https://redirect.github.com/tokio-rs/tokio/pull/8239\n\n[#&#8203;8242]:
          https://redirect.github.com/tokio-rs/tokio/pull/8242\n\n[#&#8203;8251]:
          https://redirect.github.com/tokio-rs/tokio/pull/8251\n\n[#&#8203;8254]:
          https://redirect.github.com/tokio-rs/tokio/pull/8254\n\n[#&#8203;8259]:
          https://redirect.github.com/tokio-rs/tokio/pull/8259\n\n[#&#8203;8260]:
          https://redirect.github.com/tokio-rs/tokio/pull/8260\n\n[#&#8203;8266]:
          https://redirect.github.com/tokio-rs/tokio/pull/8266\n\n[#&#8203;8270]:
          https://redirect.github.com/tokio-rs/tokio/pull/8270\n\n[#&#8203;8276]:
          https://redirect.github.com/tokio-rs/tokio/pull/8276\n\n[#&#8203;8277]:
          https://redirect.github.com/tokio-rs/tokio/pull/8277\n\n### [`v1.52.4`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.52.4):
          Tokio v1.52.4\n\n[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.52.3...tokio-1.52.4)\n\n#####
          1.52.4 (July 16th, 2026)\n\n##### Fixed\n\n- runtime: don't skip the driver
          when `before_park` schedules work ([#&#8203;8222])\n\n##### Fixed (unstable)\n\n-
          taskdump: remove crate disambiguators from output ([#&#8203;8264])\n\n[#&#8203;8264]:
          https://redirect.github.com/tokio-rs/tokio/pull/8264\n\n[#&#8203;8222]:
          https://redirect.github.com/tokio-rs/tokio/pull/8222\n\n</details>\n\n---\n\n###
          Configuration\n\n\U0001F4C5 **Schedule**: (UTC)\n\n- Branch creation\n  -
          At any time (no schedule defined)\n- Automerge\n  - At any time (no schedule
          defined)\n\n\U0001F6A6 **Automerge**: Disabled by config. Please merge this
          manually once you are satisfied.\n\n\u267B **Rebasing**: Whenever PR becomes
          conflicted, or you tick the rebase/retry checkbox.\n\n\U0001F515 **Ignore**:
          Close this PR and you won't be reminded about this update again.\n\n---\n\n
          - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this
          box\n\n---\n\nThis PR was generated by [Mend Renovate](https://mend.io/renovate/).
          View the [repository job log](https://developer.mend.io/github/vexxhost/magnum-cluster-api).\n<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNjUuMSIsInVwZGF0ZWRJblZlciI6IjQ0LjE3MS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->\n"
        change_url: https://github.com/vexxhost/magnum-cluster-api/pull/1114
        commit_id: b8a7cdc13ccec9ceb9af05b81ebaed6a0ece3e85
        patchset: b8a7cdc13ccec9ceb9af05b81ebaed6a0ece3e85
        project:
          canonical_hostname: github.com
          canonical_name: github.com/vexxhost/magnum-cluster-api
          name: vexxhost/magnum-cluster-api
          short_name: magnum-cluster-api
          src_dir: src/github.com/vexxhost/magnum-cluster-api
        topic: null
      job: magnum-cluster-api-hydrophone-v1.35.5-calico
      jobtags: []
      max_attempts: 3
      message: Y2hvcmUoZGVwcyk6IHVwZGF0ZSBydXN0IGNyYXRlIHRva2lvIHRvIHYxLjU0LjAKClRoaXMgUFIgY29udGFpbnMgdGhlIGZvbGxvd2luZyB1cGRhdGVzOgoKfCBQYWNrYWdlIHwgVHlwZSB8IFVwZGF0ZSB8IENoYW5nZSB8CnwtLS18LS0tfC0tLXwtLS18CnwgW3Rva2lvXShodHRwczovL3Rva2lvLnJzKSAoW3NvdXJjZV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvKSkgfCBkZXBlbmRlbmNpZXMgfCBtaW5vciB8IGAxLjUyLjNgIOKGkiBgMS41NC4wYCB8CgotLS0KCiMjIyBSZWxlYXNlIE5vdGVzCgo8ZGV0YWlscz4KPHN1bW1hcnk+dG9raW8tcnMvdG9raW8gKHRva2lvKTwvc3VtbWFyeT4KCiMjIyBbYHYxLjU0LjBgXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcmVsZWFzZXMvdGFnL3Rva2lvLTEuNTQuMCk6IFRva2lvIHYxLjU0LjAKCltDb21wYXJlIFNvdXJjZV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL2NvbXBhcmUvdG9raW8tMS41My4zLi4udG9raW8tMS41NC4wKQoKIyMjIyMgMS41NC4wIChPY3RvYmVyIDE5dGgsIDIwMjYpCgpUaGUgMS41NC4wIHJlbGVhc2UgaW5jbHVkZXMgYWxsIGNoYW5nZXMgdXAgdG8gMS41My4zLgoKVGhlIE1TUlYgaXMgaW5jcmVhc2VkIHRvIDEuODUuIChbIyYjODIwMzs4NTE0XSkKCiMjIyMjIEFkZGVkCgotIGZzOiBhZGQgYEZpbGU6OnNldF90aW1lc2AsIGBGaWxlOjpzZXRfbW9kaWZpZWRgLCBhbmQgYGZzOjpGaWxlVGltZXNgIChbIyYjODIwMzs4NTA0XSkKLSBuZXQ6IGltcGxlbWVudCBgRGVmYXVsdGAgZm9yIGBuYW1lZF9waXBlOjp7Q2xpZW50T3B0aW9ucywgU2VydmVyT3B0aW9uc31gIChbIyYjODIwMzs4Mzc4XSkKLSBydW50aW1lOiBhZGQgYEJ1aWxkZXI6Om1heF9pb19ldmVudHNfcGVyX2J1c3lfdGlja2AgKFsjJiM4MjAzOzg0MTBdKQotIHJ1bnRpbWU6IHN0YWJpbGl6ZSBgdG9raW86OnJ1bnRpbWU6Ondvcmtlcl9pbmRleCgpYCAoWyMmIzgyMDM7ODQzMV0pCi0gc3luYzogYWRkIGBTZW1hcGhvcmVQZXJtaXQ6OnNlbWFwaG9yZSgpYCAoWyMmIzgyMDM7ODQ4Ml0pCi0gc3luYzogYWRkIGBibG9ja2luZ19hY3F1aXJlYCBtZXRob2RzIHRvIGBTZW1hcGhvcmVgIChbIyYjODIwMzs4MjY5XSkKLSBzeW5jOiBhZGQgYHdhdGNoOjpSZWNlaXZlcjo6aXNfY2xvc2VkYCAoWyMmIzgyMDM7ODQ4MV0pCi0gd2FzbTogc3VwcG9ydCBKU1BJIGZvciBFbXNjcmlwdGVuIHRhcmdldCAoWyMmIzgyMDM7ODI4NV0sIFsjJiM4MjAzOzg2MjddKQotIHdhc206IHN1cHBvcnQgdGhlIGB3YXNtMzItdW5rbm93bi1lbXNjcmlwdGVuYCB0YXJnZXQgKFsjJiM4MjAzOzgyODFdLCBbIyYjODIwMzs4NDIyXSwgWyMmIzgyMDM7ODUyOF0sIFsjJiM4MjAzOzg2MjhdKQoKIyMjIyMgQ2hhbmdlZAoKLSBmczogcmVqZWN0IHplcm8gaW4gYEZpbGU6OnNldF9tYXhfYnVmX3NpemVgIChbIyYjODIwMzs4NDQ5XSkKLSBpbzogbWFrZSBgY29weV9idWZgIGNvb3BlcmF0aXZlIChbIyYjODIwMzs4NDU5XSkKLSBpbzogcGFuaWMgd2hlbiBgQnVmUmVhZGVyYCBvciBgQnVmU3RyZWFtYCBpcyBjcmVhdGVkIHdpdGggemVybyBjYXBhY2l0eSAoWyMmIzgyMDM7ODQ5NF0pCi0gaW86IHBhbmljIHdoZW4gaW4tbWVtb3J5IHBpcGUgaXMgY3JlYXRlZCB3aXRoIHplcm8gY2FwYWNpdHkgKFsjJiM4MjAzOzgzOTddKQotIGlvOiByZWplY3QgemVybyBidWZmZXIgc2l6ZSBpbiBgY29weV9iaWRpcmVjdGlvbmFsX3dpdGhfc2l6ZXNgIChbIyYjODIwMzs4NDU0XSkKLSBpbzogc3VwcG9ydCB2ZWN0b3JlZCB3cml0ZXMgaW4gYFNpbmtgIChbIyYjODIwMzs4NjYzXSkKLSBuZXQ6IHN0YXJ0IGBVbml4U3RyZWFtOjpwYWlyYCBhbmQgYFVuaXhEYXRhZ3JhbTo6cGFpcmAgc29ja2V0cyBhcyB3cml0YWJsZSAoWyMmIzgyMDM7ODQ0NF0pCi0gbmV0OiBzdGFydCBhY2NlcHRlZCBzb2NrZXRzIGFzIHJlYWRhYmxlIGFuZCB3cml0YWJsZSAoWyMmIzgyMDM7ODQzNV0pCi0gbmV0OiBzdXBwb3J0IGBVQ3JlZGAgb24gRnVjaHNpYSAoWyMmIzgyMDM7ODI1N10pCi0gcHJvY2VzczogdXNlIGBtaW86OnVuaXg6OnBpcGVgIGZvciBVbml4IGNoaWxkIHN0ZGlvIChbIyYjODIwMzs4NjAzXSkKLSBydW50aW1lOiBjYWNoZS1wYWQgdGhlIHNoYXJlZCBpbmplY3Rpb24gcXVldWUgYW5kIGlkbGUgc3RhdGUgKFsjJiM4MjAzOzg2MjJdKQotIHJ1bnRpbWU6IGRlY2lkZSBhdXRvLWJveGluZyBvZiBzcGF3bmVkIGZ1dHVyZXMgYXQgbW9ub21vcnBoaXphdGlvbiB0aW1lIChbIyYjODIwMzs4NDE0XSkKLSBydW50aW1lOiBtYWtlIGBlbmFibGVfaW9gIGF2YWlsYWJsZSB3aGVuZXZlciBgcnRgIGlzIGVuYWJsZWQgKFsjJiM4MjAzOzgzODddKQotIHJ1bnRpbWU6IG1vdmUgYGJsb2NrX2luX3BsYWNlYCBzZXR1cCBpbnRvIGEgbm9uLWdlbmVyaWMgZnVuY3Rpb24gKFsjJiM4MjAzOzgzMTVdKQotIHJ1bnRpbWU6IG1vdmUgdGhlIG11bHRpLXRocmVhZCBpbmplY3QgcXVldWUgdG8gaXRzIG93biBtdXRleCAoWyMmIzgyMDM7ODM4Ml0pCi0gcnVudGltZTogcGFuaWMgd2hlbiBgbWF4X2lvX2V2ZW50c19wZXJfdGlja2AgaXMgemVybyAoWyMmIzgyMDM7ODQ3Nl0pCi0gcnVudGltZTogc3VnZ2VzdCBgLmF3YWl0YCBpbiBuZXN0ZWQgYGJsb2NrX29uYCBwYW5pYyBtZXNzYWdlIChbIyYjODIwMzs4NTAxXSkKLSBzeW5jOiBhdm9pZCBhdG9taWMgcmVhZGVyIGNvdW50IGluIGJyb2FkY2FzdCBzbG90cyAoWyMmIzgyMDM7ODM1N10pCi0gc3luYzogdXNlIGFjcXVpcmUvcmVsZWFzZSBvcmRlcmluZ3MgaW4gYE5vdGlmeWAgKFsjJiM4MjAzOzgzMjVdKQotIHRpbWU6IHJlbW92ZSB0aGUgcnVudGltZSBoYW5kbGUgZnJvbSB0aW1lcnMgKFsjJiM4MjAzOzg0NThdKQoKIyMjIyMgRml4ZWQKCi0gZnM6IHJlc3RvcmUgYEZpbGVgIGludGVybmFsIHN0YXRlIHdoZW4gb3AgZmFpbHMgKFsjJiM4MjAzOzgyOTFdKQotIGlvOiBjb21wbGV0ZSB6ZXJvLWxlbmd0aCBtZW1vcnkgc3RyZWFtIG9wZXJhdGlvbnMgaW1tZWRpYXRlbHkgKFsjJiM4MjAzOzgzMjNdKQotIGlvOiBmbHVzaCB0aGUgd3JpdGVyIHdoZW4gdGhlIHJlYWRlciBzdGFsbHMgaW4gYGNvcHlfYnVmYCAoWyMmIzgyMDM7ODQyNF0pCi0gaW86IGtlZXAgdGhlIHNodXRkb3duIGJpdCB3aGVuIGNsZWFyaW5nIHJlYWRpbmVzcyAoWyMmIzgyMDM7ODQzNV0pCi0gaW86IHByZXNlcnZlIHRoZSBmdWxsIGBTY2hlZHVsZWRJb2AgdGljayBpbiByZWFkaW5lc3MgZXZlbnRzIChbIyYjODIwMzs4MzMxXSkKLSBpbzogcmVhZCBsaW5lcyBhcyBieXRlcyBzbyBhIHBhcnRpYWwgbGluZSBzdXJ2aXZlcyBhbiBJL08gZXJyb3IgKFsjJiM4MjAzOzg0MDBdKQotIGlvOiByZXRyeSBvbiBgRXJyb3JLaW5kOjpJbnRlcnJ1cHRlZGAgaW4gbW9yZSBJL08gb3BlcmF0aW9ucyAoWyMmIzgyMDM7ODQxN10sIFsjJiM4MjAzOzg0MzJdLCBbIyYjODIwMzs4NDQ4XSwgWyMmIzgyMDM7ODQ1M10sIFsjJiM4MjAzOzg0NTVdLCBbIyYjODIwMzs4NDYwXSkKLSBpbzogdXNlIGBzcGF3bl9tYW5kYXRvcnlfYmxvY2tpbmdgIGZvciBzdGRvdXQgYW5kIHN0ZGVyciAoWyMmIzgyMDM7ODUwNl0pCi0gaW86IHdhaXQgZm9yIHBlbmRpbmcgb3BlcmF0aW9ucyBiZWZvcmUgYEJ1ZlJlYWRlcmAgc2Vla3MgKFsjJiM4MjAzOzg1OTldKQotIG5ldDogY2xvc2UgYENyZWF0ZUZpbGVXYCBoYW5kbGUgb24gYFNldE5hbWVkUGlwZUhhbmRsZVN0YXRlYCBmYWlsdXJlIChbIyYjODIwMzs4NDE4XSkKLSBuZXQ6IGZpeCBwZWVyIGNyZWRlbnRpYWxzIG9uIE5ldEJTRCAoWyMmIzgyMDM7ODU4OV0pCi0gbmV0OiBzYXR1cmF0ZSBgVGNwU29ja2V0YCBhbmQgYFVuaXhTb2NrZXRgIGxpc3RlbiBiYWNrbG9nIChbIyYjODIwMzs4NTExXSkKLSBuZXQ6IHRyZWF0IGBFTk9UQ09OTmAgYXMgc3VjY2VzcyBpbiBgVW5peFN0cmVhbTo6c2h1dGRvd25gIChbIyYjODIwMzs4NTI2XSkKLSBydW50aW1lOiBhbGxvdyBidWlsZGluZyB3aXRoIGAtLWFsbC1mZWF0dXJlc2Agd2l0aG91dCBgdG9raW9fdW5zdGFibGVgIChbIyYjODIwMzs4NDAxXSkKLSBydW50aW1lOiBhdm9pZCBvdmVyZmxvdyBpbiBgc2h1dGRvd25fdGltZW91dCgpYCAoWyMmIzgyMDM7ODQ5N10pCi0gcnVudGltZTogZml4IGBzcGF3bl9ibG9ja2luZ2AgaGFuZyB3aGVuIG9ubHkgc2NoZWR1bGVyIHdvcmtlcnMgZXhpc3QgKFsjJiM4MjAzOzg0MDhdKQotIHJ1bnRpbWU6IGZpeCBtaXNsZWFkaW5nIHNpZ25hbCBkcml2ZXIgcGFuaWMgbWVzc2FnZSAoWyMmIzgyMDM7ODQxOV0pCi0gc3luYzogcHJlc2VydmUgRklGTyBsb2NrIG9yZGVyIHdoZW4gY29vcCBidWRnZXQgaXMgZXhoYXVzdGVkIChbIyYjODIwMzs4MzcxXSkKLSBzeW5jOiB1c2UgYHVzaXplYCBmb3IgcGVybWl0IGNvdW50IGluIGBTZW1hcGhvcmVQZXJtaXRgIChbIyYjODIwMzs4NDA1XSkKLSB0aW1lOiBhdm9pZCBpbnRlcnZhbCBkZWFkbGluZSBvdmVyZmxvdyAoWyMmIzgyMDM7ODM4NV0pCi0gdGltZTogaGFuZGxlIHdyYXBwZWQgdG9wLWxldmVsIHRpbWVyLXdoZWVsIHNsb3RzIChbIyYjODIwMzs4MzM0XSkKCiMjIyMjIFVuc3RhYmxlCgotIGZzOiBmYWxsIGJhY2sgd2hlbiBgaW9fdXJpbmdgIGhhcyBubyBJTyBkcml2ZXIgKFsjJiM4MjAzOzgxNjVdKQotIG1ldHJpY3M6IGNhcCBsb2cgaGlzdG9ncmFtIHByZWNpc2lvbiAoWyMmIzgyMDM7ODQ5Nl0pCi0gcnVudGltZTogYWRkIGFuIG9wdC1pbiBzaGFyZGVkIGBzcGF3bl9ibG9ja2luZ2AgcXVldWUgKFsjJiM4MjAzOzgzMzddKQotIHJ1bnRpbWU6IGV4cG9zZSBzY2hlZHVsZSBsYXRlbmN5IGluIHRhc2sgaG9va3MgKFsjJiM4MjAzOzgyODJdKQotIHRhc2tkdW1wOiBmaXggaWRsZSBib29ra2VlcGluZyB3aGVuIGEgdGFzayBkdW1wIHdha2VzIHBhcmtlZCB3b3JrZXJzIChbIyYjODIwMzs4MzcyXSkKLSB0YXNrZHVtcDogc2tpcCBub24taWRsZSB0YXNrcyBkdXJpbmcgdGFza2R1bXBzIChbIyYjODIwMzs4NTY4XSkKCiMjIyMjIERvY3VtZW50ZWQKCi0gZG9jczogZml4IHN0cmF5IGJyYWNlcyBhbmQgYnJva2VuIGxpbmtzIGluIHJ1c3Rkb2MgKFsjJiM4MjAzOzg2MDVdKQotIGZzOiBkb2N1bWVudCBjYW5jZWxsYXRpb24gYmVoYXZpb3Igb2YgYHRva2lvOjpmc2AgKFsjJiM4MjAzOzgyNjVdKQotIG5ldDogYWRkIFNhZmV0eSBkb2NzIGZvciBuYW1lZCBwaXBlIGBmcm9tX3Jhd19oYW5kbGVgIChbIyYjODIwMzs4Mzc4XSkKLSBuZXQ6IGRvY3VtZW50IHRoYXQgYFRjcFN0cmVhbTo6Y29ubmVjdGAgcmV0dXJucyBvbmx5IHRoZSBsYXN0IGVycm9yIChbIyYjODIwMzs4NDIxXSkKLSBydW50aW1lOiBhZGQgZXJyb3IgZG9jdW1lbnRhdGlvbiBmb3IgYHJ1bnRpbWU6OkJ1aWxkZXJgIChbIyYjODIwMzs4Mjk3XSkKLSBydW50aW1lOiBsaW5rIGBhdmFpbGFibGVfcGFyYWxsZWxpc21gIGluIHdvcmtlciBjb3VudCBkb2NzIChbIyYjODIwMzs4NjI1XSkKLSBzeW5jOiBjbGFyaWZ5IHBhbmljIGJlaGF2aW9yIG9mIGBicm9hZGNhc3Q6OmNoYW5uZWwoKWAgKFsjJiM4MjAzOzg0MjBdKQotIHN5bmM6IGZpeCB0eXBvIGluIGBTZW1hcGhvcmVgIGRvY3VtZW50YXRpb24gKFsjJiM4MjAzOzg1MjFdKQoKWyMmIzgyMDM7ODE2NV06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzgxNjUKClsjJiM4MjAzOzgyNTddOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84MjU3CgpbIyYjODIwMzs4MjY1XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODI2NQoKWyMmIzgyMDM7ODI2OV06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzgyNjkKClsjJiM4MjAzOzgyODFdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84MjgxCgpbIyYjODIwMzs4MjgyXTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODI4MgoKWyMmIzgyMDM7ODI4NV06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzgyODUKClsjJiM4MjAzOzgyOTFdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84MjkxCgpbIyYjODIwMzs4Mjk3XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODI5NwoKWyMmIzgyMDM7ODMxNV06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzgzMTUKClsjJiM4MjAzOzgzMjNdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84MzIzCgpbIyYjODIwMzs4MzI1XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODMyNQoKWyMmIzgyMDM7ODMzMV06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzgzMzEKClsjJiM4MjAzOzgzMzRdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84MzM0CgpbIyYjODIwMzs4MzM3XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODMzNwoKWyMmIzgyMDM7ODM1N106IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzgzNTcKClsjJiM4MjAzOzgzNzFdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84MzcxCgpbIyYjODIwMzs4MzcyXTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODM3MgoKWyMmIzgyMDM7ODM3OF06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzgzNzgKClsjJiM4MjAzOzgzODJdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84MzgyCgpbIyYjODIwMzs4Mzg1XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODM4NQoKWyMmIzgyMDM7ODM4N106IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzgzODcKClsjJiM4MjAzOzgzOTddOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84Mzk3CgpbIyYjODIwMzs4NDAwXTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODQwMAoKWyMmIzgyMDM7ODQwMV06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg0MDEKClsjJiM4MjAzOzg0MDVdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84NDA1CgpbIyYjODIwMzs4NDA4XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODQwOAoKWyMmIzgyMDM7ODQxMF06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg0MTAKClsjJiM4MjAzOzg0MTRdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84NDE0CgpbIyYjODIwMzs4NDE3XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODQxNwoKWyMmIzgyMDM7ODQxOF06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg0MTgKClsjJiM4MjAzOzg0MTldOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84NDE5CgpbIyYjODIwMzs4NDIwXTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODQyMAoKWyMmIzgyMDM7ODQyMV06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg0MjEKClsjJiM4MjAzOzg0MjJdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84NDIyCgpbIyYjODIwMzs4NDI0XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODQyNAoKWyMmIzgyMDM7ODQzMV06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg0MzEKClsjJiM4MjAzOzg0MzJdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84NDMyCgpbIyYjODIwMzs4NDM1XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODQzNQoKWyMmIzgyMDM7ODQ0NF06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg0NDQKClsjJiM4MjAzOzg0NDhdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84NDQ4CgpbIyYjODIwMzs4NDQ5XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODQ0OQoKWyMmIzgyMDM7ODQ1M106IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg0NTMKClsjJiM4MjAzOzg0NTRdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84NDU0CgpbIyYjODIwMzs4NDU1XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODQ1NQoKWyMmIzgyMDM7ODQ1OF06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg0NTgKClsjJiM4MjAzOzg0NTldOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84NDU5CgpbIyYjODIwMzs4NDYwXTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODQ2MAoKWyMmIzgyMDM7ODQ3Nl06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg0NzYKClsjJiM4MjAzOzg0ODFdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84NDgxCgpbIyYjODIwMzs4NDgyXTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODQ4MgoKWyMmIzgyMDM7ODQ5NF06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg0OTQKClsjJiM4MjAzOzg0OTZdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84NDk2CgpbIyYjODIwMzs4NDk3XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODQ5NwoKWyMmIzgyMDM7ODUwMV06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg1MDEKClsjJiM4MjAzOzg1MDRdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84NTA0CgpbIyYjODIwMzs4NTA2XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODUwNgoKWyMmIzgyMDM7ODUxMV06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg1MTEKClsjJiM4MjAzOzg1MTRdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84NTE0CgpbIyYjODIwMzs4NTIxXTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODUyMQoKWyMmIzgyMDM7ODUyNl06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg1MjYKClsjJiM4MjAzOzg1MjhdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84NTI4CgpbIyYjODIwMzs4NTY4XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODU2OAoKWyMmIzgyMDM7ODU4OV06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg1ODkKClsjJiM4MjAzOzg1OTldOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84NTk5CgpbIyYjODIwMzs4NjAzXTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODYwMwoKWyMmIzgyMDM7ODYwNV06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg2MDUKClsjJiM4MjAzOzg2MjJdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84NjIyCgpbIyYjODIwMzs4NjI1XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODYyNQoKWyMmIzgyMDM7ODYyN106IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg2MjcKClsjJiM4MjAzOzg2MjhdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84NjI4CgpbIyYjODIwMzs4NjYzXTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODY2MwoKIyMjIFtgdjEuNTMuM2BdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9yZWxlYXNlcy90YWcvdG9raW8tMS41My4zKTogVG9raW8gdjEuNTMuMwoKW0NvbXBhcmUgU291cmNlXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vY29tcGFyZS90b2tpby0xLjUzLjIuLi50b2tpby0xLjUzLjMpCgojIyMjIyAxLjUzLjMgKE9jdG9iZXIgMTN0aCwgMjAyNikKCiMjIyMjIEFkZGVkCgotIGlvOiBhZGQgYEFzeW5jRmQ6OnJlZ2lzdGVyYCBhbmQgYEFzeW5jRmQ6OnJlZ2lzdGVyX3dpdGhfaW50ZXJlc3RgIChbIyYjODIwMzs4NTg3XSkKCiMjIyMjIENoYW5nZWQKCi0gaW86IGRlcHJlY2F0ZSBgQXN5bmNGZDo6e25ldywgd2l0aF9pbnRlcmVzdCwgdHJ5X25ldywgdHJ5X3dpdGhfaW50ZXJlc3R9YCAoWyMmIzgyMDM7ODU4N10pCgojIyMjIyBGaXhlZAoKLSBpbzogd2FrZSBhbmQgZHJvcCBgRHVwbGV4U3RyZWFtYCB3YWtlcnMgb3V0c2lkZSB0aGUgbG9jayAoWyMmIzgyMDM7ODYxOF0pCi0gbWFjcm9zOiBhdm9pZCBgdW5yZWFjaGFibGVfY29kZWAgaW4gYGpvaW4hYCBhbmQgYHRyeV9qb2luIWAgZm9yIGBJbmZhbGxpYmxlYCAoWyMmIzgyMDM7ODUxOF0pCi0gcnVudGltZTogZml4IHBhdXNlZCB0aW1lIGF1dG8tYWR2YW5jaW5nIHdoZW4gSS9PIHdha2VzIGEgdGFzayBvbiBgY3VycmVudF90aHJlYWRgIChbIyYjODIwMzs4NTk1XSkKLSBzeW5jOiB3YWtlIHdhaXRlcnMgb3V0c2lkZSB0aGUgbG9jayB3aGVuIGNsb3NpbmcgYSBzZW1hcGhvcmUgKFsjJiM4MjAzOzg1MjldKQotIHRlc3Q6IGZpeCBzZXZlcmFsIGZsYWt5IHRlc3RzIChbIyYjODIwMzs4MTk2XSwgWyMmIzgyMDM7ODQyN10sIFsjJiM4MjAzOzg2MDldKQoKIyMjIyMgRml4ZWQgKHVuc3RhYmxlKQoKLSBydDoga2VlcCBgaW9fdXJpbmdgIG9wIGFsaXZlIHdoZW4gc3VibWlzc2lvbiBmYWlscyBhZnRlciBwdXNoIChbIyYjODIwMzs4MTg1XSkKClsjJiM4MjAzOzgxODVdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84MTg1CgpbIyYjODIwMzs4MTk2XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODE5NgoKWyMmIzgyMDM7ODQyN106IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg0MjcKClsjJiM4MjAzOzg1MThdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84NTE4CgpbIyYjODIwMzs4NTI5XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODUyOQoKWyMmIzgyMDM7ODU4N106IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg1ODcKClsjJiM4MjAzOzg1OTVdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84NTk1CgpbIyYjODIwMzs4NjA5XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODYwOQoKWyMmIzgyMDM7ODYxOF06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg2MTgKCiMjIyBbYHYxLjUzLjJgXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcmVsZWFzZXMvdGFnL3Rva2lvLTEuNTMuMik6IFRva2lvIHYxLjUzLjIKCltDb21wYXJlIFNvdXJjZV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL2NvbXBhcmUvdG9raW8tMS41My4xLi4udG9raW8tMS41My4yKQoKIyMjIDEuNTMuMiAoT2N0b2JlciAzcmQsIDIwMjYpCgojIyMjIyBGaXhlZAoKLSBmczogaGFuZGxlIGludGVnZXIgb3ZlcmZsb3cgaW4gYnVmZmVyZWQgcmVsYXRpdmUgc2VlayAoWyMmIzgyMDM7ODU3NF0pCi0gaW86IHJldmVydCAiYWx3YXlzIGNsZWFudXAgYEFzeW5jRmRgIHJlZ2lzdHJhdGlvbiBsaXN0IG9uIGRlcmVnaXN0ZXIiIChbIyYjODIwMzs4NTQwXSkKLSBwcm9jZXNzOiB1bnJlZ2lzdGVyIFdpbmRvd3Mgd2FpdCBiZWZvcmUgY2xvc2luZyBjaGlsZCBoYW5kbGUgKFsjJiM4MjAzOzg1NjRdKQotIHJ0OiBkcm9wIGJsb2NraW5nIHBvb2wgbXV0ZXggYmVmb3JlIHNodXR0aW5nIGRvd24gcmVqZWN0ZWQgdGFzayAoWyMmIzgyMDM7ODU2Ml0pCi0gc3luYzogZml4IG1wc2MgaW5kZXggd3JhcGFyb3VuZCBpbiBibG9jayByZWNsYW1hdGlvbiAoWyMmIzgyMDM7ODU0Nl0pCi0gc3luYzogZm9yZ2V0IG1wc2MgYFBlcm1pdGAgYmVmb3JlIHNlbmRpbmcgdmFsdWUgKFsjJiM4MjAzOzg1NjBdKQotIHN5bmM6IHZhbGlkYXRlIGBNQVhfUEVSTUlUU2AgaW4gYFNlbWFwaG9yZTo6YWNxdWlyZWAgKFsjJiM4MjAzOzg1NDhdKQotIHN5bmM6IHdha2UgYnJvYWRjYXN0IGBTZW5kZXI6OmNsb3NlZGAgb3V0c2lkZSBtdXRleCAoWyMmIzgyMDM7ODU1OF0pCi0gdGFzazogZHJvcCByZXBsYWNlZCB3YWtlciBvdXRzaWRlIGxvY2sgaW4gYEpvaW5TZXRgIChbIyYjODIwMzs4NTU0XSkKLSB0aW1lOiBkcm9wIHRpbWVyIGxvY2sgYmVmb3JlIGRyb3BwaW5nIHdha2VyIGluIGBjbGVhcl9lbnRyeWAgKFsjJiM4MjAzOzg1NTJdKQotIHRpbWU6IGV4cGlyZSB0aW1lcnMgZGlyZWN0bHkgb24gc2h1dGRvd24gd2l0aG91dCByb3RhdGluZyB3aGVlbCAoWyMmIzgyMDM7ODU3MF0pCgojIyMjIyBGaXhlZCAodW5zdGFibGUpCgotIGZzOiBjbGFtcCBgaW9fdXJpbmdgIHJlYWQgbGVuZ3RoIHRvIGB1MzI6Ok1BWGAgKFsjJiM4MjAzOzg1NzJdKQotIHJ0OiBpZ25vcmUgYGN1cnJlbnRfdGhyZWFkYCB0YXNrIGR1bXBzIGZyb20gb3RoZXIgcnVudGltZXMgKFsjJiM4MjAzOzg1NDRdKQotIHJ0OiBwcmVzZXJ2ZSBgaW9fdXJpbmdgIGNvbnRleHQgaWYgYSBjb21wbGV0aW9uIHdha2VyIHBhbmljcyAoWyMmIzgyMDM7ODU2Nl0pCi0gc3luYzogZml4IHNlbWFwaG9yZSB1c2UtYWZ0ZXItZnJlZSBhbmQgcGVybWl0IGxlYWsgb24gdHJhY2luZyBwYW5pYyAoWyMmIzgyMDM7ODU0Ml0pCi0gdGFza2R1bXA6IHJlc3RvcmUgZGVmZXJyZWQgbGVhZiB3YWtlcyBkdXJpbmcgY2FwdHVyZSAoWyMmIzgyMDM7ODQ0NV0pCi0gdGltZTogZHJvcCBzdG9yZWQgd2FrZXIgd2hlbiBjYW5jZWxsaW5nIGFsdCB0aW1lciBlbnRyeSAoWyMmIzgyMDM7ODU1MF0pCgpbIyYjODIwMzs4NDQ1XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODQ0NQoKWyMmIzgyMDM7ODU3Ml06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg1NzIKClsjJiM4MjAzOzg1NDBdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84NTQwCgpbIyYjODIwMzs4NTQyXTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODU0MgoKWyMmIzgyMDM7ODU0NF06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg1NDQKClsjJiM4MjAzOzg1NDZdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84NTQ2CgpbIyYjODIwMzs4NTQ4XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODU0OAoKWyMmIzgyMDM7ODU1MF06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg1NTAKClsjJiM4MjAzOzg1NTJdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84NTUyCgpbIyYjODIwMzs4NTU0XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODU1NAoKWyMmIzgyMDM7ODU1OF06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg1NTgKClsjJiM4MjAzOzg1NjBdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84NTYwCgpbIyYjODIwMzs4NTYyXTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODU2MgoKWyMmIzgyMDM7ODU2NF06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg1NjQKClsjJiM4MjAzOzg1NjZdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84NTY2CgpbIyYjODIwMzs4NTcwXTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODU3MAoKWyMmIzgyMDM7ODU3NF06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzg1NzQKCiMjIyBbYHYxLjUzLjFgXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcmVsZWFzZXMvdGFnL3Rva2lvLTEuNTMuMSk6IFRva2lvIHYxLjUzLjEKCltDb21wYXJlIFNvdXJjZV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL2NvbXBhcmUvdG9raW8tMS41My4wLi4udG9raW8tMS41My4xKQoKIyMjIyMgMS41My4xIChKdWx5IDIwdGgsIDIwMjYpCgojIyMjIyBGaXhlZAoKLSBzaWduYWw6IHJlc3RvcmUgTVNSViBieSByZW1vdmluZyBgT25jZUxvY2s6OndhaXRgIGZyb20gdGhlIFdpbmRvd3MgaGFuZGxlciAoWyMmIzgyMDM7ODMwMF0pCgojIyMjIyBGaXhlZCAodW5zdGFibGUpCgotIHRpbWU6IGZpeCBhbHQgdGltZXIgY2FuY2VsbGF0aW9uIGFuZCBpbnNlcnRpb24gcmFjZSAoWyMmIzgyMDM7ODI1Ml0pCgojIyMjIyBEb2N1bWVudGVkCgotIHJ1bnRpbWU6IHJlbW92ZSBkZWFkIGxpbmsgZGVmaW5pdGlvbiBpbiBSdW50aW1lOjpibG9ja19vbiAoWyMmIzgyMDM7ODMwMV0pCgpbIyYjODIwMzs4MjUyXTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODI1MgoKWyMmIzgyMDM7ODMwMF06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzgzMDAKClsjJiM4MjAzOzgzMDFdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84MzAxCgojIyMgW2B2MS41My4wYF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3JlbGVhc2VzL3RhZy90b2tpby0xLjUzLjApOiBUb2tpbyB2MS41My4wCgpbQ29tcGFyZSBTb3VyY2VdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9jb21wYXJlL3Rva2lvLTEuNTIuNC4uLnRva2lvLTEuNTMuMCkKCiMjIyAxLjUzLjAgKEp1bHkgMTd0aCwgMjAyNikKCiMjIyMjIEFkZGVkCgotIGZzOiBpbXBsZW1lbnQgYEZyb208T3duZWRGZD5gIGFuZCBgRnJvbTxPd25lZEhhbmRsZT5gIGZvciBgRmlsZWAgKFsjJiM4MjAzOzgyNjZdKQotIG1ldHJpY3M6IGFkZCB0YXNrIHNjaGVkdWxlIGxhdGVuY3kgbWV0cmljIChbIyYjODIwMzs3OTg2XSkKLSBuZXQ6IGFkZCBgU29ja2V0QWRkcmAgbWV0aG9kcyB0byBVbml4IHNvY2tldHMgKFsjJiM4MjAzOzgxNDRdKQoKIyMjIyMgQ2hhbmdlZAoKLSBpbzogYWRkIGAjW2lubGluZV1gIHRvIElPIHRyYWl0IGltcGxzIGZvciBpbi1tZW1vcnkgdHlwZXMgKFsjJiM4MjAzOzgyNDJdKQotIG5ldDogaW1wbGVtZW50IFVDcmVkOjpwaWQgb24gRnJlZUJTRCAoWyMmIzgyMDM7ODA4Nl0pCi0gbmV0OiBzdXBwb3J0IE51dHR4IHRhcmdldCBvcyAoWyMmIzgyMDM7ODI1OV0pCi0gc2lnbmFsOiByZWZhY3RvciBnbG9iYWwgdmFyaWFibGVzIG9uIFdpbmRvd3MgKFsjJiM4MjAzOzgyMzFdKQotIHN5bmM6IGBtcHNjOjp7UmVjZWl2ZXIsVW5ib3VuZGVkUmVjZWl2ZXJ9YCBub3cgZHJvcHMgd2FrZXIgb24gZHJvcCwgZXZlbiBpZiB0aGVyZSBhcmUgc3RpbGwgc2VuZGVycyAoWyMmIzgyMDM7ODA5NV0pCi0gdGFza2R1bXA6IHN1cHBvcnQgdGFza2R1bXBzIG9uIHMzOTB4IChbIyYjODIwMzs4MTkyXSkKLSB0aW1lOiBhZGQgYCNbdHJhY2tfY2FsbGVyXWAgdG8gYHRpbWVvdXRfYXQoKWAgKFsjJiM4MjAzOzgwNzddKQotIHRpbWU6IGNvbnNvbGlkYXRlIG11dGV4IGxvY2tzIG9uIHNwdXJpb3VzIHBvbGwgKFsjJiM4MjAzOzgxMjRdKQotIHRpbWU6IGRlZmVyIHdha2VyIGNsb25lIG9uIHNwdXJpb3VzIHBvbGwgKFsjJiM4MjAzOzgxMDddKQotIHRpbWU6IG1vdmUgbGF6eS1yZWdpc3RyYXRpb24gc3RhdGUgaW50byBgU2xlZXBgIChbIyYjODIwMzs4MTMyXSkKLSB0cmFjaW5nOiByZW1vdmUgdW5uZWNlc3Nhcnkgc3BhbiBjbG9uZSAoWyMmIzgyMDM7ODEyNl0pCgojIyMjIyBGaXhlZAoKLSBpbzogZG8gbm90IHRyZWF0IHplcm8tbGVuZ3RoIHJlYWRzIGFzIEVPRiBpbiBgQ2hhaW5gIChbIyYjODIwMzs4MjUxXSkKLSBuZXQ6IHVzZSBnZXRwZWVyZWlkIGZvciBRTlggcGVlciBjcmVkZW50aWFscyAoWyMmIzgyMDM7ODI3MF0pCi0gcnVudGltZTogYXZvaWQgaWxsZWdhbCBzdGF0ZSBpbiBgRmFzdFJhbmRgIChbIyYjODIwMzs4MDc4XSkKLSBzeW5jOiB3YWtlIG1wc2MgcmVjZWl2ZXIgd2hlbiBhIHF1ZXVlZCBgcmVzZXJ2ZVtfbWFueV1gIHJldHVybnMgcGVybWl0cyAoWyMmIzgyMDM7ODI2MF0pCi0gdGFza2R1bXA6IHNraXAgZG91YmxlIHdha2Ugb24gYFRyYWNlOjpjYXB0dXJlYC9gVHJhY2U6OnRyYWNlX3dpdGhgIChbIyYjODIwMzs4MDQzXSkKLSB0aW1lOiBhdm9pZCBzdGFjayBvdmVyZmxvdyBpbiBydW50aW1lIGNvbnN0cnVjdG9yIChbIyYjODIwMzs4MDkzXSkKLSB0aW1lIChhbHQgdGltZXIpOiBlbnN1cmUgdGltZXJzIHN0YXkgaW4gdGhlIHNhbWUgcnVudGltZSBhZnRlciBgLnJlc2V0KClgIChbIyYjODIwMzs4MTY5XSkKCiMjIyMjIElPIHVyaW5nICh1bnN0YWJsZSkKCi0gZnM6IHVzZSBpby11cmluZyBmb3IgYGZzOjp0cnlfZXhpc3RzYCAoWyMmIzgyMDM7ODA4MF0pCi0gZnM6IHVzZSBpby11cmluZyBmb3IgcmVuYW1pbmcgZmlsZXMgKFsjJiM4MjAzOzc4MDBdKQotIHJ0OiBmbHVzaCBpby11cmluZyBDUUUgaW4gY2FzZSBvZiBDUUUgb3ZlcmZsb3cgKFsjJiM4MjAzOzgyNzddKQoKIyMjIyMgRG9jdW1lbnRlZAoKLSBkb2NzOiBjbGFyaWZ5IGNhbmNlbCBzYWZldHkgd29yZGluZyAoWyMmIzgyMDM7ODE4MV0pCi0gZnM6IGNsYXJpZnkgYGNyZWF0ZV9kaXJfYWxsYCBzdWNjZWVkcyBpZiBwYXRoIGV4aXN0cyAoWyMmIzgyMDM7ODE0OV0pCi0gaW86IGFkZCB3YXJuaW5nIGFib3V0IHN0ZG91dCByZW9yZGVyaW5nIHdpdGggbXVsdGlwbGUgaGFuZGxlcyAoWyMmIzgyMDM7ODI3Nl0pCi0gbmV0OiBkb2N1bWVudCBwaXBlIGB0cnlfcmVhZCpgL2B0cnlfd3JpdGUqYCByZWFkaW5lc3MgYmVoYXZpb3IgKFsjJiM4MjAzOzgwMzJdKQotIHJ1bnRpbWU6IGRvY3VtZW50IGludGVyYWN0aW9uIHdpdGggZm9yaygpIChbIyYjODIwMzs4MjAyXSkKLSBzeW5jOiBjbGFyaWZ5IGJyb2FkY2FzdCBsYWdnaW5nIHNlbWFudGljcyAoWyMmIzgyMDM7ODIzOV0pCi0gc3luYzogZG9jdW1lbnQgbWVtb3J5IG9yZGVyaW5nIGd1YXJhbnRlZXMgZm9yIFNlbWFwaG9yZSAoWyMmIzgyMDM7ODExOV0pCi0gdGFzazogZXhwbGFpbiB3aHkgYHlpZWxkX25vd2AgZGVmZXJzIGl0cyB3YWtlciAoWyMmIzgyMDM7ODI1NF0pCi0gdGltZTogYWRkIHBhbmljIGRvY3MgdG8gYHRpbWVvdXRfYXQoKWAgKFsjJiM4MjAzOzgwNzddKQotIHRpbWU6IGZpeCByZXZlcnNlZCBwb2xsIG9yZGVyIGluIHRpbWVvdXQgZG9jIChbIyYjODIwMzs4MjE0XSkKClsjJiM4MjAzOzc4MDBdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC83ODAwCgpbIyYjODIwMzs3OTg2XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvNzk4NgoKWyMmIzgyMDM7ODAzMl06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzgwMzIKClsjJiM4MjAzOzgwNDNdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84MDQzCgpbIyYjODIwMzs4MDc3XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODA3NwoKWyMmIzgyMDM7ODA3OF06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzgwNzgKClsjJiM4MjAzOzgwODBdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84MDgwCgpbIyYjODIwMzs4MDg2XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODA4NgoKWyMmIzgyMDM7ODA5M106IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzgwOTMKClsjJiM4MjAzOzgwOTVdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84MDk1CgpbIyYjODIwMzs4MTA3XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODEwNwoKWyMmIzgyMDM7ODExOV06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzgxMTkKClsjJiM4MjAzOzgxMjRdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84MTI0CgpbIyYjODIwMzs4MTI2XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODEyNgoKWyMmIzgyMDM7ODEzMl06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzgxMzIKClsjJiM4MjAzOzgxNDRdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84MTQ0CgpbIyYjODIwMzs4MTQ5XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODE0OQoKWyMmIzgyMDM7ODE2OV06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzgxNjkKClsjJiM4MjAzOzgxODFdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84MTgxCgpbIyYjODIwMzs4MTkyXTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODE5MgoKWyMmIzgyMDM7ODE5M106IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzgxOTMKClsjJiM4MjAzOzgyMDJdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84MjAyCgpbIyYjODIwMzs4MjE0XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODIxNAoKWyMmIzgyMDM7ODIzMV06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzgyMzEKClsjJiM4MjAzOzgyMzldOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84MjM5CgpbIyYjODIwMzs4MjQyXTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODI0MgoKWyMmIzgyMDM7ODI1MV06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzgyNTEKClsjJiM4MjAzOzgyNTRdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84MjU0CgpbIyYjODIwMzs4MjU5XTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODI1OQoKWyMmIzgyMDM7ODI2MF06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzgyNjAKClsjJiM4MjAzOzgyNjZdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84MjY2CgpbIyYjODIwMzs4MjcwXTogaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3B1bGwvODI3MAoKWyMmIzgyMDM7ODI3Nl06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzgyNzYKClsjJiM4MjAzOzgyNzddOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84Mjc3CgojIyMgW2B2MS41Mi40YF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Rva2lvLXJzL3Rva2lvL3JlbGVhc2VzL3RhZy90b2tpby0xLjUyLjQpOiBUb2tpbyB2MS41Mi40CgpbQ29tcGFyZSBTb3VyY2VdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9jb21wYXJlL3Rva2lvLTEuNTIuMy4uLnRva2lvLTEuNTIuNCkKCiMjIyMjIDEuNTIuNCAoSnVseSAxNnRoLCAyMDI2KQoKIyMjIyMgRml4ZWQKCi0gcnVudGltZTogZG9uJ3Qgc2tpcCB0aGUgZHJpdmVyIHdoZW4gYGJlZm9yZV9wYXJrYCBzY2hlZHVsZXMgd29yayAoWyMmIzgyMDM7ODIyMl0pCgojIyMjIyBGaXhlZCAodW5zdGFibGUpCgotIHRhc2tkdW1wOiByZW1vdmUgY3JhdGUgZGlzYW1iaWd1YXRvcnMgZnJvbSBvdXRwdXQgKFsjJiM4MjAzOzgyNjRdKQoKWyMmIzgyMDM7ODI2NF06IGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90b2tpby1ycy90b2tpby9wdWxsLzgyNjQKClsjJiM4MjAzOzgyMjJdOiBodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdG9raW8tcnMvdG9raW8vcHVsbC84MjIyCgo8L2RldGFpbHM+CgotLS0KCiMjIyBDb25maWd1cmF0aW9uCgrwn5OFICoqU2NoZWR1bGUqKjogKFVUQykKCi0gQnJhbmNoIGNyZWF0aW9uCiAgLSBBdCBhbnkgdGltZSAobm8gc2NoZWR1bGUgZGVmaW5lZCkKLSBBdXRvbWVyZ2UKICAtIEF0IGFueSB0aW1lIChubyBzY2hlZHVsZSBkZWZpbmVkKQoK8J+apiAqKkF1dG9tZXJnZSoqOiBEaXNhYmxlZCBieSBjb25maWcuIFBsZWFzZSBtZXJnZSB0aGlzIG1hbnVhbGx5IG9uY2UgeW91IGFyZSBzYXRpc2ZpZWQuCgrimbsgKipSZWJhc2luZyoqOiBXaGVuZXZlciBQUiBiZWNvbWVzIGNvbmZsaWN0ZWQsIG9yIHlvdSB0aWNrIHRoZSByZWJhc2UvcmV0cnkgY2hlY2tib3guCgrwn5SVICoqSWdub3JlKio6IENsb3NlIHRoaXMgUFIgYW5kIHlvdSB3b24ndCBiZSByZW1pbmRlZCBhYm91dCB0aGlzIHVwZGF0ZSBhZ2Fpbi4KCi0tLQoKIC0gWyBdIDwhLS0gcmViYXNlLWNoZWNrIC0tPklmIHlvdSB3YW50IHRvIHJlYmFzZS9yZXRyeSB0aGlzIFBSLCBjaGVjayB0aGlzIGJveAoKLS0tCgpUaGlzIFBSIHdhcyBnZW5lcmF0ZWQgYnkgW01lbmQgUmVub3ZhdGVdKGh0dHBzOi8vbWVuZC5pby9yZW5vdmF0ZS8pLiBWaWV3IHRoZSBbcmVwb3NpdG9yeSBqb2IgbG9nXShodHRwczovL2RldmVsb3Blci5tZW5kLmlvL2dpdGh1Yi92ZXh4aG9zdC9tYWdudW0tY2x1c3Rlci1hcGkpLgo8IS0tcmVub3ZhdGUtZGVidWc6ZXlKamNtVmhkR1ZrU1c1V1pYSWlPaUkwTXk0eU5qVXVNU0lzSW5Wd1pHRjBaV1JKYmxabGNpSTZJalEwTGpFM01TNHlJaXdpZEdGeVoyVjBRbkpoYm1Ob0lqb2liV0ZwYmlJc0lteGhZbVZzY3lJNlcxMTktLT4K
      override_checkout: master
      patchset: b8a7cdc13ccec9ceb9af05b81ebaed6a0ece3e85
      pipeline: check
      playbook_context:
        playbook_projects:
          trusted/project_0/github.com/vexxhost/zuul-config:
            canonical_name: github.com/vexxhost/zuul-config
            checkout: main
            commit: 298983cd1253e6833abdb49d87d912527e0e6597
          trusted/project_1/opendev.org/zuul/zuul-jobs:
            canonical_name: opendev.org/zuul/zuul-jobs
            checkout: master
            commit: be52461cd48abccbf95b13a58b2551ac673d8ad7
          trusted/project_2/github.com/vexxhost/zuul-jobs:
            canonical_name: github.com/vexxhost/zuul-jobs
            checkout: main
            commit: 4fd48825891421af0774bdd500fee36e111d80a6
          untrusted/project_0/opendev.org/openstack/devstack:
            canonical_name: opendev.org/openstack/devstack
            checkout: master
            commit: 75939cdc664d956ecc7b2cae4a9fd5877fdcbb4f
          untrusted/project_1/opendev.org/openstack/openstack-zuul-jobs:
            canonical_name: opendev.org/openstack/openstack-zuul-jobs
            checkout: master
            commit: 913885b578b905e66c7f0b0ddfd8c996e7859cef
          untrusted/project_2/github.com/vexxhost/zuul-config:
            canonical_name: github.com/vexxhost/zuul-config
            checkout: main
            commit: 298983cd1253e6833abdb49d87d912527e0e6597
          untrusted/project_3/opendev.org/zuul/zuul-jobs:
            canonical_name: opendev.org/zuul/zuul-jobs
            checkout: master
            commit: be52461cd48abccbf95b13a58b2551ac673d8ad7
          untrusted/project_4/github.com/vexxhost/zuul-jobs:
            canonical_name: github.com/vexxhost/zuul-jobs
            checkout: main
            commit: 4fd48825891421af0774bdd500fee36e111d80a6
          untrusted/project_5/github.com/vexxhost/magnum-cluster-api:
            canonical_name: github.com/vexxhost/magnum-cluster-api
            checkout: main
            commit: b8a7cdc13ccec9ceb9af05b81ebaed6a0ece3e85
        playbooks:
        - path: untrusted/project_5/github.com/vexxhost/magnum-cluster-api/zuul.d/playbooks/hydrophone/run.yml
          roles:
          - checkout: master
            checkout_description: job override ref
            link_name: ansible/playbook_0/role_1/devstack
            link_target: untrusted/project_0/opendev.org/openstack/devstack
            role_path: ansible/playbook_0/role_1/devstack/roles
          - checkout: master
            checkout_description: job override ref
            link_name: ansible/playbook_0/role_2/openstack-zuul-jobs
            link_target: untrusted/project_1/opendev.org/openstack/openstack-zuul-jobs
            role_path: ansible/playbook_0/role_2/openstack-zuul-jobs/roles
          - checkout: master
            checkout_description: job override ref
            link_name: ansible/playbook_0/role_4/zuul-jobs
            link_target: untrusted/project_3/opendev.org/zuul/zuul-jobs
            role_path: ansible/playbook_0/role_4/zuul-jobs/roles
          - checkout: main
            checkout_description: zuul branch
            link_name: ansible/playbook_0/role_5/zuul-jobs
            link_target: untrusted/project_4/github.com/vexxhost/zuul-jobs
            role_path: ansible/playbook_0/role_5/zuul-jobs/roles
        post_playbooks:
        - path: untrusted/project_5/github.com/vexxhost/magnum-cluster-api/zuul.d/playbooks/hydrophone/post.yml
          roles:
          - checkout: master
            checkout_description: job override ref
            link_name: ansible/post_playbook_0/role_1/devstack
            link_target: untrusted/project_0/opendev.org/openstack/devstack
            role_path: ansible/post_playbook_0/role_1/devstack/roles
          - checkout: master
            checkout_description: job override ref
            link_name: ansible/post_playbook_0/role_2/openstack-zuul-jobs
            link_target: untrusted/project_1/opendev.org/openstack/openstack-zuul-jobs
            role_path: ansible/post_playbook_0/role_2/openstack-zuul-jobs/roles
          - checkout: master
            checkout_description: job override ref
            link_name: ansible/post_playbook_0/role_4/zuul-jobs
            link_target: untrusted/project_3/opendev.org/zuul/zuul-jobs
            role_path: ansible/post_playbook_0/role_4/zuul-jobs/roles
          - checkout: main
            checkout_description: zuul branch
            link_name: ansible/post_playbook_0/role_5/zuul-jobs
            link_target: untrusted/project_4/github.com/vexxhost/zuul-jobs
            role_path: ansible/post_playbook_0/role_5/zuul-jobs/roles
        - path: untrusted/project_0/opendev.org/openstack/devstack/playbooks/post.yaml
          roles:
          - checkout: master
            checkout_description: playbook branch
            link_name: ansible/post_playbook_1/role_0/devstack
            link_target: untrusted/project_0/opendev.org/openstack/devstack
            role_path: ansible/post_playbook_1/role_0/devstack/roles
          - checkout: master
            checkout_description: job override ref
            link_name: ansible/post_playbook_1/role_1/openstack-zuul-jobs
            link_target: untrusted/project_1/opendev.org/openstack/openstack-zuul-jobs
            role_path: ansible/post_playbook_1/role_1/openstack-zuul-jobs/roles
          - checkout: master
            checkout_description: job override ref
            link_name: ansible/post_playbook_1/role_3/zuul-jobs
            link_target: untrusted/project_3/opendev.org/zuul/zuul-jobs
            role_path: ansible/post_playbook_1/role_3/zuul-jobs/roles
          - checkout: main
            checkout_description: zuul branch
            link_name: ansible/post_playbook_1/role_4/zuul-jobs
            link_target: untrusted/project_4/github.com/vexxhost/zuul-jobs
            role_path: ansible/post_playbook_1/role_4/zuul-jobs/roles
        - path: trusted/project_0/github.com/vexxhost/zuul-config/playbooks/base/post.yaml
          roles:
          - checkout: master
            checkout_description: job override ref
            link_name: ansible/post_playbook_2/role_1/zuul-jobs
            link_target: trusted/project_1/opendev.org/zuul/zuul-jobs
            role_path: ansible/post_playbook_2/role_1/zuul-jobs/roles
          - checkout: main
            checkout_description: zuul branch
            link_name: ansible/post_playbook_2/role_2/zuul-jobs
            link_target: trusted/project_2/github.com/vexxhost/zuul-jobs
            role_path: ansible/post_playbook_2/role_2/zuul-jobs/roles
        - path: trusted/project_0/github.com/vexxhost/zuul-config/playbooks/base/post-logs.yaml
          roles:
          - checkout: master
            checkout_description: job override ref
            link_name: ansible/post_playbook_3/role_1/zuul-jobs
            link_target: trusted/project_1/opendev.org/zuul/zuul-jobs
            role_path: ansible/post_playbook_3/role_1/zuul-jobs/roles
          - checkout: main
            checkout_description: zuul branch
            link_name: ansible/post_playbook_3/role_2/zuul-jobs
            link_target: trusted/project_2/github.com/vexxhost/zuul-jobs
            role_path: ansible/post_playbook_3/role_2/zuul-jobs/roles
        pre_playbooks:
        - path: trusted/project_0/github.com/vexxhost/zuul-config/playbooks/base/pre.yaml
          roles:
          - checkout: master
            checkout_description: job override ref
            link_name: ansible/pre_playbook_0/role_1/zuul-jobs
            link_target: trusted/project_1/opendev.org/zuul/zuul-jobs
            role_path: ansible/pre_playbook_0/role_1/zuul-jobs/roles
          - checkout: main
            checkout_description: zuul branch
            link_name: ansible/pre_playbook_0/role_2/zuul-jobs
            link_target: trusted/project_2/github.com/vexxhost/zuul-jobs
            role_path: ansible/pre_playbook_0/role_2/zuul-jobs/roles
        - path: untrusted/project_0/opendev.org/openstack/devstack/playbooks/pre.yaml
          roles:
          - checkout: master
            checkout_description: playbook branch
            link_name: ansible/pre_playbook_1/role_0/devstack
            link_target: untrusted/project_0/opendev.org/openstack/devstack
            role_path: ansible/pre_playbook_1/role_0/devstack/roles
          - checkout: master
            checkout_description: job override ref
            link_name: ansible/pre_playbook_1/role_1/openstack-zuul-jobs
            link_target: untrusted/project_1/opendev.org/openstack/openstack-zuul-jobs
            role_path: ansible/pre_playbook_1/role_1/openstack-zuul-jobs/roles
          - checkout: master
            checkout_description: job override ref
            link_name: ansible/pre_playbook_1/role_3/zuul-jobs
            link_target: untrusted/project_3/opendev.org/zuul/zuul-jobs
            role_path: ansible/pre_playbook_1/role_3/zuul-jobs/roles
          - checkout: main
            checkout_description: zuul branch
            link_name: ansible/pre_playbook_1/role_4/zuul-jobs
            link_target: untrusted/project_4/github.com/vexxhost/zuul-jobs
            role_path: ansible/pre_playbook_1/role_4/zuul-jobs/roles
        - path: untrusted/project_5/github.com/vexxhost/magnum-cluster-api/zuul.d/playbooks/hydrophone/pre.yml
          roles:
          - checkout: master
            checkout_description: job override ref
            link_name: ansible/pre_playbook_2/role_1/devstack
            link_target: untrusted/project_0/opendev.org/openstack/devstack
            role_path: ansible/pre_playbook_2/role_1/devstack/roles
          - checkout: master
            checkout_description: job override ref
            link_name: ansible/pre_playbook_2/role_2/openstack-zuul-jobs
            link_target: untrusted/project_1/opendev.org/openstack/openstack-zuul-jobs
            role_path: ansible/pre_playbook_2/role_2/openstack-zuul-jobs/roles
          - checkout: master
            checkout_description: job override ref
            link_name: ansible/pre_playbook_2/role_4/zuul-jobs
            link_target: untrusted/project_3/opendev.org/zuul/zuul-jobs
            role_path: ansible/pre_playbook_2/role_4/zuul-jobs/roles
          - checkout: main
            checkout_description: zuul branch
            link_name: ansible/pre_playbook_2/role_5/zuul-jobs
            link_target: untrusted/project_4/github.com/vexxhost/zuul-jobs
            role_path: ansible/pre_playbook_2/role_5/zuul-jobs/roles
      post_review: false
      post_timeout: null
      pre_timeout: null
      project:
        canonical_hostname: github.com
        canonical_name: github.com/vexxhost/magnum-cluster-api
        name: vexxhost/magnum-cluster-api
        short_name: magnum-cluster-api
        src_dir: src/github.com/vexxhost/magnum-cluster-api
      projects:
        github.com/novnc/novnc:
          canonical_hostname: github.com
          canonical_name: github.com/novnc/novnc
          checkout: master
          checkout_description: job override ref
          commit: 4a2cc175ae8af50fe8cb85a05d40908c01c43f6a
          name: novnc/novnc
          required: true
          short_name: novnc
          src_dir: src/github.com/novnc/novnc
        github.com/vexxhost/magnum-cluster-api:
          canonical_hostname: github.com
          canonical_name: github.com/vexxhost/magnum-cluster-api
          checkout: main
          checkout_description: zuul branch
          commit: b8a7cdc13ccec9ceb9af05b81ebaed6a0ece3e85
          name: vexxhost/magnum-cluster-api
          required: false
          short_name: magnum-cluster-api
          src_dir: src/github.com/vexxhost/magnum-cluster-api
        opendev.org/openstack/barbican:
          canonical_hostname: opendev.org
          canonical_name: opendev.org/openstack/barbican
          checkout: master
          checkout_description: job override ref
          commit: 311ecfa6b8a3bc67831fbb772138c56b35c2359f
          name: openstack/barbican
          required: true
          short_name: barbican
          src_dir: src/opendev.org/openstack/barbican
        opendev.org/openstack/cinder:
          canonical_hostname: opendev.org
          canonical_name: opendev.org/openstack/cinder
          checkout: master
          checkout_description: job override ref
          commit: 270ba9ea896827272485526127c2cbcb3a16a3ee
          name: openstack/cinder
          required: true
          short_name: cinder
          src_dir: src/opendev.org/openstack/cinder
        opendev.org/openstack/devstack:
          canonical_hostname: opendev.org
          canonical_name: opendev.org/openstack/devstack
          checkout: master
          checkout_description: job override ref
          commit: 75939cdc664d956ecc7b2cae4a9fd5877fdcbb4f
          name: openstack/devstack
          required: true
          short_name: devstack
          src_dir: src/opendev.org/openstack/devstack
        opendev.org/openstack/glance:
          canonical_hostname: opendev.org
          canonical_name: opendev.org/openstack/glance
          checkout: master
          checkout_description: job override ref
          commit: 76306ffdb15a76456bc6106a659250e1ae69f4e1
          name: openstack/glance
          required: true
          short_name: glance
          src_dir: src/opendev.org/openstack/glance
        opendev.org/openstack/keystone:
          canonical_hostname: opendev.org
          canonical_name: opendev.org/openstack/keystone
          checkout: master
          checkout_description: job override ref
          commit: 4d6dbace2328c8d740320740543fbfc17fbc8cf1
          name: openstack/keystone
          required: true
          short_name: keystone
          src_dir: src/opendev.org/openstack/keystone
        opendev.org/openstack/magnum:
          canonical_hostname: opendev.org
          canonical_name: opendev.org/openstack/magnum
          checkout: master
          checkout_description: job override ref
          commit: 5fca26c307be637ffc3da38a17731c6afb37053b
          name: openstack/magnum
          required: true
          short_name: magnum
          src_dir: src/opendev.org/openstack/magnum
        opendev.org/openstack/manila:
          canonical_hostname: opendev.org
          canonical_name: opendev.org/openstack/manila
          checkout: master
          checkout_description: job override ref
          commit: a629e5b3fc7d48cdee71c1879a925fc0f21cc7a5
          name: openstack/manila
          required: true
          short_name: manila
          src_dir: src/opendev.org/openstack/manila
        opendev.org/openstack/neutron:
          canonical_hostname: opendev.org
          canonical_name: opendev.org/openstack/neutron
          checkout: master
          checkout_description: job override ref
          commit: 465c6e626af9e67c6d1d33794e76ffeeb48ae072
          name: openstack/neutron
          required: true
          short_name: neutron
          src_dir: src/opendev.org/openstack/neutron
        opendev.org/openstack/nova:
          canonical_hostname: opendev.org
          canonical_name: opendev.org/openstack/nova
          checkout: master
          checkout_description: job override ref
          commit: 5244d528a4ab69140b8104795b9d5163a1524b55
          name: openstack/nova
          required: true
          short_name: nova
          src_dir: src/opendev.org/openstack/nova
        opendev.org/openstack/octavia:
          canonical_hostname: opendev.org
          canonical_name: opendev.org/openstack/octavia
          checkout: master
          checkout_description: job override ref
          commit: 3a84776790cc68322d1ea0a1e58df71ef688a4e1
          name: openstack/octavia
          required: true
          short_name: octavia
          src_dir: src/opendev.org/openstack/octavia
        opendev.org/openstack/os-test-images:
          canonical_hostname: opendev.org
          canonical_name: opendev.org/openstack/os-test-images
          checkout: master
          checkout_description: job override ref
          commit: 840ecd26fa6ba394512d9ddca91eb93dc4dd176a
          name: openstack/os-test-images
          required: true
          short_name: os-test-images
          src_dir: src/opendev.org/openstack/os-test-images
        opendev.org/openstack/ovn-octavia-provider:
          canonical_hostname: opendev.org
          canonical_name: opendev.org/openstack/ovn-octavia-provider
          checkout: master
          checkout_description: job override ref
          commit: 3f6b411dc16e0cd7e0e17641979826df2518d547
          name: openstack/ovn-octavia-provider
          required: true
          short_name: ovn-octavia-provider
          src_dir: src/opendev.org/openstack/ovn-octavia-provider
        opendev.org/openstack/placement:
          canonical_hostname: opendev.org
          canonical_name: opendev.org/openstack/placement
          checkout: master
          checkout_description: job override ref
          commit: 7e72a5cdbedf03214c31d2d188951a349e834c94
          name: openstack/placement
          required: true
          short_name: placement
          src_dir: src/opendev.org/openstack/placement
        opendev.org/openstack/python-magnumclient:
          canonical_hostname: opendev.org
          canonical_name: opendev.org/openstack/python-magnumclient
          checkout: master
          checkout_description: job override ref
          commit: 6adff3716e64de4b59de7396195d2a18189ac348
          name: openstack/python-magnumclient
          required: true
          short_name: python-magnumclient
          src_dir: src/opendev.org/openstack/python-magnumclient
        opendev.org/openstack/requirements:
          canonical_hostname: opendev.org
          canonical_name: opendev.org/openstack/requirements
          checkout: master
          checkout_description: job override ref
          commit: bcfa839c56bca4ba10da9671eb980ce7694fb907
          name: openstack/requirements
          required: true
          short_name: requirements
          src_dir: src/opendev.org/openstack/requirements
        opendev.org/openstack/swift:
          canonical_hostname: opendev.org
          canonical_name: opendev.org/openstack/swift
          checkout: master
          checkout_description: job override ref
          commit: 3129f9c186328307cf26c2d2923428a95a2f1c73
          name: openstack/swift
          required: true
          short_name: swift
          src_dir: src/opendev.org/openstack/swift
      ref: refs/pull/1114/head
      resources: {}
      tenant: oss
      timeout: 7200
      topic: null
      voting: true
    zuul_copy_output:
      /etc/ceph: logs
      /etc/glusterfs/glusterd.vol: logs
      /etc/libvirt: logs
      /etc/lvm: logs
      /etc/resolv.conf: logs
      /etc/sudoers: logs
      /etc/sudoers.d: logs
      /var/log/ceph: logs
      /var/log/glusterfs: logs
      /var/log/libvirt: logs
      /var/log/mysql: logs
      /var/log/openvswitch: logs
      /var/log/postgresql: logs
      /var/log/rabbitmq: logs
      /var/log/unbound.log: logs
      '{{ devstack_conf_dir }}/.localrc.auto': logs
      '{{ devstack_conf_dir }}/.stackenv': logs
      '{{ devstack_conf_dir }}/local.conf': logs
      '{{ devstack_conf_dir }}/localrc': logs
      '{{ devstack_full_log}}': logs
      '{{ devstack_log_dir }}/atop': logs
      '{{ devstack_log_dir }}/devstacklog.txt': logs
      '{{ devstack_log_dir }}/devstacklog.txt.summary': logs
      '{{ devstack_log_dir }}/dstat-csv.log': logs
      '{{ devstack_log_dir }}/qemu.coredump': logs
      '{{ devstack_log_dir }}/tcpdump.pcap': logs
      '{{ devstack_log_dir }}/worlddump-latest.txt': logs
      '{{ stage_dir }}/apache': logs
      '{{ stage_dir }}/apache_config': logs
      '{{ stage_dir }}/audit.log': logs
      '{{ stage_dir }}/core': logs
      '{{ stage_dir }}/deprecations.log': logs
      '{{ stage_dir }}/df.txt': logs
      '{{ stage_dir }}/dpkg-l.txt': logs
      '{{ stage_dir }}/etc': logs
      '{{ stage_dir }}/iptables.txt': logs
      '{{ stage_dir }}/listen53.txt': logs
      '{{ stage_dir }}/mount.txt': logs
      '{{ stage_dir }}/performance.json': logs
      '{{ stage_dir }}/pip2-freeze.txt': logs
      '{{ stage_dir }}/pip3-freeze.txt': logs
      '{{ stage_dir }}/rpm-qa.txt': logs
      '{{ stage_dir }}/services.txt': logs
      '{{ stage_dir }}/verify_tempest_conf.log': logs
