Changelog:
==========
- Fix memory leak in copy() and new() when memory allocation fails (rare edge
case)
- Fix seed/reset state initialization in xxh32 and xxh64 (unlikely to affect
normal usage)
- Replace Py_BuildValue with PyLong_FromUnsignedLong/LongLong for performance
- Update README examples to use bytes literals
- Add CodSpeed performance benchmarks and CI workflow
- Build aarch64/armv7l on native Arm runners; test against Python 3.15.0-beta.2
- Speed up module-level one-shot digest(), intdigest(), and hexdigest()
functions by switching them to METH_FASTCALL.
- Keep one-shot argument handling consistent with hash constructors, including
positional and keyword input/seed arguments, duplicate argument errors, and
oversized seed wrapping.
- Fix error handling in the xxh3_128 integer digest path so allocation failures
are reported cleanly.
- Fix Python 3.8 builds by adding a PyModule_AddType compatibility fallback
with correct reference counting.
- Correct type stubs for xxh64_digest(), xxh64_hexdigest(), and
xxh64_intdigest(), they were incorrectly aliased to xxh3_64 functions.
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Changelog:
============
- Fix type errors flagged by ty 0.0.43
- Drop obsolete ty: ignore directives
- docs: Use double backquotes for git command in development.rst
- docs: Fix indent misalignment in reference/config.rst
- docs: replace http://tox.readthedocs.org with https://tox.wiki
- fix(config): restore skip_missing_interpreters default to False
- feat(virtualenv): auto-pin virtualenv for end-of-life Python
- treat scalar string then/else as a single item in if-replace extend
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Changelog:
============
- Python support 3.8+ only
- decompression limited by size and ratio
- decoder foundation to support more compression algorithms
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Changelog:
==============
- Support for Python 3.9 has been removed.
- Support for PyPy 3.9 has been removed.
- Support for Python 3.14 has been added.
- Headers marked as sensitive will no longer log their value at DEBUG level.
Instead a placeholder value of SENSITIVE_REDACTED is logged.
- Fixed perfect match missed for headers with empty values.
- Restricted variable integer decoding to uint32 to prevent run-away
computation.
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Changelog:
Fix a crash on free-threaded builds when multiple greenlets were holding a critical section on an object and the GIL for the thread was dropped.
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Changelog:
===========
- Added support for Python 3.14
- Fixed invalid license classifier
- Explicitly set language="c++" and add -lstdc++ to solve linker problem on OpenSUSE
- Fix bug where compilation warnings for MSVC were not turned into errors for CI testing
- Eliminate various static analysis warnings
- Removed support for Python 3.8
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Changelog:
Fix protection against type cast errors during the static analysis phase
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Changelog:
==============
- Fixed teardown of higher-scoped async fixtures failing on asyncio with
RuntimeError: Attempted to exit cancel scope in a different task than it was
entered in when an async test raise an outcome exception (e.g., pytest.skip(),
pytest.xfail(), or pytest.fail())
- Fixed CapacityLimiter.total_tokens rejecting a value of 0 when the limiter
was instantiated outside of an event loop, contradicting the documented
behavior of allowing 0 total tokens
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Changelog:
==========
- When searching, the viewport is placed snug left where possible.
- The ability to read and write files in old Mac format was removed
(that is: files that use a lone carriage return as line ending).
- The ^T toggle between WhereIs and GotoLine has been dropped.
- When --backup is active, in some situations no backup was made,
or it had a wrong timestamp. Both issues are fixed now.
- When nano crashes or is killed, any .save file is not chmodded
to the permissions of the base file, nor chowned to its owner.
- M-Ins and M-Del have become rebindable.
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Changelog:
- Close socket by default on failed SSL handshake when created with new, but
keep open when upgrading from existing socket with start_SSL. This restores
old behavior which was accidentally broken.
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Changelog:
===========
- Fix initramfs switch-root failure
- Add haveged-initramfs.service for use inside the initramfs (without --no-command, without PrivateNetwork=true)
- Update dracut module to install the initramfs-specific service file
- Fix 100% CPU spin when --no-command is used
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
freeglut's CMake used FIND_PACKAGE(OpenGL REQUIRED COMPONENTS OpenGL),
which demands the GLVND libOpenGL.so (OPENGL_opengl_LIBRARY). Without the
glvnd distro feature libglvnd is not built, so do_configure fails on the
X11, Wayland and GLES paths:
CMake Error: Could NOT find OpenGL (missing: OPENGL_opengl_LIBRARY)
CMake's FindOpenGL also couples the EGL component to GLVND: requesting EGL
without GLES2/GLES3 unconditionally adds OPENGL_opengl_LIBRARY, so dropping
the "OpenGL" component alone is not enough.
Extend the legacy-OpenGL patch to:
* X11/GLES: drop the unsatisfiable GLVND "OpenGL" component from
FIND_PACKAGE and link the legacy OpenGL::GL target.
* Wayland: find EGL via pkg-config (PkgConfig::EGL), which is independent
of GLVND, and link the legacy OpenGL::GL target.
Verified by building freeglut for qemux86-64 with x11+wayland and no glvnd
(configure, compile, install, package) and re-checking freeglut-gles
configures.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
apitrace's CLI bakes APITRACE_PYTHON_EXECUTABLE, defined unconditionally
to ${Python3_EXECUTABLE} - the absolute path of the python CMake found at
configure time.
On the autobuilder that resolves to the launching
venv python /srv/pokybuild/buildbot-venv/bin/python3, which lives under the
worker HOME, so /usr/bin/apitrace trips:
QA Issue: File /usr/bin/apitrace in package apitrace contains reference
to the build host HOME directory [buildpaths]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
The Makefile bakes LD_RUN_PATH=...:$(HOME)/lib:/usr/local/lib:... into the
command binaries via LDENV, embedding the build host HOME directory in the
shipped binaries:
do_package_qa: QA Issue: File /usr/bin/tchmgr ... contains reference to the
build host HOME directory [buildpaths]
Strip the $(HOME)/lib and /usr/local/lib entries from the generated Makefile
after configure.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
The bundled PEGTL parses __PRETTY_FUNCTION__ at compile time and trips a
static_assert under GCC 16:
src/ThirdParty/PEGTL/include/tao/pegtl/demangle.hpp:118:23:
error: static assertion failed
usbguard demangles PEGTL rules built from ascii::one<'\000', '\012'>,
i.e. types with a char non-type template parameter whose value is '\0'.
GCC 16 renders such a parameter as a literal NUL byte and truncates
__PRETTY_FUNCTION__ there:
constexpr std::string_view demangle() [with T = seq<one<'
so the trailing "; std::string_view = ...]" and even the closing ']' are
gone, and rfind(';')/rfind(']') both return npos.
Patch demangle() to fall back to the remainder of the string when no
';'/']' terminator survives, instead of failing the build; the demangled
name is only used for tracing diagnostics. Type names without a '\0' char
parameter are unaffected.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
GCC 16 / libstdc++ implements the C++20 deletion of
std::operator<<(std::ostream&, wchar_t). NCtext.cc and NCRichText.cc stream
a wchar_t directly into a narrow std::ostream for debug output:
NCtext.cc:348:34: error: use of deleted function
'std::basic_ostream<char, _Traits>& std::operator<<(...wchar_t)'
Add a patch casting both sites to char (the values are ASCII).
Signed-off-by: Khem Raj <raj.khem@gmail.com>
GCC 14 promotes -Wincompatible-pointer-types to an error by default. This
release passes a wrongly-typed GDestroyNotify to g_ptr_array_new_full:
telepathy-glib/protocol.c:1794:42: error: passing argument 2 of
'g_ptr_array_new_full' from incompatible pointer type
[-Wincompatible-pointer-types]
Add -Wno-error=incompatible-pointer-types so the build completes.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
GCC 16 emits a spurious -Wmaybe-uninitialized for the exception helper
constructors in reply.h, and the project builds with -Werror:
src/sw/redis++/reply.h:54:60: error: '<unknown>' may be used uninitialized
[-Werror=maybe-uninitialized]
cc1plus: all warnings being treated as errors
Add -Wno-error=maybe-uninitialized for the gcc toolchain.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
GCC 16 reports a set-but-unused variable in the JSON parser, and avro builds
with -Werror:
lang/c++/impl/json/JsonIO.cc:296:30: error: variable 'n' set but not used
[-Werror=unused-but-set-variable=]
Extend the existing toolchain-gcc -Wno-error workaround to cover it.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
GCC 16 flags a set-but-unused variable in MS3DLoader.cpp and assimp builds
with -Werror:
code/AssetLib/MS3D/MS3DLoader.cpp:633:28: error: variable 'qu' set but not
used [-Werror=unused-but-set-variable=]
cc1plus: all warnings being treated as errors
Pass -DASSIMP_WARNINGS_AS_ERRORS=OFF so upstream warnings do not break the
build.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
GCC 14 promotes -Wincompatible-pointer-types to an error by default. The
buffer_init*.c sources pass read()/write() directly where a typeless op
function pointer is expected:
buffer/buffer_init_read.c:6:18: error: passing argument 2 of 'buffer_init'
from incompatible pointer type [-Wincompatible-pointer-types]
The existing gcc-15 patch only fixes the BUFFER_INIT macro, not these call
sites. Add -Wno-error=incompatible-pointer-types so the build completes.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Two build failures occur with the default clang/lld toolchain (and with
gcc) when compiling android-tools 35.0.2:
1. The bundled fmtlib 10.2.0 validates FMT_STRING() inside a consteval
basic_format_string constructor whose parse path evaluates
"format_str_.remove_prefix(detail::to_unsigned(it - begin()))". Current
C++ frontends reject that iterator subtraction as a non-constant
subexpression:
error: call to consteval function
'fmt::basic_format_string<...>::basic_format_string<FMT_COMPILE_STRING,0>'
is not a constant expression
Define FMT_CONSTEVAL to empty so fmt drops the consteval qualifier and
validates format strings via its runtime path instead.
2. adb's IOVector::coalesce() static_asserts that its Block collection type
is standard-layout. Block holds a std::unique_ptr<char[]>, which is
standard-layout under LLVM libc++ (AOSP's runtime) but not under GNU
libstdc++, so the assertion fails for libstdc++ based toolchains:
packages/modules/adb/types.h:235:27: error: static assertion failed due
to requirement 'std::is_standard_layout<Block>()'
The assertion does not protect the memcpy it guards (which writes into
plain char storage), so drop it.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
do_configure generates autoconf.h by compiling and running a
small lock-feature probe with the build-host compiler.
The Makefile hardcodes the target networking libs
(-lnet -lnsl, from the libnet/libnsl2 DEPENDS)
into LDFLAGS, but those only exist in the target sysroot,
so the native link fails with
'cannot find -lnet/-lnsl'
The probe does not use them, so override LDFLAGS for this native
step with just what it needs.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
The release tarball ships a pre-generated Makefile with
the maintainer's absolute build paths baked in (${SHELL} /sources/LIB/MNG/.../missing)
so the make clean run by autotools_preconfigure fails before autoreconf
regenerates the build system.
Set CLEANBROKEN to skip that pre-configure clean.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
The shipped Makefile errors out
'You must run ./configure before make'
when Make.inc/src/config.h are missing, so the 'make clean' run by
autotools_preconfigure fails before configure has run.
Set CLEANBROKEN to skip that clean.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Clang errors on a direct include of <bmi2intrin.h>
'Never use <bmi2intrin.h> directly; include <immintrin.h> instead.'
hit whenever __BMI2__ is defined.
Backport the upstream fix to include the umbrella <immintrin.h>
header guarded by an x86 check.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
The shipped Makefile does 'include config.mk' which is only created by
configure, so the 'make clean' run by autotools_preconfigure fails before
configure has run.
Set CLEANBROKEN to skip that pre-configure clean.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Newer libxfce4ui defines the XfceTitledDialog autoptr cleanup functions
the panel's guarded redefinition is redundant and breaks the build
under GCC 16. Drop it (backport of upstream 3ac941fc).
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>