system: validate uploaded picture types
Reject anything other than GIF, JPEG or PNG based on MIME type.
Detect the type again when either serving the legacy preview
or when using the API so we don't have to depend on a filename
extension to detect Content-Type.
www/py-dj60-django-mptt: Set PORTSCOUT
* The only user is net-mgmt/netbox and its upstream recently pinned the
version to 0.18.0.
Therefore, set PORTSCOUT temporarily until net-mgmt/netbox has been
updated to the 4.7.x release.
[libc] Refactor kill syscall into syscall_wrappers (#237798)
This patch refactors the `kill` Linux syscall into a centralized header
wrapper under `src/__support/OSUtil/linux/syscall_wrappers/kill.h` per
the syscall wrapper refactoring guidelines.
Prerequisite for #237561.
nfs_nfsdstate.c: Partial revert of 64857418bb23
Dropping the cached reply that is too large causes
a correctness problem that is too difficult to fix,
so revert this and leave it the way it was.
Although there is an argument that not doing could
cause resource exhaustion, it has not been reported
in the field as a problem.
MFC after: 1 month
www/php-url-highlight: Find URLs in text and turn them into clickable links
URL Highlight is a PHP library to find URLs in text and turn them into
clickable links. It works with plain text, HTML, and HTML entity encoded
input; matches URLs without a scheme by top-level domain, as well as
emails, IP hosts, and Unicode; drops trailing punctuation that belongs
to the surrounding text; and leaves existing links untouched.
www/php-laminas-feed: Create and consume RSS and Atom feeds
laminas-feed reads and writes RSS and Atom feeds. Laminas\Feed\Reader
consumes feeds of any common version through one interface.
Laminas\Feed\Writer builds RSS 2.0 and Atom 1.0 feeds from a single feed
object, with correct escaping and dates.
Classes are installed under the PHP include path in
share/pear/Laminas/Feed, laid out by namespace, so any PSR-4 autoloader
can find them.
devel/php-laminas-stdlib: SPL extensions, array utilities, and more for Laminas
laminas-stdlib is a set of useful classes and helpers for PHP:
extensions to SPL data structures, array and string utilities, hydration
interfaces, and similar general-purpose code used by the other Laminas
components.
www/php-laminas-escaper: SPL extensions, array utilities, and more for Laminas
laminas-escaper securely and safely escapes HTML, HTML attributes,
JavaScript, CSS, and URLs, following the OWASP recommendations for each
output context.
[MLIR][Tensor] canonicalize splats with static shapes (#237560)
Adds the `ReplaceSplatStaticShapeDims` canonicalizer pattern to
`tensor.splat`.
This is similar to `tensor.empty`
[`ReplaceEmptyTensorStaticShapeDims`](https://github.com/llvm/llvm-project/blob/33e1c2c1b8a6fea5aaf6067fde636dee648df794/mlir/lib/Dialect/Tensor/IR/TensorOps.cpp#L1158)
pattern and turns
```mlir
%dim = arith.constant 4 : index
%splat = tensor.splat %arg0[%dim] : tensor<?xf64>
```
into
```mlir
%splat = tensor.splat %arg0 : tensor<4xf64>
%casted = tensor.cast %splat : tensor<4xf64> to tensor<?xf64>
```
[lldb] Avoid per-thread searches when setting stop info (#236818)
At a stop, `ProcessGDBRemote::SetThreadStopInfo` runs for every thread.
Each call searched the thread list for the thread, and `m_thread_ids`
for the position of the thread's PC in the stop reply's thread-pcs, so a
stop took time quadratic in the number of threads.
Callers that have the thread now pass it in, and `WillPublicStop` finds
the threads in a map. `m_thread_ids` is assigned in several places, so
rather than rely on each of them to clear the map, it checks the
position it finds against `m_thread_ids` and rebuilds the map when the
position is missing or different.
[mlir] Move sharding interface impls into extension libraries (#237987)
The external sharding models of Arith, Linalg and Tosa were compiled
into `MLIRArithTransforms`, `MLIRLinalgTransforms` and
`MLIRTosaShardingInterfaceImpl`, so every user of these libraries linked
the Shard dialect, `MLIRShardingInterface` and, for Linalg,
`MLIRShardTransforms`, even when sharding is never used.
Move them into extension libraries, following the existing Tensor, Func
and Bufferization sharding extension convention. As there, the models
are registered by the new `registerAllExtensions` calls.
[clang][bytecode][NFC] Fix a typo in `Record::findVirtualBase()` (#237942)
We need to compare to `VirtualBases.end()`.
Also fix the iterator types in this file as a drive-by NFC fix.
Disable pre-link LTO vectorisation and loop unroll for at O2 and O3 optimisation levels (#195886)
[[RFC] Disable pre-LTO loop
vectorisation](https://discourse.llvm.org/t/rfc-disable-pre-lto-loop-vectorisation)
Patches:
* A small refactor split out to:
https://github.com/llvm/llvm-project/pull/196290
* **Disable pre-LTO `LoopVectorizePass` and `SLPVectorizerPass`**
In this PR
* **Disable pre-LTO `LoopUnrollPass`**
A number of loops end up as runtime-unrolled where in the original
compiler they are vectorised+unrolled; the epilogue part of the
runtime-unrolled loops persists through optimisations and is left in the
final binary.
In this PR
[22 lines not shown]
[AArch64][NEON] Extend zero vec insertion folding (#232845)
404ceba introduced patterns for NEON across-lane reductions whose scalar
result is inserted into lane zero of a zero vector.
These patterns replace a zero vector creation followed by a move into
that zero vector through a direct use of the reduction result.
The original commit explicitely excluded mixed input/output vector
types.
This patch adds some of them (128-bit input and 64-bit output vectors)
Additionally, some of these new patterns are vector type widening ones,
other ones have 64 in and
out vector types.
Only the v2i32 input ones are replaced through an optimization to an
equivalent pairwise operation with the zero vector as another input.
For v2f32 input functions, we can also use pairwise instructions, but
[3 lines not shown]
[analyzer] Fix mtx_timedlock in unix.BlockInCriticalSection (#237154)
The `mtx_timedlock` function was treated as a single-parameter function,
but in fact it takes 2 arguments. Other parts of the test suite already
have the correct signature. The incorrect assumption was introduced by
#80029 (commit 705788c84623b4f1dab72a108e039a0de2d53cf6) on 2024-03-18.
---------
Co-authored-by: Balázs Benics <benicsbalazs at gmail.com>