[test][msan] Avoid SLP vectorization in BinaryOpOriginTest (#233672)
After b24e56eb176a (#233271), SLP vectorizes loads of x and y in
BinaryOpOriginTest into a single vector load. Because MSan currently
loads a single scalar origin from the base address of a vector load, the
stale origin of initialized element x is picked instead of poisoned
element y.
Mark BinaryOpOriginTest NOINLINE so op is not inlined and SLP does not
vectorize the loads until MSan vector load origin tracking is fixed.
Assisted-by: Gemini
[BPF] Ignore trailing debug instructions when adding trap exit (#221160)
A trailing `DBG_VALUE` after a call to `__bpf_trap` makes
`BPFMIPreEmitPeephole` miss the trap and omit the required exit
instruction.
Use the last non-debug instruction when checking for the trap. Add a
regression test covering a trailing debug record.
Fixes #221150
This issue was found by a non-AI automated testing tool. AI assisted
with the analysis and development of the fix.
[AMDGPU] Materialize WMMA SGPR scales to VGPRs before scheduling
v_wmma_scale scale operands accept an SGPR or a VGPR. On GFX12,
depctr_va_ssrc is a 1-deep counter, so each VALU instruction that reads
an SGPR scale takes the only scalar-source slot. A run of WMMA ops that
all read SGPR scales therefore serializes. One cross-bank copy pays for
that slot once; later WMMA ops then read a VGPR and no longer contend
for va_ssrc.
SIMaterializeWMMAScale runs at the end of the machine SSA optimizations,
after SIShrinkInstructions and before scheduling. It is skipped at -O0
and on targets older than GFX12. GFX1250 is included: the separate VALU
read-after-write hazard no longer applies there, but the dependency
counter still does.
The pass walks every WMMA that has scale_src0 and records virtual SGPR
uses of scale_src0 and scale_src1, grouped by register. Physical
registers and subregister uses are left alone. For each SGPR it inserts
a COPY into a low aligned VGPR (the lo256 class matching the scale's
[22 lines not shown]
py-line_profiler: updated to 5.1.0
5.1.0
* FIX: Text output now replaces characters the output stream cannot
encode with escape sequences instead of dropping the source line
* FIX: Make sure that the profiled code is run in the
``sys.modules['__main__']`` namespace to avoid issues w/e.g. pickling
* CHANGE: Drop support for Python 3.8 and Python 3.9
* FIX: ``ScopingPolicy`` members now type-check properly as instances
thereof -- at least on Python versions (3.11+) where ``enum.StrEnum``
is available
* FIX: Bytecodes of profiled functions now always labeled to prevent
confusion with non-profiled "twins"
* FIX: Stop reverting ``sys.modules`` after calling ``kernprof.main()``
to avoid edge-case issues with e.g. pickling
* FIX: Fixed bugs where ``kernprof -l`` (1) misses ``--prof-mod``
targets if multiple thereof are imported in the same (from-)import
statement, and (2) crashes when profiling modules containing
``from ... import *`` statements
[5 lines not shown]
[libc++][docs] Update conformance CSV handling for Markdown
Read and write Markdown paper and issue links and MyST status substitutions
so the conformance updater stays in sync with the migrated status tables.
Preserve Markdown titles and notes, and convert legacy reST issue notes on
a best-effort basis. Document the new note markers.
Fix the swapped status and release-version columns for P3052R2 exposed by
validating the migrated tables.
LLM-aided
py-protego: updated to 0.7.0
0.7.0 (2026-09-21)
- **Backward-incompatible:** ``Protego.parse()`` now raises a more suitable
``TypeError`` instead of a ``ValueError`` when ``content`` is not a string.
- Added official support for Python 3.15.
- ``can_fetch()`` now allows ``/robots.txt`` whatever the rules say, as
required by RFC 9309.
- A group now applies to a user agent only if its product token appears in
that user agent at a token boundary, so that ``User-agent: bot`` no longer
applies to ``mybot``. A product token within a whole ``User-Agent`` header
value, e.g. ``Mozilla/5.0 (compatible; mybot/1.0)``, still matches.
- Percent-encoding is now normalized in the query string and the parameters
of a URL, and not only in its path, so that a rule matches whichever
[34 lines not shown]
[AMDGPU] Materialize WMMA SGPR scales to VGPRs before scheduling
v_wmma_scale scale operands accept an SGPR or a VGPR. On GFX12,
depctr_va_ssrc is a 1-deep counter, so each VALU instruction that reads
an SGPR scale takes the only scalar-source slot. A run of WMMA ops that
all read SGPR scales therefore serializes. One cross-bank copy pays for
that slot once; later WMMA ops then read a VGPR and no longer contend
for va_ssrc.
SIMaterializeWMMAScale runs at the end of the machine SSA optimizations,
after SIShrinkInstructions and before scheduling. It is skipped at -O0
and on targets older than GFX12. GFX1250 is included: the separate VALU
read-after-write hazard no longer applies there, but the dependency
counter still does.
The pass walks every WMMA that has scale_src0 and records virtual SGPR
uses of scale_src0 and scale_src1, grouped by register. Physical
registers and subregister uses are left alone. For each SGPR it inserts
a COPY into a low aligned VGPR (the lo256 class matching the scale's
[22 lines not shown]
py-pytimeparse: updated to 1.1.10
1.1.10
Handle multiline input during sign parsing
Sum fractional units exactly so whole-second results are not truncated
add type hints to make "mypy" happy about "import pytimeparse"
Useless shebangs
py-authlib: updated to 1.9.1
1.9.1
Use scriv to handle the changelog
1.9.0
eat: add Identity Assertion JWT Authorization Grant (ID-JAG)
Fix empty signatures validation in JWS JSON deserialization
fix(jose): reject boolean values for NumericDate claims
fix(client): avoid duplicated OAuth 1.0 parameters in signed requests
OAuth2 token fetch crashes with JSONDecodeError instead of a catchable error on rate-limit responses
docs: add i18n wrappers in conf.py and templates
fix(oauth): enforce JOSE key, scope, and audience validation
AsyncOpenIDMixin.parse_id_token: return None when id_token is absent, matching the sync client
fix(oauth): enforce nonce and JAR request validation
fix(oauth): require client authentication for ID-JAG grants
Compare the condition of an unguarded match_any candidate
A match_any WHEN clause with a runtime condition also gets a candidate
without the condition, since its other traits can still match. That
candidate has no condition trait, so isStrictSubset skipped the key
check, and it became a subset of a WHEN clause with a different
condition. The key is now compared whenever it is set.
haproxy: updated to 3.4.7
3.4.7
- MEDIUM: jwt: Reject "none" alg in jwt_verify by default
- MINOR: quic: implement the AEAD integrity limit
- BUG/MEDIUM: flt-http-comp: Block HTX_FL_EOM flag till the end of compression
- BUG/MINOR: flt-http-comp: Rely on htx_set_eom() to restore EOM flag
- MINOR: stconn: prefer to replace endpoints rather than detaching them
- BUILD: haring: fix compile issue due to nop warning.
- MINOR: stick-table: provide a function to estimate on-wire data size
- MINOR: stick-table: calculate the on-wire size of each key
- BUG/MEDIUM: stick-table: restrict key sizes to what fits in a buffer
- BUG/MEDIUM: pattern: don't dereference static_pattern's data when not filling it
- BUG/MINOR: jwe: Buffer overflow when filling fake cek in case of RSA1.5
- BUG/MINOR: jwe: Avoid buffer overflow in fake cek (RSA1.5)
- BUG/MINOR: http: do not consume the delimiter of a truncated q-factor
- BUG/MINOR: sample: apply the ms_/us_ time offsets in the input unit
- BUG/MINOR: sample: zero-pad the fractional part emitted by http_date()
- BUG/MINOR: sample: make quic_enabled() always succeed
[55 lines not shown]
py-pkginfo: updated to 1.13.3
1.13.3 (2026-10-16)
- Remove dead branch in 'wheel.Wheel._extract_purelib'.
1.13.2 (2026-10-16)
- Add ``Wheel`` support for exposing the PEP 427 tags encoded in the wheel
filename (``python_tag``, ``abi_tag``, ``platform_tag``, ``build_tag``),
along with the ``Root-Is-Purelib`` setting read from the archive's
``WHEEL`` file (``purelib``): the closest available signal for whether
a wheel contains native code.
- Anchor candidate matching for installed distribution metadata at the
``<name>-<version>`` boundary, such that a package whose name is a
strict prefix of another installed package's name no longer has its
metadata masked by that other package (e.g. 'pyramid' vs.
'pyramid_chameleon').
[4 lines not shown]
py-pykka: updated to 4.5.0
4.5.0
Breaking changes
Drop support for Python 3.10, which has reached end-of-life.
Changes
Add support for Python 3.15.
Migrate docs from Mkdocs to Zensical.
Types are now checked with ty, in addition to mypy and basedpyright, which has replaced pyright.
py-ijson: updated to 3.6.0
3.6.0
* Removed support for Python < 3.10
* Fixed treatment of null characters on strings (map keys and string values) on `cffi` backend
py-tldextract: updated to 5.4.0
5.4.0 (2026-10-03)
* Features
* Add `TLDEXTRACT_PUBLIC_SUFFIX_LIST_URLS` environment variable to set the default suffix list URLs
* Add the clearer `TLDEXTRACT_DEFAULT_FETCH_TIMEOUT` environment variable, while retaining support for `TLDEXTRACT_CACHE_TIMEOUT`
* Bugfixes
* Fix hostname extraction from already-parsed URLs with credentials, ports, or IPv6 addresses
* Preserve private suffix metadata when a longer wildcard suffix does not match
* Docs
* Document added and deprecated names
* Misc.
* Require CI gate before merging
Offload tools: Parse offload library options into a context (#233513)
cl::ParseCommandLineOptions sets library options in T::Global, which
LLVMContexts no longer read since #233044, so clang-nvlink-wrapper's
LTO ignores -mllvm options like -print-isel-input.
Switch the offload tools to cl::parseCommandLineOptions and set the
context in clang-nvlink-wrapper's lto::Config.
LLM-aided
py-lazy-object-proxy: updated to 1.13.0
1.13.0 (2026-10-17)
* Document explicit proxy evaluation and identity checks with ``None``.
* Fixed some broken tests on Python 3.15.
* Added configuration for Windows ARM64 wheels.
* Added Python 3.15 wheels.
* Dropped support for EOL Python 3.10 and 3.9.
* Dropped wheel building for Python 3.13 free-threading (experimental and unsupported by cibuildwheel anymore;
`details <https://github.com/pypa/cibuildwheel/issues/2683>`_).
* Fixed typo in ``__annotations__`` (basically it was broken).
py-httpx2: updated to 2.15.1
2.15.1 (October 19th, 2026)
Fixed
* Configure the default SSL context once on Linux, instead of on every handshake. With OpenSSL older than 3.4, CPU usage grew over the lifetime of a reused client.
2.15.0 (October 19th, 2026)
Removed
* Drop support for Python 3.10
py-httpcore2: updated to 2.15.1
2.15.1 (October 19th, 2026)
Fixed
* Configure the default SSL context once on Linux, instead of on every handshake. With OpenSSL older than 3.4, CPU usage grew over the lifetime of a reused client.
2.15.0 (October 19th, 2026)
Removed
* Drop support for Python 3.10.
[lldb] Search for a kernel's kexts before loading any of them (#231211)
This is the final piece of work to parallelize kext lookups. Loading the
kexts is now split into two phases:
1. Determining what to search for, which involves the process and target.
2. Adding the kext to the target.
Both phases remain serial, but the searches between them are batched and
those the platform cannot answer can run in parallel. The kexts are
added to the target in the order the kernel lists them. The progress
report counts a kext when it is being added rather than when preparing
for the symbol lookup. The search has its own progress reporting.
rdar://122977780
math/convertall: Mark for removal
This project was rewritten in Dart/Flutter which hasn't been ported to
FreeBSD. The legacy version was written for PyQt5 which is EOL.