Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package swig for openSUSE:Factory checked in at 2026-10-31 23:06:34 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/swig (Old) and /work/SRC/openSUSE:Factory/.swig.new.1255 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "swig" Sat Oct 31 23:06:34 2026 rev:89 rq:1382803 version:4.5.1 Changes: -------- --- /work/SRC/openSUSE:Factory/swig/swig.changes 2026-06-30 15:11:29.156085608 +0200 +++ /work/SRC/openSUSE:Factory/.swig.new.1255/swig.changes 2026-10-31 23:06:38.245626368 +0100 @@ -1,0 +2,90 @@ +Mon Sep 28 12:50:55 UTC 2026 - Dirk Müller <[email protected]> + +- fix typo +- avoid running rm if no match found + +------------------------------------------------------------------- +Fri Sep 4 13:02:47 UTC 2026 - Klaus Kämpf <[email protected]> + +- Update to 4.5.1 + * Regression fix for %rename using a format string, such as Ruby's + -autorename, dropping a class template's partial specializations. + * Regression fix restoring the %typemaps_string_alloc macro for string + classes using custom allocators. + * Python fix for compile errors in a module that %imports another module + already using the STL containers. + * MinGW configure and CMake PCRE2 version build fixes. + +------------------------------------------------------------------- +Tue Aug 11 09:35:01 UTC 2026 - Martin Pluskal <[email protected]> + +- Move the test suite into a separate multibuild flavour: + * the test suite is 595s of a 649s build, of which only 23s is + compiling swig itself, and llvm builds depend on swig, so a + large part of the distribution waits for it + * the default flavour now builds and packages only, the new test + flavour runs the same suite unchanged + * the test flavour ships no packages, so a red run blocks no + rebuild +- Build the Python, Ruby and Boost dependencies only in the test + flavour, they are needed to compile and run the generated bindings + but not to build swig itself, which links nothing but pcre2: + * this also stops swig being rebuilt whenever those stacks move + +------------------------------------------------------------------- +Thu Aug 6 10:12:54 UTC 2026 - Klaus Kämpf <[email protected]> + +- Update to 4.5.0 + * New C++20 support: concepts, requires-clauses and + requires-expressions, type-constrained template parameters, + constrained alias templates and abbreviated function templates + (auto parameters). + * New C++17 support: class template argument deduction (CTAD) + handling, user-defined deduction guides and pack expansion in + using-declarations. + * C++14 generic lambdas and variable templates. + * Add support for wrapping std::function via the new + std_function.i library. + * Template partial specialization fixes for function types and + parameter packs. + * Numerous using-declaration, inherited-constructor and + typedef-scope name resolution fixes. + * User-defined literal operators emitted without deprecated + whitespace and multicharacter constants corrected to + use int type. + * More powerful %rename for instantiated templates. + * cdata.i now uses a binary data type (e.g. Python bytes, + JavaScript Uint8Array) so all byte values round-trip correctly. + * char *& string typemaps added to all remaining target languages. + * Runtime type system fixes, including cross-module type casts and + a strict weak ordering fix in the type lookup. + * Memory allocation failure protection added to several typemaps. + * %typedef is deprecated; embed.i and the %new_copy_array macro + are removed. + * Fewer compiler warnings in generated code. + * Python 2 is no longer supported; SWIG now targets Python 3.5 and + later. Python 2 code paths and compatibility macros are removed + from the generated wrappers and the SWIG library and the + keyword/built-in warning list now tracks Python 3. + * Python: PEP 484 type annotations support added, new -typehints and + .pyi stub generation, -builtin docstring parity, metaclass and + director reference counting fixes and %nokwargs fixes. + * Lua: director support added; std::array, std::set, + std::unordered_set, std::unordered_map, shared_ptr and nested + class support added. Minimum Lua version is now 5.1. + * Ruby: generated wrappers migrated to the TypedData API (the + deprecated Data API is removed in Ruby 4.1) and use embedded + TypedData storage on Ruby 3.3 and later; GC compaction crash fix + for STL containers of Ruby objects. + * Go: %rename of enums honoured, new -unique-id/-no-unique-id + flags, Windows build and test support and various + rvalue-reference and director fixes. + * R: %rename of enums and enum items honoured, scoped enum fixes + and R 4.6.0 compatibility. + * JavaScript: v8 and node engines support v8 13.x and 14.x, as used by + Node.js 24 and 26, with improved node-addon-api detection. + * Tcl 9 support. + * Minor fixes and improvements specific to: C#, D, Guile, Java, + Octave, OCaml, Perl, PHP, Scilab. + +------------------------------------------------------------------- Old: ---- swig-4.4.1.tar.gz New: ---- _multibuild swig-4.5.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ swig.spec ++++++ --- /var/tmp/diff_new_pack.LNTe06/_old 2026-10-31 23:06:39.487677683 +0100 +++ /var/tmp/diff_new_pack.LNTe06/_new 2026-10-31 23:06:39.489677765 +0100 @@ -1,7 +1,7 @@ # # spec file for package swig # -# Copyright (c) 2025 SUSE LLC and contributors +# Copyright (c) 2026 SUSE LLC and contributors # Copyright (c) 2025 Andreas Stieger <[email protected]> # # All modifications and additions to the file contributed by third parties @@ -17,8 +17,23 @@ # +%global flavor @BUILD_FLAVOR@%{nil} +%if "%{flavor}" == "test" +%define psuffix -test +%bcond_without test +# This flavour packages nothing -- it exists only to run the test suite -- +# so do not leave a swig-test-debugsource behind either. +%global debug_package %{nil} +%else +%define psuffix %{nil} +%bcond_with test +%endif +# %%{name} carries the flavour suffix, so everything naming the upstream +# project -- sources, docdir, the unpacked tree -- goes through %%{origname}. +%define origname swig + %if 0%{?fedora} + 0%{?rhel_version} + 0%{?centos_version} > 0 -%define docpath %{_docdir}/%{name}-%{version} +%define docpath %{_docdir}/%{origname}-%{version} BuildRequires: perl-Test-Simple BuildRequires: perl-devel %if 0%{?centos_version} < 800 @@ -26,18 +41,20 @@ %endif %endif %if 0%{?suse_version} > 0 -%define docpath %{_docdir}/%{name} +%define docpath %{_docdir}/%{origname} +%if %{with test} BuildRequires: ruby-devel %endif -Name: swig -Version: 4.4.1 +%endif +Name: %{origname}%{psuffix} +Version: 4.5.1 Release: 0 Summary: Simplified Wrapper and Interface Generator License: BSD-3-Clause AND GPL-3.0-or-later Group: Development/Languages/C and C++ URL: https://www.swig.org/ -Source: https://prdownloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz -Source1: %{name}.rpmlintrc +Source: https://prdownloads.sourceforge.net/%{origname}/%{origname}-%{version}.tar.gz +Source1: %{origname}.rpmlintrc BuildRequires: autoconf BuildRequires: automake BuildRequires: bison >= 3.5 @@ -53,6 +70,12 @@ BuildRequires: gcc BuildRequires: gcc-c++ %endif +# Python, Ruby and Boost are needed ONLY to compile and run the generated +# bindings in the test suite -- swig itself is a C++ program that emits source +# code and links nothing but pcre2 (Debian builds it with none of these). +# Keeping them out of the default flavour also stops swig being rebuilt every +# time the python, ruby or boost stacks move. +%if %{with test} %if 0%{?centos_version} >= 800 BuildRequires: boost-devel BuildRequires: python3-devel @@ -67,6 +90,7 @@ BuildRequires: python-devel > 2.6 %endif %endif +%endif %description SWIG is a compiler that attempts to make it easy to integrate C, C++, @@ -78,6 +102,7 @@ documentation generation, module and library management, extensive customization options, and more. +%if %{without test} %package doc Summary: SWIG Manual License: BSD-3-Clause @@ -115,10 +140,11 @@ customization options, and more. This package contains SWIG examples, useful both for testing and -understandig SWIG usage. +understanding SWIG usage. +%endif %prep -%autosetup -p1 -n %{name}-%{version} +%autosetup -p1 -n %{origname}-%{version} %build %if 0%{?suse_version} < 1600 @@ -135,6 +161,7 @@ %make_build %check +%if %{with test} %if 0%{?suse_version} >= 1500 || 0%{?centos_version} >= 800 export PY3=true %endif @@ -143,8 +170,10 @@ export CXX=g++-12 %endif %make_build check EXTRA_CXXFLAGS="-fexcess-precision=fast" +%endif %install +%if %{without test} %make_install install -d %{buildroot}%{docpath} @@ -157,7 +186,7 @@ # rm files that are not needed for running or rebuilding the examples find %{buildroot}%{_datadir}/swig \ -name '*.dsp' -o -name '*.vcproj' -o -name '*.sln' -o \ - -name '*.o' -o -name '*_wrap.c' | xargs rm + -name '*.o' -o -name '*_wrap.c' -print0 | xargs --no-run-if-empty -0 rm # fix perms chmod -x %{buildroot}%{docpath}/Manual/* @@ -166,7 +195,9 @@ ln -s %{_datadir}/swig/examples %{buildroot}%{docpath}/Examples %fdupes %{buildroot} +%endif +%if %{without test} %files %license LICENSE %dir %{docpath} @@ -184,4 +215,5 @@ %license LICENSE %{docpath}/Examples %{_datadir}/swig/examples +%endif ++++++ _multibuild ++++++ <multibuild> <flavor>test</flavor> </multibuild> ++++++ swig-4.4.1.tar.gz -> swig-4.5.1.tar.gz ++++++ /work/SRC/openSUSE:Factory/swig/swig-4.4.1.tar.gz /work/SRC/openSUSE:Factory/.swig.new.1255/swig-4.5.1.tar.gz differ: char 12, line 1
