Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package firefox-esr for openSUSE:Factory 
checked in at 2026-07-24 22:07:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/firefox-esr (Old)
 and      /work/SRC/openSUSE:Factory/.firefox-esr.new.2004 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "firefox-esr"

Fri Jul 24 22:07:15 2026 rev:40 rq:1367677 version:153.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/firefox-esr/MozillaFirefox.changes       
2026-07-22 19:02:11.455054280 +0200
+++ /work/SRC/openSUSE:Factory/.firefox-esr.new.2004/MozillaFirefox.changes     
2026-07-24 22:08:10.039627092 +0200
@@ -2 +2 @@
-Tue Jul 21 12:54:27 UTC 2026 - Manfred Hollstein <[email protected]>
+Tue Jul 21 12:56:46 UTC 2026 - Manfred Hollstein <[email protected]>
@@ -4 +4,108 @@
-- Firefox Extended Support Release 140.13.0 ESR
+- Firefox Extended Support Release 153.0 ESR
+  * New: ## General
+    - Firefox now includes a new profile management system that
+    helps you separate your online life into distinct profiles
+    for work, school, vacation planning, or whatever you choose.
+    Profiles can be customized with names, avatars, and color
+    themes while keeping tabs, bookmarks, passwords, and browsing
+    history separate. Built-in profile backup and restore also
+    makes it easier to migrate to a new device or recover your
+    browsing data.
+    - Split View lets you view two webpages side-by-side in a
+    single browser window, with additional options to quickly
+    open links in Split View, rearrange pages, and search open
+    tabs.
+    - The Firefox address bar has gained several new
+    capabilities, including built-in unit and time zone
+    conversion, quick actions such as muting all browser audio,
+    and direct search results as you type.
+    - Firefox now supports copying links directly to highlighted
+    text on a webpage for easier sharing.
+    - Firefox Settings has been redesigned with improved
+    organization and navigation, making it easier to find and
+    customize browser preferences.
+  * New: ## AI
+    Firefox introduced several new AI-powered features, including
+    on-device tab organization, AI-assisted link previews,
+    integrated AI search, and centralized controls for managing
+    AI features. Whenever possible, these features perform
+    processing locally to help protect user privacy.
+  * New: ## Sidebar and Tabs
+    - Firefox continues to improve tab management with
+    enhancements to vertical tabs, tab groups, and the sidebar.
+    - Tab groups have gained numerous usability improvements,
+    including better support for collapsed groups, previews of
+    grouped tabs, and additional organization options.
+    - Passwords can now be accessed directly from the Firefox
+    sidebar without opening a separate tab.
+    - Firefox now supports copying links from one or multiple
+    background tabs directly from the tab context menu, and
+    multiple tabs can be copied or shared in a single action.
+    - A Send Tab toolbar button is now available through
+    Customize Toolbar.
+  * New: ## Security & Privacy
+    - Firefox has significantly expanded Fingerprinting
+    Protection, making it harder for websites to uniquely
+    identify users in both Standard and Strict Enhanced Tracking
+    Protection modes.
+    - Enhanced Tracking Protection includes stronger protections
+    against bounce tracking and additional safeguards that
+    restrict websites from accessing local network resources
+    without user permission.
+    - Firefox now uses Safe Browsing V5 for phishing and malware
+    protection.
+    - Firefox Password Manager now uses stronger AES-256
+    encryption to protect stored logins on disk.
+    - Private Browsing has been enhanced with new controls,
+    including the ability to instantly end a private browsing
+    session and temporarily relax tracker blocking for individual
+    sites when needed for compatibility.
+  * New: ## Translations
+    - Firefox has expanded on-device translation support with
+    many additional languages and continued improvements to
+    translation quality.
+    - A dedicated translations page now provides an easy way to
+    perform real-time translations directly within Firefox.
+  * New: ## Accessibility
+    - Firefox continues to improve accessibility with enhanced
+    support for assistive technologies, including Windows UI
+    Automation, improved keyboard navigation, more accessible
+    date and time controls, and better support for mathematical
+    content in PDFs.
+  * New: ## Windows
+    - Firefox now supports installing websites as standalone web
+    apps pinned to the Windows taskbar.
+    - Firefox web apps are also available for Microsoft Store
+    installations.
+    - Firefox now better integrates with Windows location
+    permissions when websites request geolocation access.
+  * New: ## macOS
+    - Firefox now uses a dedicated GPU process by default,
+    improving stability by allowing graphics failures to recover
+    without restarting the browser.
+    - WebGPU is now enabled by default on Apple Silicon Macs.
+  * New: ## Linux
+    - Firefox now supports native fractional scaling on Wayland,
+    improving rendering on high-DPI displays.
+    - Firefox no longer requires a restart after package manager
+    updates and uses less memory on Linux.
+    - Firefox now supports the XDG Base Directory Specification
+    and ships with RPM packages for Red Hat, Fedora, openSUSE,
+    and other RPM-based distributions.
+  * HTML5: - Firefox now supports the View Transitions API for
+    creating smooth animated transitions between application
+    views.
+    - WebGPU support has expanded across supported platforms,
+    including Windows and Apple Silicon Macs.
+    - Added support for several modern web platform APIs,
+    improving compatibility with modern web applications. Notable
+    additions include the Navigation API, URLPattern, Trusted
+    Types, Sanitizer API, and Prioritized Task Scheduling.
+  * Enterprise: - Enterprise administrators can now centrally
+    manage Firefox's Generative AI features through enterprise
+    policy.
+    - Fixed a performance regression affecting native messaging,
+    improving responsiveness for enterprise extensions that
+    communicate with external applications.
+    - Enterprise policy documentation has moved to
+    https://firefox-admin-docs.mozilla.org/.
@@ -6,7 +113,3 @@
-- Mozilla Firefox ESR 140.13.0
-  https://www.mozilla.org/security/advisories/mfsa2026-70
-  MFSA 2026-70 (boo#1271649)
-  * CVE-2026-15718 (bmo#2045443)
-    Invalid pointer in the JavaScript: WebAssembly component
-  * CVE-2026-15719 (bmo#2043820)
-    Site isolation issue in the DOM: Navigation component
+- Mozilla Firefox ESR 153.0
+  https://www.mozilla.org/security/advisories/mfsa2026-68
+  MFSA 2026-68 (boo#1271649)
@@ -27,0 +131,7 @@
+  * CVE-2026-16364 (bmo#2047802)
+    Incorrect boundary conditions in the Audio/Video: Playback
+    component
+  * CVE-2026-16365 (bmo#2049149)
+    Privilege escalation in the DOM: Workers component
+  * CVE-2026-16366 (bmo#2049181)
+    Privilege escalation in the DOM: Navigation component
@@ -31,0 +142,3 @@
+  * CVE-2026-16367 (bmo#2050627)
+    Sandbox escape due to invalid pointer in the Disability
+    Access APIs component
@@ -43,0 +157,2 @@
+  * CVE-2026-16370 (bmo#1996495)
+    Mitigation bypass in the DOM: Networking component
@@ -45,0 +161,5 @@
+  * CVE-2026-16372 (bmo#2013800)
+    Privilege escalation in the DOM: Content Processes component
+  * CVE-2026-16373 (bmo#2021964)
+    Information disclosure in the Privacy component in Firefox
+    for Android
@@ -49,0 +170,2 @@
+  * CVE-2026-16376 (bmo#2035733)
+    Denial-of-service in the Graphics: WebGPU component
@@ -51,0 +174,3 @@
+  * CVE-2026-16378 (bmo#2038868)
+    Other issue in the DOM: Copy & Paste and Drag & Drop
+    component
@@ -55,0 +181,2 @@
+  * CVE-2026-16380 (bmo#2040386)
+    Mitigation bypass in the Networking component
@@ -57,0 +185,2 @@
+  * CVE-2026-16382 (bmo#2041864)
+    Mitigation bypass in the DOM: Service Workers component
@@ -59,0 +189,9 @@
+  * CVE-2026-16384 (bmo#2041911)
+    Information disclosure due to uninitialized memory in the
+    Graphics: WebGPU component
+  * CVE-2026-16385 (bmo#2041912)
+    Information disclosure due to uninitialized memory in the
+    Graphics: WebGPU component
+  * CVE-2026-16386 (bmo#2041916)
+    Information disclosure due to uninitialized memory in the
+    Graphics: WebGPU component
@@ -61,0 +200,5 @@
+  * CVE-2026-16388 (bmo#2043845)
+    Sandbox escape in the DOM: Networking component
+  * CVE-2026-16389 (bmo#2043887)
+    Incorrect boundary conditions, integer overflow in the
+    Libraries component in NSS
@@ -65,0 +209,5 @@
+  * CVE-2026-16392 (bmo#2044606)
+    JIT miscompilation in the JavaScript Engine: JIT component
+  * CVE-2026-16393 (bmo#2045410)
+    Incorrect boundary conditions in the Graphics: WebGPU
+    component
@@ -68,0 +217,4 @@
+  * CVE-2026-16394 (bmo#2046748)
+    Mitigation bypass in the DOM: Security component
+  * CVE-2026-16395 (bmo#2047221)
+    Integer overflow in the Audio/Video component
@@ -70,0 +223,17 @@
+  * CVE-2026-16397 (bmo#2047608)
+    Clickjacking issue in the WebExtensions component in Firefox
+    for Android
+  * CVE-2026-16398 (bmo#2048345)
+    Site isolation issue in the Graphics component
+  * CVE-2026-16399 (bmo#2049981)
+    Site isolation issue in the DOM: Navigation component
+  * CVE-2026-16400 (bmo#2050430)
+    Information disclosure in the DOM: Security component
+  * CVE-2026-16401 (bmo#2052565)
+    Privilege escalation in the Data Loss Prevention component
+  * CVE-2026-16402 (bmo#2052703)
+    Integer overflow in the Graphics: ImageLib component
+  * CVE-2026-16403 (bmo#1972244)
+    Spoofing issue in the Address Bar component
+  * CVE-2026-16404 (bmo#2020253)
+    Spoofing issue in Firefox for Android
@@ -73,0 +243,23 @@
+  * CVE-2026-16406 (bmo#2040382)
+    Mitigation bypass in the Networking component
+  * CVE-2026-16407 (bmo#2044063)
+    Mitigation bypass in the DOM: Service Workers component
+  * CVE-2026-16408 (bmo#2050477)
+    Integer overflow in the Audio/Video: Playback component
+  * CVE-2026-16409 (bmo#2052134)
+    Invalid pointer in the Security: PSM component
+  * CVE-2026-16410 (bmo#2053680)
+    JIT miscompilation in the JavaScript Engine: JIT component
+  * CVE-2026-16411 (bmo#1420800, bmo#1598946, bmo#1767921,
+    bmo#2006467, bmo#2013993, bmo#2025417, bmo#2027325,
+    bmo#2027346, bmo#2027349, bmo#2027353, bmo#2027362,
+    bmo#2027364, bmo#2027371, bmo#2027373, bmo#2028954,
+    bmo#2029433, bmo#2029694, bmo#2029807, bmo#2029901,
+    bmo#2029922, bmo#2030102, bmo#2030563, bmo#2032110,
+    bmo#2036906, bmo#2037801, bmo#2038964, bmo#2039460,
+    bmo#2040522, bmo#2040834, bmo#2042756, bmo#2043275,
+    bmo#2044625, bmo#2045394, bmo#2045606, bmo#2045609,
+    bmo#2047920, bmo#2048491, bmo#2048492, bmo#2048800,
+    bmo#2048936, bmo#2049804, bmo#2050534, bmo#2050662,
+    bmo#2050871, bmo#2052060)
+    Memory safety bugs fixed in Firefox 153
@@ -107,9 +298,0 @@
-  * CVE-2026-16361 (bmo#2029734, bmo#2036518)
-    Memory safety bugs fixed in Firefox ESR 115.38 and Firefox
-    ESR 140.13
-- Remove obsolete mozilla-bmo1746799.patch
-- Depend on the new transitional package rust-cbindgen-0_29_2
-
--------------------------------------------------------------------
-Mon Jul 13 19:17:56 UTC 2026 - Manfred Hollstein <[email protected]>
-
@@ -117,0 +301,4 @@
+- Refresh MozillaFirefox.desktop from a Factory build
+- Refresh mozilla-silence-no-return-type.patch
+- Remove obsolete mozilla-bmo1746799.patch, mozilla-bmo2041150.patch
+- clang_build is no longer needed; set it to 0 unconditionally.
@@ -120 +307 @@
-Sun Jun 28 08:13:29 UTC 2026 - Manfred Hollstein <[email protected]>
+Sun Jul  5 11:21:38 UTC 2026 - Andreas Stieger <[email protected]>
@@ -122,2 +309,31 @@
-- Reformat the patch against current Firefox ESR 140.12.0 and add
-  it as Patch28 to the .spec file.
+- Mozilla Firefox 152.0.4
+  MFSA 2026-62 (boo#1270286)
+  * CVE-2026-14241 (bmo#2043241, bmo#2045514, bmo#2045576,
+    bmo#2045623, bmo#2045765, bmo#2046814, bmo#2049409,
+    bmo#2049840)
+    Memory safety bugs fixed in Firefox 152.0.4
+  * Smart Window includes several enhancements:
+    You can now ask it to close your tabs, with a confirmation step
+    when needed and the option to undo afterward (bmo#2040769)
+    Browsing history results now appear with images (bmo#2038069)
+    When you give feedback on a response, you can now choose from
+    common reasons and preview exactly what will be shared before
+    submitting (bmo#2033002)
+  * Fixed copy, paste, undo, redo, and similar keyboard shortcuts
+    not working inside macOS system dialogs such as the Save and
+    Open panels. (Bug 2040851, Bug 2040844)
+  * Fixed the Manage Cookies and Site Data dialog opening with an
+    empty list when opened from the Settings search results.
+    (bmo#2041077)
+  * Fixed keyboard focus landing in the wrong place after following
+    an in-page link, so pressing Tab continues from the link's
+    position as expected. (bmo#2049307)
+
+-------------------------------------------------------------------
+Sat Jun 27 16:56:29 UTC 2026 - Andreas Stieger <[email protected]>
+
+- Mozilla Firefox 152.0.3
+  https://www.firefox.com/en-US/firefox/152.0.3/releasenotes/
+  * Fix an issue that could cause extreme memory usage and freezing
+    on startup for users with language packs installed
+    (bmo#2049845, boo#1269477)
@@ -133,4 +349 @@
-Wed Jun 17 16:23:29 UTC 2026 - Manfred Hollstein <[email protected]>
-
-- Enable clang_build to allow building with the latest versions of
-  llvm/clang due to them dropping support for update-alternatives.
+Tue Jun 23 14:51:58 UTC 2026 - Andreas Stieger <[email protected]>
@@ -138,8 +351,27 @@
--------------------------------------------------------------------
-Tue Jun 16 11:52:50 UTC 2026 - Manfred Hollstein <[email protected]>
-
-- Firefox Extended Support Release 140.12.0 ESR
-  * Fixed: Various security fixes.
-- Mozilla Firefox ESR 140.12.0
-  https://www.mozilla.org/security/advisories/mfsa2026-58
-  MFSA 2026-58 (boo#1268071)
+- Mozilla Firefox 152.0.2
+  https://www.firefox.com/en-US/firefox/152.0.2/releasenotes/
+  * Fixed some Settings section headings showing placeholder text
+    instead of the translated name in certain languages
++++ 2877 more lines (skipped)
++++ between /work/SRC/openSUSE:Factory/firefox-esr/MozillaFirefox.changes
++++ and /work/SRC/openSUSE:Factory/.firefox-esr.new.2004/MozillaFirefox.changes
firefox-esr.changes: same change

Old:
----
  firefox-140.13.0esr.source.tar.xz
  firefox-140.13.0esr.source.tar.xz.asc
  l10n-140.13.0esr.tar.xz
  mozilla-bmo1999625.patch
  mozilla-bmo2016618.patch
  mozilla-bmo531915.patch
  mozilla-bmo998749.patch
  mozilla-nongnome-proxies.patch

New:
----
  firefox-153.0esr.source.tar.xz
  firefox-153.0esr.source.tar.xz.asc
  l10n-153.0esr.tar.xz
  mozilla-bmo2030493.patch
  mozilla-sandbox-lto.patch

----------(Old B)----------
  Old: WARN: mozilla-bmo1999625.patch not found in changes
 
  Old: WARN: mozilla-bmo2016618.patch not found in changes
 
  Old:/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/MozillaFirefox.changes-- 
added mozilla-bmo2041150.patch to fix build with libproxy (bmo#2041150)
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/MozillaFirefox.changes:- 
removed obsolete mozilla-bmo531915.patch
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/MozillaFirefox.changes-
--
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/firefox-esr.changes-- added 
mozilla-bmo2041150.patch to fix build with libproxy (bmo#2041150)
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/firefox-esr.changes:- removed 
obsolete mozilla-bmo531915.patch
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/firefox-esr.changes-
  Old:/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/MozillaFirefox.changes-  
  Memory safety bugs fixed in Firefox 145 and Thunderbird 145
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/MozillaFirefox.changes:- 
Remove upstreamed patch mozilla-bmo998749.patch
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/MozillaFirefox.changes-
--
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/firefox-esr.changes-    Memory 
safety bugs fixed in Firefox 145 and Thunderbird 145
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/firefox-esr.changes:- Remove 
upstreamed patch mozilla-bmo998749.patch
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/firefox-esr.changes-
  Old:/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/MozillaFirefox.changes-  
NSS 3.115.1
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/MozillaFirefox.changes:- 
remove obsolete mozilla-nongnome-proxies.patch
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/MozillaFirefox.changes-
--
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/firefox-esr.changes-  NSS 
3.115.1
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/firefox-esr.changes:- remove 
obsolete mozilla-nongnome-proxies.patch
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/firefox-esr.changes-
----------(Old E)----------

----------(New B)----------
  New:/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/MozillaFirefox.changes-- 
Fix failing builds (boo#1258744)
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/MozillaFirefox.changes:  
mozilla-bmo2030493.patch
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/MozillaFirefox.changes-
--
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/firefox-esr.changes-- Fix 
failing builds (boo#1258744)
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/firefox-esr.changes:  
mozilla-bmo2030493.patch
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/firefox-esr.changes-
  New:/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/MozillaFirefox.changes-- 
Fix PGO builds with GCC
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/MozillaFirefox.changes:  * add 
mozilla-sandbox-lto.patch
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/MozillaFirefox.changes-
--
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/firefox-esr.changes-- Fix PGO 
builds with GCC
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/firefox-esr.changes:  * add 
mozilla-sandbox-lto.patch
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/firefox-esr.changes-
----------(New E)----------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ firefox-esr.spec ++++++
--- /var/tmp/diff_new_pack.U2WbeP/_old  2026-07-24 22:08:35.308509318 +0200
+++ /var/tmp/diff_new_pack.U2WbeP/_new  2026-07-24 22:08:35.308509318 +0200
@@ -40,24 +40,32 @@
 # orig_suffix b3
 # major 69
 # mainver %%major.99
-%define major          140
-%define mainver        %major.13.0
-%define orig_version   140.13.0
+%define major          153
+%define mainver        %major.0
+%define orig_version   153.0
 %define orig_suffix    esr
 %define update_channel esr
 %define branding       1
 %define devpkg         0
-
-# PGO builds do not work in TW currently (bmo#1680306)
-%define do_profiling   0
+%define do_profiling   1
 
 # upstream default is clang (to use gcc for large parts set to 0)
-%define clang_build    1
+%define clang_build    0
 
 %bcond_with only_print_mozconfig
 
 # define if ccache should be used or not
+%define useccache     1
+
+# ccache doesn't work with pgo
+%if 0%{?do_profiling}
+%define useccache     0
+%endif
+
+# ccache doesn't work with pgo
+%if 0%{?do_profiling}
 %define useccache     0
+%endif
 
 # SLE-12 doesn't have this macro
 %{!?_rpmmacrodir: %global _rpmmacrodir %{_rpmconfigdir}/macros.d}
@@ -121,8 +129,8 @@
 BuildRequires:  gcc15-c++
 BuildRequires:  libstdc++6-devel-gcc15
 %endif
-BuildRequires:  cargo1.86
-BuildRequires:  rust1.86
+BuildRequires:  cargo1.93
+BuildRequires:  rust1.93
 %if 0%{useccache} != 0
 BuildRequires:  ccache
 %endif
@@ -131,8 +139,8 @@
 BuildRequires:  libiw-devel
 BuildRequires:  libproxy-devel
 BuildRequires:  makeinfo
-BuildRequires:  mozilla-nspr-devel >= 4.36
-BuildRequires:  mozilla-nss-devel >= 3.110
+BuildRequires:  mozilla-nspr-devel >= 4.39
+BuildRequires:  mozilla-nss-devel >= 3.125
 BuildRequires:  nasm >= 2.14
 BuildRequires:  nodejs >= 12.22.12
 %if 0%{?sle_version} >= 120000 && 0%{?sle_version} < 150000
@@ -155,7 +163,7 @@
 BuildRequires:  python3-devel
 %endif
 %endif
-BuildRequires:  rust-cbindgen-0_29_2
+BuildRequires:  rust-cbindgen >= 0.29.4
 %if 0%{?suse_version} >= 1699
 BuildRequires:  translate-suse-desktop
 %endif
@@ -169,10 +177,7 @@
 %if 0%{?suse_version} < 1550
 BuildRequires:  pkgconfig(gconf-2.0) >= 1.2.1
 %endif
-BuildRequires:  clang19-devel
-%if 0%{?suse_version} > 1600
-BuildRequires:  llvm19-libclang13
-%endif
+BuildRequires:  clang-devel
 #!BuildIgnore:  clang-tools
 BuildRequires:  pkgconfig(glib-2.0) >= 2.22
 BuildRequires:  pkgconfig(gobject-2.0)
@@ -234,7 +239,6 @@
 Source22:       firefox-esr.changes.txt
 Source23:       MozillaFirefox.changes.txt
 # Gecko/Toolkit
-Patch1:         mozilla-nongnome-proxies.patch
 Patch3:         mozilla-ntlm-full-path.patch
 Patch4:         mozilla-aarch64-startup-crash.patch
 Patch6:         mozilla-s390-context.patch
@@ -242,14 +246,12 @@
 Patch8:         mozilla-reduce-rust-debuginfo.patch
 Patch10:        mozilla-bmo1504834-part1.patch
 Patch14:        mozilla-bmo849632.patch
-Patch15:        mozilla-bmo998749.patch
 Patch17:        mozilla-libavcodec58_91.patch
 Patch18:        mozilla-silence-no-return-type.patch
-Patch19:        mozilla-bmo531915.patch
 Patch20:        one_swizzle_to_rule_them_all.patch
 Patch21:        svg-rendering.patch
-Patch26:        mozilla-bmo1999625.patch
-Patch27:        mozilla-bmo2016618.patch
+Patch25:        mozilla-sandbox-lto.patch
+Patch26:        mozilla-bmo2030493.patch
 Patch28:        mozilla-bmo2048250.patch
 # Firefox/browser
 Patch102:       firefox-branded-icons.patch
@@ -278,7 +280,7 @@
 %if 0%{?devpkg} == 0
 Obsoletes:      %{name}-devel < %{version}
 %endif
-ExcludeArch:    armv6l armv6hl ppc ppc64
+ExcludeArch:    armv6l armv6hl ppc ppc64 i586
 
 %description
 Mozilla Firefox is a standalone web browser, designed for standards
@@ -395,7 +397,7 @@
 modified="$(sed -n '/^----/n;s/ - .*$//;p;q' 
"%{_sourcedir}/%{pkgname}.changes")"
 DATE="\"$(date -d "${modified}" "+%%b %%e %%Y")\""
 TIME="\"$(date -d "${modified}" "+%%R")\""
-find . -regex ".*\.c\|.*\.cpp\|.*\.h" -exec sed -i 
"s/__DATE__/${DATE}/g;s/__TIME__/${TIME}/g" {} +
+find . -type f -regex ".*\.c\|.*\.cpp\|.*\.h" -exec sed -i 
"s/__DATE__/${DATE}/g;s/__TIME__/${TIME}/g" {} +
 
 # SLE-12 provides python39, but that package does not provide a python3 binary
 %if 0%{?sle_version} >= 120000 && 0%{?sle_version} < 150000
@@ -424,20 +426,8 @@
 export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=system
 export CFLAGS="%{optflags}"
 %if 0%{?clang_build} != 0
-export CC=clang-19
-export CXX=clang++-19
-export AR=llvm-ar-19
-export NM=llvm-nm-19
-export OBJCOPY=llvm-objcopy-19
-export OBJDUMP=llvm-objdump-19
-export RANLIB=llvm-ranlib-19
-export READELF=llvm-readelf-19
-export LLVM_AR=llvm-ar-19
-export LLVM_NM=llvm-nm-19
-export LLVM_OBJCOPY=llvm-objcopy-19
-export LLVM_OBJDUMP=llvm-objdump-19
-export LLVM_RANLIB=llvm-ranlib-19
-export LLVM_READELF=llvm-readelf-19
+export CC=clang
+export CXX=clang++
 %else
 %if 0%{?suse_version} < 1550 && 0%{?sle_version} <= 150600
 export CC=gcc-13
@@ -557,11 +547,16 @@
 ac_add_options --enable-lto
 %if 0%{?do_profiling}
 ac_add_options MOZ_PGO=1
+export CCACHE_DISABLE=1
 %endif
 %endif
 %endif
 EOF
 
+%if 0%{?do_profiling}
+export CCACHE_DISABLE=1
+%endif
+
 %if %{with only_print_mozconfig}
 cat ./.obsenv.sh
 cat $MOZCONFIG
@@ -639,7 +634,7 @@
 # need to remove default en-US firefox-l10n.js before it gets
 # populated into browser's omni.ja; it only contains general.useragent.locale
 # which should be loaded from each language pack (set in firefox.js)
-rm dist/bin/browser/defaults/preferences/firefox-l10n.js
+rm -f dist/bin/browser/defaults/preferences/firefox-l10n.js
 make -C browser/installer STRIP=/bin/true MOZ_PKG_FATAL_WARNINGS=0
 #DEBUG (break the build if searchplugins are missing / temporary)
 grep amazondotcom dist/firefox/browser/omni.ja
@@ -786,6 +781,7 @@
 %if 0%{wayland_supported}
 %{progdir}/vaapitest
 %endif
+%{progdir}/vulkantest
 %ifarch aarch64 riscv64 %arm
 %{progdir}/v4l2test
 %endif

++++++ MozillaFirefox.changes.txt ++++++
++++ 4213 lines (skipped)
++++ between /work/SRC/openSUSE:Factory/firefox-esr/MozillaFirefox.changes.txt
++++ and 
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/MozillaFirefox.changes.txt

++++++ _constraints ++++++
--- /var/tmp/diff_new_pack.U2WbeP/_old  2026-07-24 22:08:35.544517558 +0200
+++ /var/tmp/diff_new_pack.U2WbeP/_new  2026-07-24 22:08:35.552517837 +0200
@@ -58,5 +58,15 @@
       </physicalmemory>
     </hardware>
   </overwrite>
+  <overwrite>
+    <conditions>
+      <arch>riscv64</arch>
+    </conditions>
+    <hardware>
+      <memory>
+        <size unit="G">25</size>
+      </memory>
+    </hardware>
+  </overwrite>
 </constraints>
 

++++++ firefox-140.13.0esr.source.tar.xz -> firefox-153.0esr.source.tar.xz 
++++++
/work/SRC/openSUSE:Factory/firefox-esr/firefox-140.13.0esr.source.tar.xz 
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/firefox-153.0esr.source.tar.xz 
differ: char 15, line 1

++++++ firefox-esr.changes.txt ++++++
++++ 4213 lines (skipped)
++++ between /work/SRC/openSUSE:Factory/firefox-esr/firefox-esr.changes.txt
++++ and 
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/firefox-esr.changes.txt

++++++ l10n-140.13.0esr.tar.xz -> l10n-153.0esr.tar.xz ++++++
/work/SRC/openSUSE:Factory/firefox-esr/l10n-140.13.0esr.tar.xz 
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/l10n-153.0esr.tar.xz differ: 
char 15, line 1

++++++ mozilla-aarch64-startup-crash.patch ++++++
--- /var/tmp/diff_new_pack.U2WbeP/_old  2026-07-24 22:08:35.756524961 +0200
+++ /var/tmp/diff_new_pack.U2WbeP/_new  2026-07-24 22:08:35.760525099 +0200
@@ -3,17 +3,23 @@
 # Date 1558442998 -7200
 #      Tue May 21 14:49:58 2019 +0200
 # Node ID 386083b58d8558141901d796ec6919a4aba7ad3a
-# Parent  76b747f7d113bddbb8593184d81e1bfe5fd51af0
+# Parent  fb09659004cc482034e408f2ab0d6fca1dae9968
 bsc#991344 - Rpi3: Firefox crashes after a few seconds of usage
 bmo#1302554 - ARM/AARCH64: Firefox crashes on NULL nsIChannel** result pointer 
in nsIOService::NewChannelFromURIWithProxyFlagsInternal()
 
 diff --git a/netwerk/base/nsIOService.cpp b/netwerk/base/nsIOService.cpp
 --- a/netwerk/base/nsIOService.cpp
 +++ b/netwerk/base/nsIOService.cpp
-@@ -1159,7 +1159,13 @@ nsresult nsIOService::NewChannelFromURIW
-     }
+@@ -1227,17 +1227,24 @@ nsresult nsIOService::NewChannelFromURIW
+     return NS_ERROR_UNEXPECTED;
    }
  
+   // If we're sandboxed, make sure to clear any owner the channel
+   // might already have.
+   if (loadInfo->GetLoadingSandboxed()) {
+     channel->SetOwner(nullptr);
+   }
++
 +#if defined(__aarch64__)
 +  if (result) {
 +    channel.forget(result);
@@ -24,4 +30,9 @@
    return NS_OK;
  }
  
+ NS_IMETHODIMP
+ nsIOService::NewChannelFromURIWithProxyFlags(
+     nsIURI* aURI, nsIURI* aProxyURI, uint32_t aProxyFlags,
+     nsINode* aLoadingNode, nsIPrincipal* aLoadingPrincipal,
+     nsIPrincipal* aTriggeringPrincipal, uint32_t aSecurityFlags,
 

++++++ mozilla-bmo1504834-part1.patch ++++++
--- /var/tmp/diff_new_pack.U2WbeP/_old  2026-07-24 22:08:35.800526496 +0200
+++ /var/tmp/diff_new_pack.U2WbeP/_new  2026-07-24 22:08:35.804526636 +0200
@@ -1,11 +1,11 @@
 # HG changeset patch
-# Parent  e31f5228a09ed69d7ac3c84e54f0faa6a5910ae0
+# Parent  ed92e2fa6996864cd05177e2d4012c2aa867bf54
 Taken from https://bugzilla.mozilla.org/show_bug.cgi?id=1504834
 
 diff --git a/gfx/2d/DrawTargetSkia.cpp b/gfx/2d/DrawTargetSkia.cpp
 --- a/gfx/2d/DrawTargetSkia.cpp
 +++ b/gfx/2d/DrawTargetSkia.cpp
-@@ -155,17 +155,18 @@ static IntRect CalculateSurfaceBounds(co
+@@ -162,17 +162,18 @@ static IntRect CalculateSurfaceBounds(co
    if (!sampledBounds.ToIntRect(&bounds)) {
      return surfaceBounds;
    }
@@ -25,41 +25,6 @@
    }
    // We should've initialized the data to be opaque already
    // On debug builds, verify that this is actually true.
-diff --git a/gfx/2d/Types.h b/gfx/2d/Types.h
---- a/gfx/2d/Types.h
-+++ b/gfx/2d/Types.h
-@@ -94,28 +94,21 @@ enum class SurfaceFormat : int8_t {
-               // this format.
-   HSV,
-   Lab,
-   Depth,
- 
-   // This represents the unknown format.
-   UNKNOWN,  // TODO: Replace uses with Maybe<SurfaceFormat>.
- 
--// The following values are endian-independent synonyms. The _UINT32 suffix
--// indicates that the name reflects the layout when viewed as a uint32_t
--// value.
--#if MOZ_LITTLE_ENDIAN()
-+  // The following values are endian-independent synonyms. The _UINT32 suffix
-+  // indicates that the name reflects the layout when viewed as a uint32_t
-+  // value.
-   A8R8G8B8_UINT32 = B8G8R8A8,  // 0xAARRGGBB
-   X8R8G8B8_UINT32 = B8G8R8X8,  // 0x00RRGGBB
--#elif MOZ_BIG_ENDIAN()
--  A8R8G8B8_UINT32 = A8R8G8B8,  // 0xAARRGGBB
--  X8R8G8B8_UINT32 = X8R8G8B8,  // 0x00RRGGBB
--#else
--#  error "bad endianness"
--#endif
- 
-   // The following values are OS and endian-independent synonyms.
-   //
-   // TODO(aosmond): When everything blocking bug 1581828 has been resolved, we
-   // can make this use R8B8G8A8 and R8B8G8X8 for non-Windows platforms.
-   OS_RGBA = A8R8G8B8_UINT32,
-   OS_RGBX = X8R8G8B8_UINT32
- };
 diff --git a/gfx/skia/skia/modules/skcms/skcms.cc 
b/gfx/skia/skia/modules/skcms/skcms.cc
 --- a/gfx/skia/skia/modules/skcms/skcms.cc
 +++ b/gfx/skia/skia/modules/skcms/skcms.cc
@@ -82,7 +47,7 @@
  
  void skcms_DisableRuntimeCPUDetection() {
      sAllowRuntimeCPUDetection = false;
-@@ -319,30 +321,38 @@ enum {
+@@ -374,30 +376,38 @@ enum {
      skcms_Signature_sf32 = 0x73663332,
      // XYZ is also a PCS signature, so it's defined in skcms.h
      // skcms_Signature_XYZ = 0x58595A20,

++++++ mozilla-bmo1999625.patch -> mozilla-bmo2030493.patch ++++++
++++ 2071 lines (skipped)
++++ between /work/SRC/openSUSE:Factory/firefox-esr/mozilla-bmo1999625.patch
++++ and 
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/mozilla-bmo2030493.patch

++++++ mozilla-bmo2048250.patch ++++++
--- /var/tmp/diff_new_pack.U2WbeP/_old  2026-07-24 22:08:35.860528591 +0200
+++ /var/tmp/diff_new_pack.U2WbeP/_new  2026-07-24 22:08:35.868528870 +0200
@@ -18,15 +18,11 @@
     compositor. This layout synchronization restores proper cursor tracking for
     all native Wayland-based input methods, including IBus and Fcitx5.
 
-Author: Manfred Hollstein <[email protected]>
-Date:   Sun Jun 28 08:13:29 +0000
-
-    Reformat the patch against current Firefox ESR 140.12.0
-
-diff -rup a/widget/gtk/IMContextWrapper.cpp b/widget/gtk/IMContextWrapper.cpp
---- a/widget/gtk/IMContextWrapper.cpp  2026-06-09 20:34:24.000000000 +0200
-+++ b/widget/gtk/IMContextWrapper.cpp  2026-06-28 10:10:54.605711414 +0200
-@@ -25,6 +25,9 @@
+diff --git a/widget/gtk/IMContextWrapper.cpp b/widget/gtk/IMContextWrapper.cpp
+index 28fe91351fd0..f553dac2f8ab 100644
+--- a/widget/gtk/IMContextWrapper.cpp
++++ b/widget/gtk/IMContextWrapper.cpp
+@@ -23,6 +23,9 @@
  #include "mozilla/TextEvents.h"
  #include "mozilla/ToString.h"
  #include "mozilla/WritingModes.h"
@@ -36,9 +32,9 @@
  
  // For collecting other people's log, tell `MOZ_LOG=IMEHandler:4,sync`
  // rather than `MOZ_LOG=IMEHandler:5,sync` since using `5` may create too
-@@ -3008,6 +3011,24 @@ void IMContextWrapper::SetCursorPosition
-   GdkRectangle area = rootWindow->DevicePixelsToGdkRectRoundOut(rect);
+@@ -3045,6 +3048,24 @@ void IMContextWrapper::SetCursorPosition(GtkIMContext* 
aContext) {
  
+   GdkRectangle area = rootWindow->DevicePixelsToGdkRectRoundOut(rect);
    gtk_im_context_set_cursor_location(aContext, &area);
 +#ifdef MOZ_WAYLAND
 +  if (GDK_IS_WAYLAND_DISPLAY(gdk_display_get_default())) {

++++++ mozilla-bmo849632.patch ++++++
--- /var/tmp/diff_new_pack.U2WbeP/_old  2026-07-24 22:08:35.884529429 +0200
+++ /var/tmp/diff_new_pack.U2WbeP/_new  2026-07-24 22:08:35.888529569 +0200
@@ -6,21 +6,29 @@
           So we swizzle the output of webgl after reading it from readpixels()
 Note:     This does not fix all webGL sites, but is a step in the right 
direction
 
-Index: firefox-115.0/gfx/gl/GLContext.h
+Index: firefox-151.0.1/gfx/gl/GLContext.h
 ===================================================================
---- firefox-115.0.orig/gfx/gl/GLContext.h
-+++ firefox-115.0/gfx/gl/GLContext.h
-@@ -1560,6 +1560,13 @@ class GLContext : public GenericAtomicRe
+--- firefox-151.0.1.orig/gfx/gl/GLContext.h
++++ firefox-151.0.1/gfx/gl/GLContext.h
+@@ -24,6 +24,7 @@
+ #  define MOZ_GL_DEBUG_BUILD 1
+ #endif
+ 
++#include "mozilla/EndianUtils.h"
+ #include "mozilla/IntegerRange.h"
+ #include "mozilla/RefPtr.h"
+ #include "mozilla/UniquePtr.h"
+@@ -1621,6 +1622,13 @@ class GLContext : public GenericAtomicRe
      BEFORE_GL_CALL;
      mSymbols.fReadPixels(x, y, width, height, format, type, pixels);
      OnSyncCall();
-+#if MOZ_BIG_ENDIAN()
-+    uint8_t* itr = (uint8_t*)pixels;
-+    for (GLsizei i = 0; i < width * height; i++) {
-+      NativeEndian::swapToLittleEndianInPlace((uint32_t*)itr, 1);
-+      itr += 4;
++    if constexpr (std::endian::native == std::endian::big) {
++      uint8_t* itr = (uint8_t*)pixels;
++      for (GLsizei i = 0; i < width * height; i++) {
++        NativeEndian::swapToLittleEndianInPlace((uint32_t*)itr, 1);
++        itr += 4;
++      }
 +    }
-+#endif
      AFTER_GL_CALL;
      mHeavyGLCallsSinceLastFlush = true;
    }

++++++ mozilla-libavcodec58_91.patch ++++++
--- /var/tmp/diff_new_pack.U2WbeP/_old  2026-07-24 22:08:35.928530965 +0200
+++ /var/tmp/diff_new_pack.U2WbeP/_new  2026-07-24 22:08:35.936531244 +0200
@@ -1,7 +1,15 @@
-diff -rup a/dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp 
b/dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp
---- a/dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp       2026-05-06 
14:54:38.000000000 +0000
-+++ b/dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp       2026-05-07 
14:42:53.481977081 +0000
-@@ -53,6 +53,8 @@ static const char* sLibs[] = {
+# HG changeset patch
+# Parent  63a68d00e040190e9870c980a731a2fac324473a
+
+diff --git a/dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp 
b/dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp
+--- a/dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp
++++ b/dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp
+@@ -49,16 +49,18 @@ static const char* sLibs[] = {
+ #elif defined(XP_OPENBSD)
+   "libavcodec.so", // OpenBSD port controls the major/minor library version
+                    // of ffmpeg and update it regulary on ABI/API changes
+ #else
+   "libavcodec.so." FFMPEG_MAX_MAJOR_VERSION_STR(FFMPEG_MAX_MAJOR_VERSION),
    "libavcodec.so.61",
    "libavcodec.so.60",
    "libavcodec.so.59",
@@ -10,4 +18,9 @@
    "libavcodec.so.58",
    "libavcodec-ffmpeg.so.58",
    "libavcodec-ffmpeg.so.57",
+   "libavcodec-ffmpeg.so.56",
+   "libavcodec.so.57",
+   "libavcodec.so.56",
+   "libavcodec.so.55",
+   "libavcodec.so.54",
 

++++++ mozilla-pgo.patch ++++++
--- /var/tmp/diff_new_pack.U2WbeP/_old  2026-07-24 22:08:35.960532083 +0200
+++ /var/tmp/diff_new_pack.U2WbeP/_new  2026-07-24 22:08:35.968532362 +0200
@@ -1,12 +1,63 @@
 # HG changeset patch
 # User Wolfgang Rosenauer <[email protected]>
-# Parent  9959fe2a13a39cbeb98ca1bef2e21caba16717bd
+# Parent  73147e14b378957cdb8516125df34111d2699fe9
 
-Index: firefox-115.0/build/moz.configure/lto-pgo.configure
-===================================================================
---- firefox-115.0.orig/build/moz.configure/lto-pgo.configure
-+++ firefox-115.0/build/moz.configure/lto-pgo.configure
-@@ -251,8 +251,8 @@ def lto(
+diff --git a/build/moz.configure/lto-pgo.configure 
b/build/moz.configure/lto-pgo.configure
+--- a/build/moz.configure/lto-pgo.configure
++++ b/build/moz.configure/lto-pgo.configure
+@@ -89,22 +89,26 @@ def pgo_profile_path(path, pgo_use, prof
+     return path[0]
+ 
+ 
+ set_config("PGO_PROFILE_PATH", pgo_profile_path)
+ 
+ 
+ @depends(
+     "--enable-profile-use",
++    c_compiler,
+     pgo_profile_path,
+     llvm_profdata,
+     llvm_profdata_order,
+     build_environment,
+ )
+-def orderfile_path(profile_use, path, profdata, profdata_order, build_env):
++def orderfile_path(profile_use, compiler, path, profdata, profdata_order, 
build_env):
++    if compiler.type == "gcc":
++        return None
++
+     if not profile_use:
+         return None
+ 
+     if not profdata_order:
+         return None
+ 
+     topobjdir = build_env.topobjdir
+ 
+@@ -138,17 +142,17 @@ def pgo_flags(
+     target_is_windows,
+     pgo_temporal,
+     orderfile,
+ ):
+     if compiler.type == "gcc":
+         return namespace(
+             gen_cflags=["-fprofile-generate"],
+             gen_ldflags=["-fprofile-generate"],
+-            use_cflags=["-fprofile-use", "-fprofile-correction", 
"-Wcoverage-mismatch"],
++            use_cflags=["-fprofile-use", "-fprofile-correction", 
"-Wno-coverage-mismatch"],
+             use_ldflags=["-fprofile-use"],
+         )
+ 
+     if compiler.type in ("clang-cl", "clang"):
+         prefix = ""
+         if compiler.type == "clang-cl":
+             prefix = "/clang:"
+             gen_ldflags = None
+@@ -352,34 +356,34 @@ def lto(
+             "configure."
+         )
+ 
+     if c_compiler.type == "clang":
+         if "full" in values:
              cflags.append("-flto")
              ldflags.append("-flto")
          else:
@@ -17,7 +68,15 @@
  
          if target.os == "Android" and "cross" in values:
              # Work around https://github.com/rust-lang/rust/issues/90088
-@@ -268,7 +268,7 @@ def lto(
+             # by enabling the highest level of SSE the rust targets default
+             # to.
+             # 
https://github.com/rust-lang/rust/blob/bdfcb88e8b6203ccb46a2fb6649979b773efc8ac/compiler/rustc_target/src/spec/i686_linux_android.rs#L13
+             # 
https://github.com/rust-lang/rust/blob/8d1083e319841624f64400e1524805a40d725439/compiler/rustc_target/src/spec/x86_64_linux_android.rs#L7
+             if target.cpu == "x86":
+                 ldflags.append("-Wl,-plugin-opt=-mattr=+ssse3")
+             elif target.cpu == "x86_64":
+                 ldflags.append("-Wl,-plugin-opt=-mattr=+sse4.2")
+     elif c_compiler.type == "clang-cl":
          if "full" in values:
              cflags.append("-flto")
          else:
@@ -26,20 +85,39 @@
          # With clang-cl, -flto can only be used with -c or -fuse-ld=lld.
          # AC_TRY_LINKs during configure don't have -c, so pass -fuse-ld=lld.
          cflags.append("-fuse-ld=lld")
-Index: firefox-115.0/build/pgo/profileserver.py
-===================================================================
---- firefox-115.0.orig/build/pgo/profileserver.py
-+++ firefox-115.0/build/pgo/profileserver.py
-@@ -11,7 +11,7 @@ import subprocess
+ 
+         # Explicitly set the CPU to optimize for so the linker doesn't
+         # choose a poor default.  Rust compilation by default uses the
+         # pentium4 CPU on x86:
+         #
+diff --git a/build/pgo/profileserver.py b/build/pgo/profileserver.py
+--- a/build/pgo/profileserver.py
++++ b/build/pgo/profileserver.py
+@@ -5,17 +5,17 @@
+ # file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ 
+ import glob
+ import os
+ import subprocess
  import sys
  
  import mozcrash
 -from mozbuild.base import BinaryNotFoundException, MozbuildObject
 +from mozbuild.base import BinaryNotFoundException, MozbuildObject, 
BuildEnvironmentNotFoundException
- from mozfile import TemporaryDirectory
+ from mozfile import TemporaryDirectory, json
  from mozhttpd import MozHttpd
  from mozprofile import FirefoxProfile, Preferences
-@@ -87,9 +87,22 @@ if __name__ == "__main__":
+ from mozprofile.permissions import ServerLocations
+ from mozrunner import CLI, FirefoxRunner
+ 
+ PORT = 8888
+ 
+@@ -134,19 +134,32 @@ if __name__ == "__main__":
+             docroot=js3_dir,
+         )
+         js3_httpd.start(block=False)
+         print("started JS3 server on port 8001")
+ 
      locations = ServerLocations()
      locations.add_host(host="127.0.0.1", port=PORT, 
options="primary,privileged")
  
@@ -65,7 +143,17 @@
  
      with TemporaryDirectory() as profilePath:
          # TODO: refactor this into mozprofile
-@@ -213,6 +226,10 @@ if __name__ == "__main__":
+         profile_data_dir = os.path.join(build.topsrcdir, "testing", 
"profiles")
+         with open(os.path.join(profile_data_dir, "profiles.json")) as fh:
+             base_profiles = json.load(fh)["profileserver"]
+ 
+         prefpaths = [
+@@ -273,16 +286,20 @@ if __name__ == "__main__":
+ 
+         # Try to move the crash reports to the artifacts even if Firefox 
appears
+         # to exit successfully, in case there's a crash that doesn't set the
+         # return code to non-zero for some reason.
+         if get_crashreports(profilePath, name="Firefox exited successfully?") 
!= 0:
              print("Firefox exited successfully, but produced a crashreport")
              sys.exit(1)
  
@@ -76,11 +164,18 @@
          llvm_profdata = env.get("LLVM_PROFDATA")
          if llvm_profdata:
              profraw_files = glob.glob("*.profraw")
-Index: firefox-115.0/build/unix/mozconfig.unix
-===================================================================
---- firefox-115.0.orig/build/unix/mozconfig.unix
-+++ firefox-115.0/build/unix/mozconfig.unix
-@@ -4,6 +4,15 @@ if [ -n "$FORCE_GCC" ]; then
+             if not profraw_files:
+                 print(
+                     "Could not find profraw files in the current directory: 
%s"
+                     % os.getcwd()
+                 )
+diff --git a/build/unix/mozconfig.unix b/build/unix/mozconfig.unix
+--- a/build/unix/mozconfig.unix
++++ b/build/unix/mozconfig.unix
+@@ -1,14 +1,23 @@
+ . "$topsrcdir/build/mozconfig.common"
+ 
+ if [ -n "$FORCE_GCC" ]; then
      CC="$MOZ_FETCHES_DIR/gcc/bin/gcc"
      CXX="$MOZ_FETCHES_DIR/gcc/bin/g++"
  
@@ -96,21 +191,34 @@
      # We want to make sure we use binutils and other binaries in the tooltool
      # package.
      mk_add_options "export 
PATH=$MOZ_FETCHES_DIR/gcc/bin:$MOZ_FETCHES_DIR/binutils/bin:$PATH"
-Index: firefox-115.0/extensions/spellcheck/src/moz.build
-===================================================================
---- firefox-115.0.orig/extensions/spellcheck/src/moz.build
-+++ firefox-115.0/extensions/spellcheck/src/moz.build
-@@ -28,3 +28,5 @@ EXPORTS.mozilla += [
+ else
+     # For some builds we don't want to have Clang based static-analysis 
activated
+     if [ -z "$DISABLE_CLANG_PLUGIN" ]; then
+         export ENABLE_CLANG_PLUGIN=1
+     fi
+diff --git a/extensions/spellcheck/src/moz.build 
b/extensions/spellcheck/src/moz.build
+--- a/extensions/spellcheck/src/moz.build
++++ b/extensions/spellcheck/src/moz.build
+@@ -19,8 +19,10 @@ FINAL_LIBRARY = "xul"
+ 
+ LOCAL_INCLUDES += [
+     "../ipc",
+ ]
+ EXPORTS.mozilla += [
      "mozInlineSpellChecker.h",
      "mozSpellChecker.h",
  ]
 +
 +CXXFLAGS += ['-fno-devirtualize']
-Index: firefox-115.0/toolkit/components/terminator/nsTerminator.cpp
-===================================================================
---- firefox-115.0.orig/toolkit/components/terminator/nsTerminator.cpp
-+++ firefox-115.0/toolkit/components/terminator/nsTerminator.cpp
-@@ -460,6 +460,11 @@ void nsTerminator::StartWatchdog() {
+diff --git a/toolkit/components/terminator/nsTerminator.cpp 
b/toolkit/components/terminator/nsTerminator.cpp
+--- a/toolkit/components/terminator/nsTerminator.cpp
++++ b/toolkit/components/terminator/nsTerminator.cpp
+@@ -333,16 +333,21 @@ void nsTerminator::StartWatchdog() {
+       // Defend against overflow
+       crashAfterMS = INT32_MAX;
+     } else {
+       crashAfterMS *= scaleUp;
+     }
    }
  #endif
  
@@ -120,6 +228,11 @@
 +  crashAfterMS = INT32_MAX;
 +
    UniquePtr<Options> options(new Options());
-   // crashAfterTicks is guaranteed to be > 0 as
-   // crashAfterMS >= ADDITIONAL_WAIT_BEFORE_CRASH_MS >> HEARTBEAT_INTERVAL_MS
+   // Guarantee that crashAfterTicks is non-zero
+   options->crashAfterTicks = std::max(1, crashAfterMS / 
HEARTBEAT_INTERVAL_MS);
+ 
+   DebugOnly<PRThread*> watchdogThread =
+       CreateSystemThread(RunWatchdog, options.release());
+   MOZ_ASSERT(watchdogThread);
+ }
 

++++++ mozilla-sandbox-lto.patch ++++++
diff -up firefox-84.0/security/sandbox/linux/moz.build.1516803 
firefox-84.0/security/sandbox/linux/moz.build
--- firefox-84.0/security/sandbox/linux/moz.build.1516803      2020-12-10 
16:17:55.425139545 +0100
+++ firefox-84.0/security/sandbox/linux/moz.build      2020-12-10 
16:29:21.945860841 +0100
@@ -114,9 +114,8 @@ if CONFIG["CC_TYPE"] in ("clang", "gcc")
 # gcc lto likes to put the top level asm in syscall.cc in a different partition
 # from the function using it which breaks the build.  Work around that by
 # forcing there to be only one partition.
-for f in CONFIG["OS_CXXFLAGS"]:
-    if f.startswith("-flto") and CONFIG["CC_TYPE"] != "clang":
-        LDFLAGS += ["--param lto-partitions=1"]
+if CONFIG['CC_TYPE'] != 'clang':
+    LDFLAGS += ['--param', 'lto-partitions=1']
 
 DEFINES["NS_NO_XPCOM"] = True
 DisableStlWrapping()

++++++ mozilla-silence-no-return-type.patch ++++++
++++ 1394 lines (skipped)
++++ between 
/work/SRC/openSUSE:Factory/firefox-esr/mozilla-silence-no-return-type.patch
++++ and 
/work/SRC/openSUSE:Factory/.firefox-esr.new.2004/mozilla-silence-no-return-type.patch

++++++ one_swizzle_to_rule_them_all.patch ++++++
--- /var/tmp/diff_new_pack.U2WbeP/_old  2026-07-24 22:08:36.096536831 +0200
+++ /var/tmp/diff_new_pack.U2WbeP/_new  2026-07-24 22:08:36.104537110 +0200
@@ -22,12 +22,12 @@
    }
    mDT->Flush();
  
-+#if MOZ_BIG_ENDIAN()
-+  // One swizzle to rule them all.
-+  gfx::SwizzleData(mMappedData, mMappedStride, gfx::SurfaceFormat::B8G8R8A8,
-+                   mMappedData, mMappedStride, gfx::SurfaceFormat::A8R8G8B8,
-+                   mDT->GetSize());
-+#endif
++  if constexpr (std::endian::native == std::endian::big) {
++    // One swizzle to rule them all.
++    gfx::SwizzleData(mMappedData, mMappedStride, gfx::SurfaceFormat::B8G8R8A8,
++                     mMappedData, mMappedStride, gfx::SurfaceFormat::A8R8G8B8,
++                     mDT->GetSize());
++  }
 +
    // Done with the DT. Hand it back to the widget and clear out any trace of 
it.
    mWidget->EndRemoteDrawingInRegion(mDT, mDirtyRegion);

++++++ svg-rendering.patch ++++++
--- /var/tmp/diff_new_pack.U2WbeP/_old  2026-07-24 22:08:36.144538507 +0200
+++ /var/tmp/diff_new_pack.U2WbeP/_new  2026-07-24 22:08:36.148538646 +0200
@@ -13,16 +13,16 @@
      return NS_ERROR_OUT_OF_MEMORY;
    }
  
-+#if MOZ_BIG_ENDIAN()
-+  if (aBackend == gfx::BackendType::SKIA && canUseDataSurface) {
-+      // SKIA is lying about what format it returns on big endian
-+      for (int ii=0; ii < 
mRawSurface->GetSize().Height()*mRawSurface->Stride() / 4; ++ii) {
-+        uint32_t *vals = (uint32_t*)(mRawSurface->GetData());
-+        uint32_t val = ((vals[ii] << 8) & 0xFF00FF00 ) | ((vals[ii] >> 8) & 
0xFF00FF );
-+        vals[ii] = (val << 16) | (val >> 16);
-+      }
++  if constexpr (std::endian::native == std::endian::big) {
++    if (aBackend == gfx::BackendType::SKIA && canUseDataSurface) {
++        // SKIA is lying about what format it returns on big endian
++        for (int ii=0; ii < 
mRawSurface->GetSize().Height()*mRawSurface->Stride() / 4; ++ii) {
++          uint32_t *vals = (uint32_t*)(mRawSurface->GetData());
++          uint32_t val = ((vals[ii] << 8) & 0xFF00FF00 ) | ((vals[ii] >> 8) & 
0xFF00FF );
++          vals[ii] = (val << 16) | (val >> 16);
++        }
++    }
 +  }
-+#endif
 +
    if (!canUseDataSurface) {
      // We used an offscreen surface, which is an "optimized" surface from

++++++ tar_stamps ++++++
--- /var/tmp/diff_new_pack.U2WbeP/_old  2026-07-24 22:08:36.180539764 +0200
+++ /var/tmp/diff_new_pack.U2WbeP/_new  2026-07-24 22:08:36.188540043 +0200
@@ -1,11 +1,11 @@
 PRODUCT="firefox"
-CHANNEL="esr140"
-VERSION="140.13.0"
+CHANNEL="esr153"
+VERSION="153.0"
 VERSION_SUFFIX="esr"
-PREV_VERSION="140.12.0"
+PREV_VERSION="140.13.0"
 PREV_VERSION_SUFFIX="esr"
 #SKIP_LOCALES="" # Uncomment to skip l10n and compare-locales-generation
-RELEASE_REPO="https://hg.mozilla.org/releases/mozilla-esr140";
-RELEASE_TAG="7ecdab99b603b94d2ed335990200f8b4b20de1d7"
-RELEASE_TIMESTAMP="20260715202519"
+RELEASE_REPO="https://hg.mozilla.org/releases/mozilla-esr153";
+RELEASE_TAG="abd1fe67f4c3b677caecb582d55601a7b1191dc4"
+RELEASE_TIMESTAMP="20260716160951"
 

Reply via email to