Skip to content

Conversation

jatinwadhwa921
Copy link

Backmerging with Msft commits

derdeljan-msft and others added 30 commits August 28, 2025 09:05
### Description

When using attention bias input for GQA op with FP16, on the platforms
that don't natively support FP16 math a cast to fp32 needs to be
performed, and thus a temporary buffer needs to be created to store the
fp32 values. The issue is that this temporary buffer was being allocated
/ deallocated inside of a loop for every token being processed.
Refactored the implementation so that the allocation takes place only
once.

Phi model throughput increased by 15%.
### Description
This change fixes correctness issues in two areas that were causing
failures in onnxruntime_test_all:

- DynamicQuantizeMatMul.WithConstantBInputs
- AttentionTest.Attention3DDefault
- AttentionTest.Attention3DWithPastAndPresentQkMatmul

What was wrong and how it’s fixed
1) DynamicQuantizeMatMul.WithConstantBInputs
- Root cause: The Kleidi dynamic quantization GEMM path could be
selected even when the B scales contained values such as (zero,
negative, or non-finite). That violates kernel assumptions and can lead
to incorrect results.
- Fix: In
`onnxruntime/contrib_ops/cpu/quantization/dynamic_quantize_matmul.cc`,
we now explicitly validate that all B scales are finite and strictly
positive before enabling the Kleidi/MLAS dynamic path. If any scale is
invalid, we disable that path.

2) Attention tests (Attention3DDefault,
Attention3DWithPastAndPresentQkMatmul)
- Root causes in
`onnxruntime/core/mlas/lib/kleidiai/sgemm_kleidiai.cpp`:
- Incorrect handling of GEMM corner cases for alpha/beta and K==0 (e.g.,
not respecting C = beta*C when alpha==0 or K==0).
  - Unnecessary or premature fallbacks for small shapes.
- Fixes:
- Add early-outs for degenerate sizes: if M==0 or N==0, return handled.
  - Correctly implement alpha/beta semantics:

---------

Signed-off-by: Jonathan Clohessy <[email protected]>
This change adds skip test for QMoE CPU tests when running on TensorRT
or CUDA EP.
In the QMoE kernel there was a memory overwrite bug in the accumulate
part, updated that and this fixed the python tests back
…pi_ (microsoft#25741)

### Description

Delay the call to `OrtGetApiBase()` until the first call to
`Ort::GetApi()` so that `OrtGetApiBase()` is typically called after
dynamic library loading.

### Motivation and Context

When ORT_API_MANUAL_INIT is not defined (which is the default), the
static `Ort::Global<void>::api_` has a dynamic initializer that calls
`OrtGetApiBase()->GetApi(ORT_API_VERSION)` This dynamic initialization
can cause problems when it interacts with other global/static
initialization. On Windows in particular, it can also cause deadlocks
when used in a dynamic library if OrtGetApiBase()->GetApi() attempts to
load any other libraries.

* Replace the templated `Global<void>::api_` with an inline static
initialized to nullptr.
* `Ort::GetApi()` now calls `detail::Global::GetApi()` which calls
`detail::Global::DefaultInit()` if initialization is needed.
* When `ORT_API_MANUAL_INIT` is defined, `DefaultInit()` returns
nullptr, which will eventually cause the program to crash. The callers
have violated the initialization contract by not calling one of the
`Ort::InitApi` overloads.
* When `ORT_API_MANUAL_INIT` is not defined, `DefaultInit()` uses a
function-level static to compute the result of
`OrtGetApiBase()->GetApi(ORT_API_VERSION)` once and return it.
* `Ort::Global<void>` has been replaced with a non-templated type and
moved inside a `detail` namespace. Since the `Global<void>` object was
documented as being used internally, it is believed that these changes
here are non-breaking, as they do not impact a public API. The public
APIs, `Ort::InitApi()` and `Ort::InitApi(const OrtApi*)` remain
unchanged.
* Add `#pragma detect_mismatch` to surface issues with compilation units
that disagree on how ORT_API_MANUAL_INIT is defined. (MSVC only.)

---------

Co-authored-by: Copilot <[email protected]>
### Description
<!-- Describe your changes. -->
1. A Small change to use the shared allocator in Python binding. 
2. Remove the FP64 support from the EP. 


### Motivation and Context
<!-- - Why is this change required? What problem does it solve?
- If it fixes an open issue, please link to the issue here. -->

The Python GPU IO binding is necessary for performance. The change will
enable the shared allocator for GPU allocation.
The FP64 was using the FP32 inference—aligned WRT TRT RTX support.

---------

Co-authored-by: Gaurav Garg <[email protected]>
### Description

Add a `enable_cann_subgraph` feature parameter. this parameter controls
whether graph splitting is performed and can help quickly identify
issues in certain scenarios.
…ting Node_GetTensorAttributeAsOrtValue (microsoft#25886)

### Description
Replace `Node_GetTensorAttributeAsOrtValue` with
`OpAttr_GetTensorAttributeAsOrtValue`.
Change the API signature to make it one of the `OpAttr` interfaces
instead of the `OrtNode` interface.

The original API was added
[here](microsoft#25566).
### Description
This change builds on top of microsoft#25841 , and adds the scaffolding necessary
to call into this API from C++ / C# / Python.

### Motivation and Context
microsoft#25454 talks more about the broader notion of precompiled model
compatibility. This change is directed at app developers whose apps may
want to determine if a particular precompiled model (e.g. on a server
somewhere) is compatible with the device where the application is
running. There is functionality in `OrtEpFactory` for making this
determination, which was exposed as a C API in microsoft#25841, and this change
makes the API more broadly available in other languages.

### Testing and Validation
Introduced new unit test cases across each language, and verified that
the API was being called and returned the correct result for the default
CPU EP.

---------

Co-authored-by: Aditya Rastogi <[email protected]>
…25883)

### Description
- Introduce Level1 Transformer into qnn.preprocess to support various optimizations.

### Motivation and Context
- This change brings in several useful optimizations such as `ConvBnFusion` and `ConstantFolding`, which are part of
`TransformerLevel::Level1` and can benefit QNNEP.
- The goal is to optimize the ONNX model before quantization by integrating these passes into the Python tooling workflow.
…icrosoft#25887)

### Description
Minor fix weight name missing when not valid QDQ node group

### Motivation and Context
Some quantized model failed QDQ node group validation, the weights then won't be folded as initializer. QNN EP failed to handle the dynamic weights here due to the transpose op input name look up. This change make sure we process the weights tensor before adding transposes.
## Summary
Adds EP metadata library path support to enable custom ops DLL
registration with proper path resolution.

## Changes
- Added `library_path` metadata key to EP metadata infrastructure
- Pass resolved library path directly to `EpLibraryProviderBridge`
constructor
- Simplified implementation per reviewer feedback (removed virtual
method complexity)
- Added `#include <utility>` for std::move compliance

## Purpose
Enables downstream applications (like onnxruntime-genai) to resolve
relative custom ops library paths using EP metadata, improving DLL
registration reliability.

## Files Modified
- `plugin_ep/ep_factory_provider_bridge.h`
- `plugin_ep/ep_library.h` 
- `plugin_ep/ep_library_plugin.h`
- `plugin_ep/ep_library_provider_bridge.cc`
- `plugin_ep/ep_library_provider_bridge.h`
- `utils.cc`
### Description
This update introduces multiple improvements, fixes, and feature enhancements to the OpenVINO Execution Provider (OVEP) and related components in ONNX Runtime:

#### Configuration & Properties

- Updated load_config mapping to act as a passthrough to OpenVINO properties.
- Added support for providing layout information to inputs/outputs in OpenVINO.

#### Inference & Tensor Handling

- Improved OVInferRequest::SetTensor to correctly handle cached binding shape mismatches.
- Added support for self-detecting on-the-fly bfloat16 → float16 conversion.
- Fixed issues with input ONNX models when used with shared execution contexts.

#### Model Handling & Operator Support

- Fixed model copying behavior for QDQ stripping.
- Updated operator support status for OpenVINO 2025.2.

#### Platform & Integration Fixes

- Applied multiple PSU Lora fixes and related updates.
- Resolved filename confusion issues with wrapped OVIRs in EPCtx.
- Enabled memory-mapped native binaries for OpenVINO 2025.3.

#### Quality & Maintenance

- Addressed linting issues.
- Fixed coverage gaps in OVEP.
- Added a new test script for OpenVINO with ORT ABI integration.

---------

Co-authored-by: Ankit Maheshkar <[email protected]>
Co-authored-by: Ryan Metcalfe <[email protected]>
Co-authored-by: Klimenko, Mikhail <[email protected]>
Co-authored-by: sfatimar <[email protected]>
Co-authored-by: Garth Long <[email protected]>
Co-authored-by: Copilot <[email protected]>
Co-authored-by: MayureshV1 <[email protected]>
Co-authored-by: Eric Crawford <[email protected]>
Co-authored-by: jatinwadhwa921 <[email protected]>
Co-authored-by: Vishnudas Thaniel S <[email protected]>
Co-authored-by: Javier Martinez <[email protected]>
### Description
Java API for compile model and EP discovery APIs. Roughly equivalent to
the C# version in microsoft#24604.

cc: @skottmckay.

I haven't quite got the CMake configured so the Java tests for the ep
registration only run when the ONNX Runtime shared provider support is
built, but everything else works. I expect that to be a quick fix, but
I'm not sure in what conditions it should be built and how we should
handle it so I don't know where/when to plumb it through.

### Motivation and Context
API parity for Java.
### Description
1. Check process exit code when running 7z.exe . Currently the errors
were silently ignored.
2. Add snld20 flag to the 7z.exe commands, which is needed to be
compatible with the latest 7z release.
…icrosoft#25881)

### Description
Fix illegal memory access in GetInputIndices with optional inputs

### Motivation and Context
When an input is optional, its ValueInfo may be nullptr. 
The current implementation directly calls InputValueInfo->GetName(), leading to illegal memory access.

Update logic to skip optional inputs when valueInfo is nullptr .
### Description
<!-- Describe your changes. -->

Re-enable cpuinfo for ARM64EC build and fix `CPUIDINFO_ARCH_ARM` so it
is actually used.

Patch cpuinfo to support vcpkg ARM64EC build. See
pytorch/cpuinfo#324.

### Motivation and Context
<!-- - Why is this change required? What problem does it solve?
- If it fixes an open issue, please link to the issue here. -->

Fix for workaround in microsoft#25831.
…#25879)

Restore accidentally removed comments when using WGSL template.
### Description
The
[vfmaq_f32](https://developer.arm.com/architectures/instruction-sets/intrinsics/vfmaq_f32)
intrinsic compiles to the
[FMLA](https://developer.arm.com/documentation/ddi0596/2021-03/SIMD-FP-Instructions/FMLA--vector---Floating-point-fused-Multiply-Add-to-accumulator--vector--?lang=en)
instruction which is more performant than separate `fmul`+`fadd`
instructions that
[vmlaq_f32](https://developer.arm.com/architectures/instruction-sets/intrinsics/vmlaq_f32)
compiles to on latest GCC versions: https://godbolt.org/z/aYc9as5Wh
Note that this is not a breaking change, as vmlaq_f32 compiles to FMLA
instructions already on the latest clang compilers (which are the
default for MacOS ORT builds already)


### Motivation and Context
With this change, the NEON version of `MlasMultiplyAddFloat32x4`
achieves parity with the x86 version that uses `_mm_fmadd_ps`.
It also achieves up to ~15% speedups compared to the current `vmlaq_f32`
implementation when tested on top of microsoft#25580
### Description

Until QAIRT 2.37.0, `QNN_IR_GRAPH_SERIALIZATION_OPTION_INIT` was unusable due to a missing semicolon. Now that it's been fixed, revert the workaround.
This PR adds a missing sync method and fixes the linux CI
### Description

Change from fread to mmap to save on system memory. This also
accelerated the load time of a ~4GB model in my testing by 1.5X.
### Description

Runtime caches can accelerate the JIT time when deserializing an engine
of TRT RTX. Here we introduce a per engine caching in a user specified
folder. The cache file will be named after the fused node name - which
will also be the node name of an ep context node.

@chilo-ms we would like to pick this to 1.23
### Description
- Disables graph optimizations by default when using the explicit
compiling API.
- Adds `ModelCompilationOptions_SetGraphOptimizationLevel` to allow the
user to set an optimization level.
- Adds C++, Python, and C# bindings for the new API function.
- Updates `ModelCompilationOptions_SetFlags` to take in a `uint32_t
flags` parameter instead of `size_t flags` to ensure the same size
across platforms. This API is not yet in a public ORT release, so safe
to modify.



### Motivation and Context
When compiling, prefer allowing the EP to do the optimizations instead
of ORT.
### Description
<!-- Describe your changes. -->
Create or augment existing C++ API for new entry points

### Motivation and Context
<!-- - Why is this change required? What problem does it solve?
- If it fixes an open issue, please link to the issue here. -->
Enable exception safe coding in C++ codebase.
### Description
onnx/onnx#6318 and
onnx/onnx#6283 added FP4 support to ONNX. This
change introduces the FP4 type in ORT and adds type support to one
relevant operator (`Cast`) as a proof-of-concept for the type
integration into ORT. More op support will be added on a need-basis.

This change took inspiration from the following PRs:

microsoft#14731
microsoft#22228
microsoft#20362 

Some notes:

1) Only `tensor` type gets support for FP4 initially. Secondary types
like `seq(tensor)`, `sparse_tensor`, `optional` do not get support (so
as to not introduce unnecessary bloat to the framework without a solid
use-case)

2) Flatbuffer related files receive no updates in this PR

### Motivation and Context
Be able to run FP4 models with ORT
…icrosoft#25490)

POWER : Added a VSX-based implementation of MlasGemmQuantKernel
optimized for the case when M = 1.
Verified correctness using ONNX Runtime's built-in tests and
onnxruntime_mlas_tests;no regressions observed.
Evaluated performance using a Granite 8-bit quantized model and observed
approximately 3-5% improvement in token generation speed.

### Description
when M=1 then performed a multiplication using a VSX vector builtin
vec_msum



### Motivation and Context
To improve token generation performance for models with a batch size of
1
…5703)

### Description

Upgrade dawn. Following up of microsoft#25461.

This PR includes:
- Fix to bug introduced by
google/dawn@062be63.
Revert temporary workaround
- make corresponding changes to
https://dawn-review.googlesource.com/c/dawn/+/251714 (remove DLL preload
since it's correctly handled in dawn)
- fix Java binding (missing dxc DLLs)



Tasks:
- [x] verify emscripten build (debug/release)
- [ ] verify node.js binding
### Description
- Added `VERIFIED_PUBLIC_MODELS` (20 unique models) and
`ONNX_ZOO_MODELS` (158 total)
- Implemented `IsModelAllowed()` function with O(1) hash lookup
- Added comprehensive name mapping for backwards compatibility
- Maintained all existing EP provider configurations



### Motivation and Context
- Part of ONNX Runtime Phase 1 migration initiative
- Addresses security requirements for public CI pipelines
- Prepares for ORT 1.23.0 release compliance

---------

Co-authored-by: Emmanuel Assumang <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
snnn and others added 27 commits September 3, 2025 21:27
The "custom nuget pipeline" and QNN Nuget pipeline do not support adding
"rc" postfix to the nuget package's version string. This PR fixes that.
### Description
Add negative padding value support for QNN EP by lower padding to pad + stride_slice(if negative padding value exists.)

### Motivation and Context
ONNX and QNN complier in QAIRT both supports negative padding value by lowering to slice/resize_crop. Adding this change to align EP with QNN and ONNX

---------

Signed-off-by: Mu-Chein Hsu <[email protected]>
…rosoft#25922)

### Description

ConstantFolding crashes when a constant empty initializer is transposed.

### Motivation and Context

This rare case happened when converting a LLM into onnx with static
shape.
…soft#25943)

### Description
<!-- Describe your changes. -->
Some compilers we use in our pipeline do not support string::data() nonconst
…rosoft#25455)

### Description
- Adds `ModelCompilationOptions_SetOutputModelWriteFunc` to the compile
API to allow writing the output model ONNX bytes to a user-provided
write function (i.e., for streaming).
- Adds `ModelCompilationOptions_SetOutputModelHandleInitializerFunc` to
the compile API to allow the user to write individual initializers to
some destination. Also allows specifying if an initializer should be
embedded within the ONNX model or written to a custom file.
- Adds C++, Python, and C# bindings for the new APIs.

A follow-up PR adds a write function for EPContext node binary data:
microsoft#25471

### Example
`ModelCompilationOptions_SetOutputModelWriteFunc`:
https://github.com/microsoft/onnxruntime/blob/c62ed23c328cbbfefd3083c1f7a6ced604772c19/onnxruntime/test/providers/qnn/qnn_ep_context_test.cc#L2075-L2131

`ModelCompilationOptions_SetOutputModelHandleInitializerFunc`:

https://github.com/microsoft/onnxruntime/blob/c62ed23c328cbbfefd3083c1f7a6ced604772c19/onnxruntime/test/providers/qnn/qnn_ep_context_test.cc#L2160-L2292

### Motivation and Context
Add output streaming capabilities when saving compiled models.
…ng cudastream by value in createNotification API (microsoft#25937)

Fixing the stream parameter in CopyTensors API and passing cudastream by
value in createNotification API

### Description
<!-- Describe your changes. -->
Fixing the stream parameter in CopyTensors API to pass the application
passed stream instead of nullptr Passing cudastream by value in
createNotification API as passing pointer was leading to dangling
reference issues.
Can you please make sure that this goes into 1.23? @chilo-ms 

### Motivation and Context
<!-- - Why is this change required? What problem does it solve?
- If it fixes an open issue, please link to the issue here. -->
- Without this code, copy tensors always happens synchronously even when
app specifies a different stream to it.
- Passing pointer for cudastream in EP API is leading to dangling
reference issues, hence switched to passing value.
### Description
Enable 8-bit weights Gemm on ARM64 via MLAS

1. Supports 2 flavors of the 8-bit Gemm kernel - one uses `vdotq` (U8U8)
and the other uses `vusdotq` (U8S8) on platforms where I8MM is
supported.

2. Provides access to these new MLAS Gemm kernels via the `MatmulNBits`
contrib operator

3. Tests:
    **MLAS**
  3 new sets of tests:
- `SQ8BitQuantA` : Tests the dynamic activation quantization MLAS kernel
(`fp32 -> uint8_t` or `fp32 -> int8_t` on I8MM platforms)
- `SQ8BitPrepack`: Tests the prepacking of the weights for the 8-bit
Gemm kernels
    - `SQ8BitGemm`: Tests the 8-bit Gemm kernels

    **MatmulNBits contrib tests**
- Enables the 8-bit Gemm tests on ARM64 (previously only enabled on x86)

### Motivation and Context
Enable 8-bit weights Gemm on ARM64 via MLAS

Based on work and contribution by @fajin-corp 


Phi-4-mini-instruct perf numbers (before and after this change):

<img width="593" height="179" alt="image"
src="https://github.com/user-attachments/assets/d81b9059-b8db-407c-8c0f-527099f9358c"
/>

---------

Co-authored-by: Jing Fang <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
### Description
<!-- Describe your changes. -->
The EP will reject the node with unsupported data types. 


### Motivation and Context
<!-- - Why is this change required? What problem does it solve?
- If it fixes an open issue, please link to the issue here. -->

The user will face a crash if the model with an unsupported datatype is
used.
…icrosoft#25955)

### Description
<!-- Describe your changes. -->

Use vmlaq_f32 in MlasMultiplyAddFloat32x4 for Android armeabi-v7a.

### Motivation and Context
<!-- - Why is this change required? What problem does it solve?
- If it fixes an open issue, please link to the issue here. -->

Fix Android armeabi-v7a build where vfmaq_f32 is not available.

Fix microsoft#25949
Currently our macOS wheels use Metadata-Version  2.1
Currently our Windows and Linux wheels use Metadata-Version  2.4
Because they use different versions of the
["wheel"](https://pypi.org/project/wheel/#history) package that is used
for generating the wheel files.

When publishing the macOS wheels to Azure DevOps feed, I got the
following error:
```
ERROR: Failed to upload onnxruntime-1.23.0.dev20250903002-cp310-cp310-macosx_13_0_universal2.whl.
Return code: 1
STDOUT:
Uploading distributions to 
https://aiinfra.pkgs.visualstudio.com/PublicPackages/_packaging/ORT-Nightly/pypi
/upload
ERROR    InvalidDistribution: Invalid distribution metadata: dynamic introduced 
         in metadata version 2.2, not 2.1            
```

This PR makes them consistent.
### Description
<!-- Describe your changes. -->
OrtMemoryInfo has a name which is pointer.
With the recent changes a user can pass an arbitrary name and then
deallocate the string
as the API does not require it. Make the name a `std::strng` to own it
and refactor.

### Motivation and Context
<!-- - Why is this change required? What problem does it solve?
- If it fixes an open issue, please link to the issue here. -->
We will have a dangling pointer especially when it comes to other
languages.
The way it used to work in the past, is that the string would be
compared to an internal constant and that constant would be used then.
…osoft#25968)

### Description
Fixes memory leak in `OrtEpFactory::GetSupportedDevices()`. The
`OrtKeyValuePairs` instance created by the factory was not released.

This memory leak can be reproduced by running the unit test
[QnnHTPBackendTests.AutoEp_PreferNpu](https://github.com/microsoft/onnxruntime/blob/4e2699fbf24d96d2a0261b30509864da08b701de/onnxruntime/test/providers/qnn/qnn_basic_test.cc#L1426).

### Motivation and Context
Fix memory leak that one encounters when using automatic EP selection
(e.g., PREFER_NPU) with QNN EP.
### Description
<!-- Describe your changes. -->

Update ONNX to v1.19.0
The major updates of ONNX:
https://github.com/onnx/onnx/wiki/Logistics-for-ONNX-Release-1.19.0

### Remaining Issues
1. Additional inputs `nonpad_kv_seqlen` to op.Attentnio since opset24
2. Attention implementation bugs in CPU:
`test_attention_4d_with_past_and_present_qk_matmul_bias_3d_mask_causal`
and
`test_attention_4d_with_past_and_present_qk_matmul_bias_4d_mask_causal`
3. New op `TensorScatter`
4. New op `Swish`
5. `ml_dtypes` replaces `custom_element_types` in ONNX
onnx/onnx#7089
…ts buffer (microsoft#25971)

### Description
The memory alignment for the pre-packed weights buffer was accidentally
changed for 8-bit Gemms on x86 while supporting the ARM64 equivalent
8-bit Gemm kernel in
microsoft#25110. This change in
alignment could either cause perf penalty or seg-fault depending on the
platform while the corresponding aligned data load instruction is
executed in the Gemm kernel.

This changes fixes it as well as adds back a couple of tests to the MLAS
8-bit Gemm test suite and fixes a minor nit in the test file.

### Motivation and Context
Resolve packaging pipeline crash
### Description
<!-- Describe your changes. -->

Fix Mac Catalyst build options. There were some overriding `--target`
and `-mmacosx-version-min` options causing build errors.

### Motivation and Context
<!-- - Why is this change required? What problem does it solve?
- If it fixes an open issue, please link to the issue here. -->

Fix microsoft#25920
### Description
Remove CACHE_URL settings from Github Actions. They were used for
enabling VCPKG's binary cache, but vcpkg removed this feature later, so
the code is useless now.
…nt() always for inputs (microsoft#25988)

### Description
<!-- Describe your changes. -->
Use the argument passed instead of a constant.

### Motivation and Context
This is a bug
)

This PR adds:
- ORT perf test dynamic option parsing for TRT RTX EP
- ORT perf test can now report submit vs inference time for device
bindings

@chilo-ms can you help merge this ?
Bumps [actions/setup-python](https://github.com/actions/setup-python)
from 5 to 6.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/actions/setup-python/releases">actions/setup-python's
releases</a>.</em></p>
<blockquote>
<h2>v6.0.0</h2>
<h2>What's Changed</h2>
<h3>Breaking Changes</h3>
<ul>
<li>Upgrade to node 24 by <a
href="https://github.com/salmanmkc"><code>@​salmanmkc</code></a> in <a
href="https://redirect.github.com/actions/setup-python/pull/1164">actions/setup-python#1164</a></li>
</ul>
<p>Make sure your runner is on version v2.327.1 or later to ensure
compatibility with this release. <a
href="https://github.com/actions/runner/releases/tag/v2.327.1">See
Release Notes</a></p>
<h3>Enhancements:</h3>
<ul>
<li>Add support for <code>pip-version</code> by <a
href="https://github.com/priyagupta108"><code>@​priyagupta108</code></a>
in <a
href="https://redirect.github.com/actions/setup-python/pull/1129">actions/setup-python#1129</a></li>
<li>Enhance reading from .python-version by <a
href="https://github.com/krystof-k"><code>@​krystof-k</code></a> in <a
href="https://redirect.github.com/actions/setup-python/pull/787">actions/setup-python#787</a></li>
<li>Add version parsing from Pipfile by <a
href="https://github.com/aradkdj"><code>@​aradkdj</code></a> in <a
href="https://redirect.github.com/actions/setup-python/pull/1067">actions/setup-python#1067</a></li>
</ul>
<h3>Bug fixes:</h3>
<ul>
<li>Clarify pythonLocation behaviour for PyPy and GraalPy in environment
variables by <a
href="https://github.com/aparnajyothi-y"><code>@​aparnajyothi-y</code></a>
in <a
href="https://redirect.github.com/actions/setup-python/pull/1183">actions/setup-python#1183</a></li>
<li>Change missing cache directory error to warning by <a
href="https://github.com/aparnajyothi-y"><code>@​aparnajyothi-y</code></a>
in <a
href="https://redirect.github.com/actions/setup-python/pull/1182">actions/setup-python#1182</a></li>
<li>Add Architecture-Specific PATH Management for Python with --user
Flag on Windows by <a
href="https://github.com/aparnajyothi-y"><code>@​aparnajyothi-y</code></a>
in <a
href="https://redirect.github.com/actions/setup-python/pull/1122">actions/setup-python#1122</a></li>
<li>Include python version in PyPy python-version output by <a
href="https://github.com/cdce8p"><code>@​cdce8p</code></a> in <a
href="https://redirect.github.com/actions/setup-python/pull/1110">actions/setup-python#1110</a></li>
<li>Update docs: clarification on pip authentication with setup-python
by <a
href="https://github.com/priya-kinthali"><code>@​priya-kinthali</code></a>
in <a
href="https://redirect.github.com/actions/setup-python/pull/1156">actions/setup-python#1156</a></li>
</ul>
<h3>Dependency updates:</h3>
<ul>
<li>Upgrade idna from 2.9 to 3.7 in /<strong>tests</strong>/data by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/actions/setup-python/pull/843">actions/setup-python#843</a></li>
<li>Upgrade form-data to fix critical vulnerabilities <a
href="https://redirect.github.com/actions/setup-python/issues/182">#182</a>
&amp; <a
href="https://redirect.github.com/actions/setup-python/issues/183">#183</a>
by <a
href="https://github.com/aparnajyothi-y"><code>@​aparnajyothi-y</code></a>
in <a
href="https://redirect.github.com/actions/setup-python/pull/1163">actions/setup-python#1163</a></li>
<li>Upgrade setuptools to 78.1.1 to fix path traversal vulnerability in
PackageIndex.download by <a
href="https://github.com/aparnajyothi-y"><code>@​aparnajyothi-y</code></a>
in <a
href="https://redirect.github.com/actions/setup-python/pull/1165">actions/setup-python#1165</a></li>
<li>Upgrade actions/checkout from 4 to 5 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/actions/setup-python/pull/1181">actions/setup-python#1181</a></li>
<li>Upgrade <code>@​actions/tool-cache</code> from 2.0.1 to 2.0.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/actions/setup-python/pull/1095">actions/setup-python#1095</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/krystof-k"><code>@​krystof-k</code></a>
made their first contribution in <a
href="https://redirect.github.com/actions/setup-python/pull/787">actions/setup-python#787</a></li>
<li><a href="https://github.com/cdce8p"><code>@​cdce8p</code></a> made
their first contribution in <a
href="https://redirect.github.com/actions/setup-python/pull/1110">actions/setup-python#1110</a></li>
<li><a href="https://github.com/aradkdj"><code>@​aradkdj</code></a> made
their first contribution in <a
href="https://redirect.github.com/actions/setup-python/pull/1067">actions/setup-python#1067</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-python/compare/v5...v6.0.0">https://github.com/actions/setup-python/compare/v5...v6.0.0</a></p>
<h2>v5.6.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Workflow updates related to Ubuntu 20.04 by <a
href="https://github.com/aparnajyothi-y"><code>@​aparnajyothi-y</code></a>
in <a
href="https://redirect.github.com/actions/setup-python/pull/1065">actions/setup-python#1065</a></li>
<li>Fix for Candidate Not Iterable Error by <a
href="https://github.com/aparnajyothi-y"><code>@​aparnajyothi-y</code></a>
in <a
href="https://redirect.github.com/actions/setup-python/pull/1082">actions/setup-python#1082</a></li>
<li>Upgrade semver and <code>@​types/semver</code> by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-python/pull/1091">actions/setup-python#1091</a></li>
<li>Upgrade prettier from 2.8.8 to 3.5.3 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-python/pull/1046">actions/setup-python#1046</a></li>
<li>Upgrade ts-jest from 29.1.2 to 29.3.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-python/pull/1081">actions/setup-python#1081</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-python/compare/v5...v5.6.0">https://github.com/actions/setup-python/compare/v5...v5.6.0</a></p>
<h2>v5.5.0</h2>
<h2>What's Changed</h2>
<h3>Enhancements:</h3>
<ul>
<li>Support free threaded Python versions like '3.13t' by <a
href="https://github.com/colesbury"><code>@​colesbury</code></a> in <a
href="https://redirect.github.com/actions/setup-python/pull/973">actions/setup-python#973</a></li>
<li>Enhance Workflows: Include ubuntu-arm runners, Add e2e Testing for
free threaded and Upgrade <code>@​action/cache</code> from 4.0.0 to
4.0.3 by <a
href="https://github.com/priya-kinthali"><code>@​priya-kinthali</code></a>
in <a
href="https://redirect.github.com/actions/setup-python/pull/1056">actions/setup-python#1056</a></li>
<li>Add support for .tool-versions file in setup-python by <a
href="https://github.com/mahabaleshwars"><code>@​mahabaleshwars</code></a>
in <a
href="https://redirect.github.com/actions/setup-python/pull/1043">actions/setup-python#1043</a></li>
</ul>
<h3>Bug fixes:</h3>
<ul>
<li>Fix architecture for pypy on Linux ARM64 by <a
href="https://github.com/mayeut"><code>@​mayeut</code></a> in <a
href="https://redirect.github.com/actions/setup-python/pull/1011">actions/setup-python#1011</a>
This update maps arm64 to aarch64 for Linux ARM64 PyPy
installations.</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/actions/setup-python/commit/e797f83bcb11b83ae66e0230d6156d7c80228e7c"><code>e797f83</code></a>
Upgrade to node 24 (<a
href="https://redirect.github.com/actions/setup-python/issues/1164">#1164</a>)</li>
<li><a
href="https://github.com/actions/setup-python/commit/3d1e2d2ca0a067f27da6fec484fce7f5256def85"><code>3d1e2d2</code></a>
Revert &quot;Enhance cache-dependency-path handling to support files
outside the w...</li>
<li><a
href="https://github.com/actions/setup-python/commit/65b071217a8539818fdb8b54561bcbae40380a54"><code>65b0712</code></a>
Clarify pythonLocation behavior for PyPy and GraalPy in environment
variables...</li>
<li><a
href="https://github.com/actions/setup-python/commit/5b668cf7652160527499ee14ceaff4be9306cb88"><code>5b668cf</code></a>
Bump actions/checkout from 4 to 5 (<a
href="https://redirect.github.com/actions/setup-python/issues/1181">#1181</a>)</li>
<li><a
href="https://github.com/actions/setup-python/commit/f62a0e252fe7114e86949abfa6e1e89f85bb38c2"><code>f62a0e2</code></a>
Change missing cache directory error to warning (<a
href="https://redirect.github.com/actions/setup-python/issues/1182">#1182</a>)</li>
<li><a
href="https://github.com/actions/setup-python/commit/9322b3ca74000aeb2c01eb777b646334015ddd72"><code>9322b3c</code></a>
Upgrade setuptools to 78.1.1 to fix path traversal vulnerability in
PackageIn...</li>
<li><a
href="https://github.com/actions/setup-python/commit/fbeb884f69f0ac1c0257302f62aa524c2824b649"><code>fbeb884</code></a>
Bump form-data to fix critical vulnerabilities <a
href="https://redirect.github.com/actions/setup-python/issues/182">#182</a>
&amp; <a
href="https://redirect.github.com/actions/setup-python/issues/183">#183</a>
(<a
href="https://redirect.github.com/actions/setup-python/issues/1163">#1163</a>)</li>
<li><a
href="https://github.com/actions/setup-python/commit/03bb6152f4f691b9d64579a1bd791904a083c452"><code>03bb615</code></a>
Bump idna from 2.9 to 3.7 in /<strong>tests</strong>/data (<a
href="https://redirect.github.com/actions/setup-python/issues/843">#843</a>)</li>
<li><a
href="https://github.com/actions/setup-python/commit/36da51d563b70a972897150555bb025096d65565"><code>36da51d</code></a>
Add version parsing from Pipfile (<a
href="https://redirect.github.com/actions/setup-python/issues/1067">#1067</a>)</li>
<li><a
href="https://github.com/actions/setup-python/commit/3c6f142cc0036d53007e92fa1e327564a4cfb7aa"><code>3c6f142</code></a>
update documentation (<a
href="https://redirect.github.com/actions/setup-python/issues/1156">#1156</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/actions/setup-python/compare/v5...v6">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/setup-python&package-manager=github_actions&previous-version=5&new-version=6)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.12.9 to 0.12.12.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/releases">ruff's
releases</a>.</em></p>
<blockquote>
<h2>0.12.12</h2>
<h2>Release Notes</h2>
<h3>Preview features</h3>
<ul>
<li>Show fixes by default (<a
href="https://redirect.github.com/astral-sh/ruff/pull/19919">#19919</a>)</li>
<li>[<code>airflow</code>] Convert
<code>DatasetOrTimeSchedule(datasets=...)</code> to
<code>AssetOrTimeSchedule(assets=...)</code> (<code>AIR311</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20202">#20202</a>)</li>
<li>[<code>airflow</code>] Improve the <code>AIR002</code> error message
(<a
href="https://redirect.github.com/astral-sh/ruff/pull/20173">#20173</a>)</li>
<li>[<code>airflow</code>] Move
<code>airflow.operators.postgres_operator.Mapping</code> from
<code>AIR302</code> to <code>AIR301</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20172">#20172</a>)</li>
<li>[<code>flake8-async</code>] Implement <code>blocking-input</code>
rule (<code>ASYNC250</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20122">#20122</a>)</li>
<li>[<code>flake8-use-pathlib</code>] Make <code>PTH119</code> and
<code>PTH120</code> fixes unsafe because they can change behavior (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20118">#20118</a>)</li>
<li>[<code>pylint</code>] Add U+061C to <code>PLE2502</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20106">#20106</a>)</li>
<li>[<code>ruff</code>] Fix false negative for empty f-strings in
<code>deque</code> calls (<code>RUF037</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20109">#20109</a>)</li>
</ul>
<h3>Bug fixes</h3>
<ul>
<li>Less confidently mark f-strings as empty when inferring truthiness
(<a
href="https://redirect.github.com/astral-sh/ruff/pull/20152">#20152</a>)</li>
<li>[<code>fastapi</code>] Fix false positive for paths with spaces
around parameters (<code>FAST003</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20077">#20077</a>)</li>
<li>[<code>flake8-comprehensions</code>] Skip <code>C417</code> when
lambda contains <code>yield</code>/<code>yield from</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20201">#20201</a>)</li>
<li>[<code>perflint</code>] Handle tuples in dictionary comprehensions
(<code>PERF403</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/19934">#19934</a>)</li>
</ul>
<h3>Rule changes</h3>
<ul>
<li>[<code>pycodestyle</code>] Preserve return type annotation for
<code>ParamSpec</code> (<code>E731</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20108">#20108</a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li>Add fix safety sections to docs (<a
href="https://redirect.github.com/astral-sh/ruff/pull/17490">#17490</a>,<a
href="https://redirect.github.com/astral-sh/ruff/pull/17499">#17499</a>)</li>
</ul>
<h2>Contributors</h2>
<ul>
<li><a href="https://github.com/11happy"><code>@​11happy</code></a></li>
<li><a
href="https://github.com/AlexWaygood"><code>@​AlexWaygood</code></a></li>
<li><a
href="https://github.com/BurntSushi"><code>@​BurntSushi</code></a></li>
<li><a href="https://github.com/Gankra"><code>@​Gankra</code></a></li>
<li><a
href="https://github.com/JelleZijlstra"><code>@​JelleZijlstra</code></a></li>
<li><a
href="https://github.com/Kalmaegi"><code>@​Kalmaegi</code></a></li>
<li><a href="https://github.com/Lee-W"><code>@​Lee-W</code></a></li>
<li><a
href="https://github.com/MatthewMckee4"><code>@​MatthewMckee4</code></a></li>
<li><a
href="https://github.com/PrettyWood"><code>@​PrettyWood</code></a></li>
<li><a href="https://github.com/Renkai"><code>@​Renkai</code></a></li>
<li><a
href="https://github.com/ShaharNaveh"><code>@​ShaharNaveh</code></a></li>
<li><a
href="https://github.com/amyreese"><code>@​amyreese</code></a></li>
<li><a href="https://github.com/carljm"><code>@​carljm</code></a></li>
<li><a
href="https://github.com/charliermarsh"><code>@​charliermarsh</code></a></li>
<li><a
href="https://github.com/chirizxc"><code>@​chirizxc</code></a></li>
<li><a
href="https://github.com/danparizher"><code>@​danparizher</code></a></li>
<li><a
href="https://github.com/dcreager"><code>@​dcreager</code></a></li>
<li><a
href="https://github.com/dhruvmanila"><code>@​dhruvmanila</code></a></li>
<li><a href="https://github.com/dylwil3"><code>@​dylwil3</code></a></li>
<li><a
href="https://github.com/github-actions"><code>@​github-actions</code></a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md">ruff's
changelog</a>.</em></p>
<blockquote>
<h2>0.12.12</h2>
<h3>Preview features</h3>
<ul>
<li>Show fixes by default (<a
href="https://redirect.github.com/astral-sh/ruff/pull/19919">#19919</a>)</li>
<li>[<code>airflow</code>] Convert
<code>DatasetOrTimeSchedule(datasets=...)</code> to
<code>AssetOrTimeSchedule(assets=...)</code> (<code>AIR311</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20202">#20202</a>)</li>
<li>[<code>airflow</code>] Improve the <code>AIR002</code> error message
(<a
href="https://redirect.github.com/astral-sh/ruff/pull/20173">#20173</a>)</li>
<li>[<code>airflow</code>] Move
<code>airflow.operators.postgres_operator.Mapping</code> from
<code>AIR302</code> to <code>AIR301</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20172">#20172</a>)</li>
<li>[<code>flake8-async</code>] Implement <code>blocking-input</code>
rule (<code>ASYNC250</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20122">#20122</a>)</li>
<li>[<code>flake8-use-pathlib</code>] Make <code>PTH119</code> and
<code>PTH120</code> fixes unsafe because they can change behavior (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20118">#20118</a>)</li>
<li>[<code>pylint</code>] Add U+061C to <code>PLE2502</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20106">#20106</a>)</li>
<li>[<code>ruff</code>] Fix false negative for empty f-strings in
<code>deque</code> calls (<code>RUF037</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20109">#20109</a>)</li>
</ul>
<h3>Bug fixes</h3>
<ul>
<li>Less confidently mark f-strings as empty when inferring truthiness
(<a
href="https://redirect.github.com/astral-sh/ruff/pull/20152">#20152</a>)</li>
<li>[<code>fastapi</code>] Fix false positive for paths with spaces
around parameters (<code>FAST003</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20077">#20077</a>)</li>
<li>[<code>flake8-comprehensions</code>] Skip <code>C417</code> when
lambda contains <code>yield</code>/<code>yield from</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20201">#20201</a>)</li>
<li>[<code>perflint</code>] Handle tuples in dictionary comprehensions
(<code>PERF403</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/19934">#19934</a>)</li>
</ul>
<h3>Rule changes</h3>
<ul>
<li>[<code>pycodestyle</code>] Preserve return type annotation for
<code>ParamSpec</code> (<code>E731</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20108">#20108</a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li>Add fix safety sections to docs (<a
href="https://redirect.github.com/astral-sh/ruff/pull/17490">#17490</a>,<a
href="https://redirect.github.com/astral-sh/ruff/pull/17499">#17499</a>)</li>
</ul>
<h2>0.12.11</h2>
<h3>Preview features</h3>
<ul>
<li>[<code>airflow</code>] Extend <code>AIR311</code> and
<code>AIR312</code> rules (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20082">#20082</a>)</li>
<li>[<code>airflow</code>] Replace wrong path
<code>airflow.io.storage</code> with <code>airflow.io.store</code>
(<code>AIR311</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20081">#20081</a>)</li>
<li>[<code>flake8-async</code>] Implement
<code>blocking-http-call-httpx-in-async-function</code>
(<code>ASYNC212</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20091">#20091</a>)</li>
<li>[<code>flake8-logging-format</code>] Add auto-fix for f-string
logging calls (<code>G004</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/19303">#19303</a>)</li>
<li>[<code>flake8-use-pathlib</code>] Add autofix for
<code>PTH211</code> (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20009">#20009</a>)</li>
<li>[<code>flake8-use-pathlib</code>] Make <code>PTH100</code> fix
unsafe because it can change behavior (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20100">#20100</a>)</li>
</ul>
<h3>Bug fixes</h3>
<ul>
<li>[<code>pyflakes</code>, <code>pylint</code>] Fix false positives
caused by <code>__class__</code> cell handling (<code>F841</code>,
<code>PLE0117</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20048">#20048</a>)</li>
<li>[<code>pyflakes</code>] Fix <code>allowed-unused-imports</code>
matching for top-level modules (<code>F401</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20115">#20115</a>)</li>
<li>[<code>ruff</code>] Fix false positive for t-strings in
<code>default-factory-kwarg</code> (<code>RUF026</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20032">#20032</a>)</li>
<li>[<code>ruff</code>] Preserve relative whitespace in multi-line
expressions (<code>RUF033</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/19647">#19647</a>)</li>
</ul>
<h3>Rule changes</h3>
<ul>
<li>[<code>ruff</code>] Handle empty t-strings in
<code>unnecessary-empty-iterable-within-deque-call</code>
(<code>RUF037</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/20045">#20045</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/astral-sh/ruff/commit/c6516e9b60e7b8d3d60b1e3a0fb0db04b533de54"><code>c6516e9</code></a>
Bump 0.12.12 (<a
href="https://redirect.github.com/astral-sh/ruff/issues/20242">#20242</a>)</li>
<li><a
href="https://github.com/astral-sh/ruff/commit/1aaa0847abdebfe910513b1c883977a996da2db5"><code>1aaa084</code></a>
[ty] More tests for TypedDict (<a
href="https://redirect.github.com/astral-sh/ruff/issues/20205">#20205</a>)</li>
<li><a
href="https://github.com/astral-sh/ruff/commit/b49aa3507472a92b492de0fc924eff2c4bad4248"><code>b49aa35</code></a>
Split LICENSE addendum by derivation type (<a
href="https://redirect.github.com/astral-sh/ruff/issues/20222">#20222</a>)</li>
<li><a
href="https://github.com/astral-sh/ruff/commit/1e34f3f20a71a4375ba64faad43f21171e3829cd"><code>1e34f3f</code></a>
[ty] Fix small test typo (<a
href="https://redirect.github.com/astral-sh/ruff/issues/20220">#20220</a>)</li>
<li><a
href="https://github.com/astral-sh/ruff/commit/77b2cee2233620636e03f547337ff805415c7465"><code>77b2cee</code></a>
[ty] Add functions for revealing assignability/subtyping constraints (<a
href="https://redirect.github.com/astral-sh/ruff/issues/20217">#20217</a>)</li>
<li><a
href="https://github.com/astral-sh/ruff/commit/200349c6e84d04a8e0d986488f7991b17b747964"><code>200349c</code></a>
[<code>flake8-comprehensions</code>] Skip <code>C417</code> when lambda
contains <code>yield</code>/`yield fro...</li>
<li><a
href="https://github.com/astral-sh/ruff/commit/0d4f7dde9967704767d8515aadcf8c94353dde35"><code>0d4f7dd</code></a>
[ty] Treat <code>__new__</code> as a static method (<a
href="https://redirect.github.com/astral-sh/ruff/issues/20212">#20212</a>)</li>
<li><a
href="https://github.com/astral-sh/ruff/commit/cb1ba0d4c26dd649bfab9de7ae0e84c0e28e910c"><code>cb1ba0d</code></a>
Expose <code>Indentation</code> in <code>ruff_python_codegen</code> (<a
href="https://redirect.github.com/astral-sh/ruff/issues/20216">#20216</a>)</li>
<li><a
href="https://github.com/astral-sh/ruff/commit/cda376afe079b54b6779704bdd740c9e81423e39"><code>cda376a</code></a>
[ty]eliminate definitely-impossible types from union in equality
narrowing (#...</li>
<li><a
href="https://github.com/astral-sh/ruff/commit/b14fc961413c5ca032fdfdff29fcc6be4f9c8a75"><code>b14fc96</code></a>
Update Rust crate tracing-subscriber to v0.3.20 (<a
href="https://redirect.github.com/astral-sh/ruff/issues/20162">#20162</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/astral-sh/ruff/compare/0.12.9...0.12.12">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=ruff&package-manager=pip&previous-version=0.12.9&new-version=0.12.12)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
### Description
Fixing the build break issue for NV TRT RTX EP
As a temporary solution for the
actions/runner-images#12934 issue.

Azure DevOps pipelines and Gtihub Actions are updating cmake to version
4.* starting from September 8th . However, our macOS build's coreml EP
has a dependency that still depends on cmake 3.x. This PR provides a
hotfix to the issue.

This PR does not address the concern for ADO pipelines, which will be
solved later.
### Description
<!-- Describe your changes. -->

Update React Native iOS CI build.
- Split iOS package build, unit test, and E2E test into separate jobs.
The finer granularity allows for more parallelism and the ability to
re-run a specific test job without also rebuilding the package in case
of failure due to test flakiness.
- Fix issue with Detox not actually running the E2E tests on iOS due to
an earlier failure. The issue was resolved by upgrading to version
20.11.4. It's not obvious why this wasn't causing the CI build to fail
consistently.
- This is the Detox fix:
wix/Detox@f72e0f3
- Reduce iOS package build time by not building ORT test code. ORT unit
tests are already run on the iOS simulator in another CI build.

### Motivation and Context
<!-- - Why is this change required? What problem does it solve?
- If it fixes an open issue, please link to the issue here. -->

CI pipeline improvements.
…aph::CreateImpl(). (microsoft#26001)

### Description
<!-- Describe your changes. -->

Check for non-empty `ep_nodes` before resizing `index_to_ep_node` in
`EpGraph::CreateImpl()`.

In this code:

https://github.com/microsoft/onnxruntime/blob/502416772611825f2e80fb14a865ebf72670689d/onnxruntime/core/graph/ep_api_types.cc#L663-L683

If there are no nodes to process, the values of `min_node_index` and
`max_node_index` will not be updated and this assertion in
`IndexToEpNodeMap::Resize()` will fail.

https://github.com/microsoft/onnxruntime/blob/502416772611825f2e80fb14a865ebf72670689d/onnxruntime/core/graph/ep_api_types.cc#L538

### Motivation and Context
<!-- - Why is this change required? What problem does it solve?
- If it fixes an open issue, please link to the issue here. -->

Fix debug assertion failure in
[`If.ConditionalBranchesOnlyContainConstantNodes_ThenBranchExecution`](https://github.com/microsoft/onnxruntime/blob/502416772611825f2e80fb14a865ebf72670689d/onnxruntime/test/providers/cpu/controlflow/if_test.cc#L406-L411)
when running unit test with a plugin EP (see microsoft#25689).
@jatinwadhwa921 jatinwadhwa921 merged commit 3215fef into ovep-develop Sep 11, 2025
4 of 7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.